REPRESENTASI DATA Data dalam kehidupan manusia Personal data

  • Slides: 63
Download presentation
REPRESENTASI DATA • Data dalam kehidupan manusia – Personal data input [lewat 5 indra]

REPRESENTASI DATA • Data dalam kehidupan manusia – Personal data input [lewat 5 indra] – Mass media [audio/visual] data input [populer, ilmiah, fiksi, riset, dll. ] • Pengertian Dasar – Data ‡ Informasi ? – Komunikasi – Kode / notasi / simbol / Icon • Bentuk Kode – Karakter umum: Numerik & Alfabet – Karakter khusus Syahrul 1

REPRESENTASI DATA § Tipe Representasi data – Eksternal (human-readable) • notasi dalam bahasa pemrograman

REPRESENTASI DATA § Tipe Representasi data – Eksternal (human-readable) • notasi dalam bahasa pemrograman • fasilitas untuk: programmer, desainer bahasa, user • berbasis notasi aljabar (desimal, sign/magnitude) – Internal (machine readable) • notasi aktual dalam komputer • fasilitas untuk konstruksi HW • meningkatkan efisiensi • menekan harga • HW menjadi handal Syahrul 2

REPRESENTASI DATA § Program-progam aplikasi yg berbeda menggunakan tipe data yg berbeda, tergantung pd

REPRESENTASI DATA § Program-progam aplikasi yg berbeda menggunakan tipe data yg berbeda, tergantung pd masalah. § Program bahasa mesin dapat bekerja dgn data numerik atau data non-numerik. § Data numerik dapat berupa bilangan desimal atau bilangan biner. § Data non-numerik adalah data dengan tipe sebagai berikut: Ø Data karakter Ø Data alamat Ø Data logika Syahrul 3

REPRESENTASI DATA § Data biner dapat direpresentasikan sebagai bilangan titik-tetap (fixed-point number) atau sebagai

REPRESENTASI DATA § Data biner dapat direpresentasikan sebagai bilangan titik-tetap (fixed-point number) atau sebagai bilangan titik-mengambang (floatingpoint number). § Pada representasi bilangan fixed-point, posisi titik biner adalah sudah pasti , tetap dalam satu tempat. § Pada representasi bilangan floating-point posisi titik biner dapat berada di mana saja. § Bilangan fixed-point dikenal sebagai bilangan integer (bulat) sedangkan bilangan floatingpoint dikenal sebagai bilangan real (pecahan). Syahrul 4

§ Operasi aritmetika (penjumlahan dan sebagainya) pada bilangan fixed-point adalah sederhana dan memerlukan perangkat

§ Operasi aritmetika (penjumlahan dan sebagainya) pada bilangan fixed-point adalah sederhana dan memerlukan perangkat keras yang sedikit (sirkuit yg minimum). § Aritmetika bilangan floating-point sulit dan memerlukan perangkat keras yang kompleks. § Dibandingkan terhadap bilangan fixed-point, bilangan floating-point mempunyai dua keuntungan: Syahrul 5

Dibandingkan terhadap bilangan fixed-point, bilangan floating-point mempunyai dua keuntungan: 1. Nilai maksimum atau minimum

Dibandingkan terhadap bilangan fixed-point, bilangan floating-point mempunyai dua keuntungan: 1. Nilai maksimum atau minimum yg dapat direpresentasikan dalam representasi bilangan floating-point lebih tinggi daripada fixed-point. Bilangan ini berguna untuk keperluan bilangan yg sangat besar atau bilangan yg sangat kecil 2. Representasi bilangan floating-point lebih akurat dalam operasi aritmetika. Syahrul 6

REPRESENTASI DATA § Konsep tipe data – Definisi matematik • cardinal / unsigned numbers

REPRESENTASI DATA § Konsep tipe data – Definisi matematik • cardinal / unsigned numbers integer: 0, 1, 2, …] • signed numbers integer: -2, -1, 0, 1, 2, …] • real number [4. 5, -8. 47, -0. 6* 107 ] • character • string • boolean [true, false] • beragam struktur gabungan 6 tipe di atas Syahrul 7

REPRESENTASI DATA – Length : bit, byte, word, double/long word – Storage bit order

REPRESENTASI DATA – Length : bit, byte, word, double/long word – Storage bit order : most and least significant bit – Tag ~ a group of bits that identifies the word’s type – Error detection & correction [parity bit: even/odd] Syahrul 8

REPRESENTASI DATA § Unsigned binary (untuk integer m dan I ): NR = bn

REPRESENTASI DATA § Unsigned binary (untuk integer m dan I ): NR = bn bn-1 bn-2 …. . b 2 b 1 b 0 = b 0 rn + b 1 rn-1 +. . + bn-1 r 1 + bn r 0 Syahrul 9

Unsigned Integer – Unsigned integer hanya untuk bilangan positif, jika negatif perlu format baru.

Unsigned Integer – Unsigned integer hanya untuk bilangan positif, jika negatif perlu format baru. – Kelebihan biner • • mudah dibuat tidak ambigu (noise immunity) bisa dicopy dengan sempurna (flawlessly) untuk bilangan 8 -bit memungkinkan 256 pola 0 & 1, sejumlah: 128 negatif + 128 positif. Syahrul 10

Unsigned Integer ¨ Unsigned variable disimpan lansung dalam format biner No. of bits n

Unsigned Integer ¨ Unsigned variable disimpan lansung dalam format biner No. of bits n Syahrul Binary Min Max 0 2 n - 1 11

Unsigned Integer No. of Type bytes bits unsigned char 1 8 unsigned short 2

Unsigned Integer No. of Type bytes bits unsigned char 1 8 unsigned short 2 16 unsigned int 4 32 unsigned long 4 32 Syahrul Range 0 … 255 0 … 65, 535 0 … 4, 294, 967, 295 12

Signed Integer • Representasi – Signed Integer direpresentasikan selain oleh nilai bilangan juga dengan

Signed Integer • Representasi – Signed Integer direpresentasikan selain oleh nilai bilangan juga dengan adanya tambahan tanda [negatif]. • Tipe – Sign and Magnitude (SM) – One’s Complement (OC) – Two’s Complement (TC) Syahrul 13

Signed Integer • Notasi Sign Magnitude (SM) – Format: – Bila digit pada posisi

Signed Integer • Notasi Sign Magnitude (SM) – Format: – Bila digit pada posisi terkiri (sign) Ø Nol maka bilangan tersebut positif, Ø Satu maka bilangan tersebut negatif [negatif nol =positif nol = nol]. – Rentang SM (untuk integer m dan I): Syahrul 14

 Syahrul 15

Syahrul 15

 Syahrul 16

Syahrul 16

Signed Integer • Sign Magnitude (SM): – Penjumlahan, aturan: Ø sign tidak dijumlahkan, hanya

Signed Integer • Sign Magnitude (SM): – Penjumlahan, aturan: Ø sign tidak dijumlahkan, hanya magnitude Ø buang carry out dari msb magnitude Ø jumlahkan yang sign-nya sama (+ ke + atau - ke - ) Ø sign hasil = sign penambah – Contoh Syahrul 17

Signed Integer • Sign Magnitude (SM): – Pengurangan, aturan: Ø lakukan jika sign sama,

Signed Integer • Sign Magnitude (SM): – Pengurangan, aturan: Ø lakukan jika sign sama, jika sign berbeda, ubah soal ke penjumlahan Ø perbandingkan magnitude, lakukan: a - b menjadi a + (-b) a + b menjadi a - (-b) – Contoh Syahrul 18

Signed Integer • One’s complement (OC) – Definisi • (2 n - 1 →

Signed Integer • One’s complement (OC) – Definisi • (2 n - 1 → memberikan jumlah n digit ) • komplementasi bilangan biner (ubah 1 ke 0 dan 0 ke 1) – Contoh • OC dari 00101110 adalah 11010001 – Rentang nilai Syahrul 19

 Syahrul 20

Syahrul 20

 Syahrul 21

Syahrul 21

 Syahrul 22

Syahrul 22

Signed Integer ¨ Signed integers are generally stored in 2’s complement format. ¨ Most

Signed Integer ¨ Signed integers are generally stored in 2’s complement format. ¨ Most Significant Bit (MSB) is considered the sign bit – 1 for negative numbers -- 0 for positive numbers No. of bits n Syahrul Binary 2’s compliment Min Max -2 n-1 - 1 23

Signed Data Types No. of Type bytes bits char 1 8 short 2 16

Signed Data Types No. of Type bytes bits char 1 8 short 2 16 int 4 32 long 4 32 Syahrul Range -128 … 127 -32, 768 … 32, 767 -2, 147, 483, 648. . 2, 147, 483, 647 24

Signed Integers ¨ To change the sign of any number 1. Invert all the

Signed Integers ¨ To change the sign of any number 1. Invert all the bits 2. Add 1 210 == 00102 => 1101 + 1 ---11102 => -210 Syahrul -210 == 11102 => 0001 + 1 ---00102 => 210 25

 Syahrul 26

Syahrul 26

 Syahrul 27

Syahrul 27

 Syahrul 28

Syahrul 28

dibuang Syahrul 29

dibuang Syahrul 29

 Syahrul 30

Syahrul 30

 Syahrul 31

Syahrul 31

 Syahrul 32

Syahrul 32

 Syahrul 33

Syahrul 33

 Syahrul 34

Syahrul 34

q BILANGAN FLOATING-POINT § Representasi bilangan floating-point mempunyai tiga bagian: 1. Mantissa 2. Basis

q BILANGAN FLOATING-POINT § Representasi bilangan floating-point mempunyai tiga bagian: 1. Mantissa 2. Basis 3. Eksponen § Contoh : Bilangan 3 x 106 110 x 28 6132. 784 Mantissa 3 110 0. 6132784 Basis 10 2 10 Eksponen 6 8 4 34. 58 0. 3458 10 2 Syahrul 35

§ Mantissa dan eksponen direpresentasikan secara eksplisit dalam komputer. Tetapi basisnya (base) adalah yg

§ Mantissa dan eksponen direpresentasikan secara eksplisit dalam komputer. Tetapi basisnya (base) adalah yg digunakan oleh komputer tersebut. § Umumnya komputer mengikuti basis 2. § Umumnya sebuah bilangan f direpresentasikan sebagai f = m x re di mana m adalah mantissa, r adalah basis dari sistem bilangan dan e adalah eksponen (pangkat dari basis yg digunakan). § Format umum bilangan floating-point: S Syahrul Eksponen Mantissa 36

§ Semula penggunaan format berbeda antar pabrik komputer untuk merepresentasikan bilangan floating-point. Tetapi saat

§ Semula penggunaan format berbeda antar pabrik komputer untuk merepresentasikan bilangan floating-point. Tetapi saat ini telah digunakan format standar ANSI/IEEE secara luas (format IEEE 754). Sedangkan IBM mempunyai standar khusus § Ada dua format standar IEEE 754 yg dikeluarkan yaitu untuk presisi tunggal (single precision) dan format standar untuk bilangan presisi ganda (double precision) S Eksponen, 8 bit Mantissa, 23 bit Format floating-point presisi tunggal (32 bit) S Eksponen, 11 bit Mantissa, 52 bit Format floating-point presisi ganda (64 bit) Syahrul 37

NORMALISASI FLOATING-POINT § Bilangan floating-point dapat direpresentasikan dgn banyak cara seperti yg ditunjukkan untuk

NORMALISASI FLOATING-POINT § Bilangan floating-point dapat direpresentasikan dgn banyak cara seperti yg ditunjukkan untuk bilangan desimal 140 x 28: 140 x 28, 14 x 29, 1400 x 27, 1. 4 x 210, 0. 14 x 211, . 014 x 212. . dst. § Suatu bilangan floating-point berada dalam bentuk ternormalisasi jika Most Significant Digit dari mantissa bukan-nol (non-zero). § Untuk mengubah menjadi bilangan yg ternormalisasi, mantissa harus digeser ke kanan atau ke kiri dgn tepat, menaikkan atau menurunkan eksponen. Jika semua bilangan floating-point direpresentasikan dalam komputer dgn bentuk ternormalisasi, maka posisi bit satu dapat disimpan dengan mengabaikan MSB (selalu 1). Ini disebut hidden 1 principle. Syahrul 38

 Syahrul 39

Syahrul 39

FPS (floating point standard) ¨ The sign bit adalah 0 untuk bilangan posistip dan

FPS (floating point standard) ¨ The sign bit adalah 0 untuk bilangan posistip dan 1 untuk bilangan negatip ¨ Mantissa direpresentasikan dengan unsigned integer (i. e. , bukan 2’s Complement), di mana nilainya dinormalisasi. – 23 bit untuk single precision, 52 bit untuk double precision ¨ Exponent direpresentasikan dengan unsigned integer – Syahrul 8 bit untuk single precision, 11 bit untuk double precision 40

Konversi format saintifik ke format standar IEEE 1. Pertama ubah menjadi bilangan biner. 2.

Konversi format saintifik ke format standar IEEE 1. Pertama ubah menjadi bilangan biner. 2. Normalisasikan bilangan tsb sehingga terdapat satu digit nonzero di ujung terkiri, lakukan adjust exponent sesuai kebutuhan. 3. Simpan digit biner mantissa ke sisi kanan 4. Tambahkan 127 ke bagian exponent dan ubah hasil penjumlahan tersebut ke biner untuk nilai exponent yg akan disimpan. Untuk double precision, tambahkan 1023 ke exponent. 5. Sign bit = 1 untuk bilangan negatip dan sign bit = 0 untuk bilangan positip. Syahrul 41

Single precision S Bit tanda: 0= + 1= E’ representasi 8 -bit excess -127

Single precision S Bit tanda: 0= + 1= E’ representasi 8 -bit excess -127 exponent Bit tanda: 0= + 1= Syahrul 23 -bit mantissa fraction Representasi nilai = ± 1. M x 2 E’ 127 Double precision S M E’ representasi 11 -bit excess -1023 exponent biased exponent M 52 -bit mantissa fraction Representasi nilai = ± 1. M x 2 E’ 1023 42

FPS and Hardware ¨ Floating point hardware umumnya mempunyai sekumpulan register khusus dan instruksi

FPS and Hardware ¨ Floating point hardware umumnya mempunyai sekumpulan register khusus dan instruksi untuk melaksanakan floating point ¨ Juga terdapat instruksi khusus untuk perpindahan data antara memori atau normal register dan floating point register. Syahrul 43

Contoh: Tuliskan +0. 0010110… x 29 dalam format single precision standar IEEE 754 Solusi:

Contoh: Tuliskan +0. 0010110… x 29 dalam format single precision standar IEEE 754 Solusi: Setelah dinormalisasi : +1. 0110… x 26 E’ = 6 + 127 = 133 = 10000101 0 Syahrul 10000101 0110… 44

Contoh: Tuliskan ( 0. 75)10 dalam format single precision standar IEEE Solusi: Ø Sign

Contoh: Tuliskan ( 0. 75)10 dalam format single precision standar IEEE Solusi: Ø Sign bit, S = 1 (negatip) 0. 75 x 2 = 1. 5 0. 5 x 2 = 1. 0 0. 0 x 2 = 0. 0 → 1 → 0 0. 11000000 = 0. 11000000 x 20 dinormalisasi = 1. 100… x 2 1 M = 10000000000000 E= 1 E’ = E + 127 = 1 + 127 = 126 = 01111110 Sehingga representasi single precision ( 0. 75)10 : 1 Syahrul 01111110 100000000000 45

Latihan: Typical 32 -bit floating-point format +1. 638125 X 220 = 0 10010011 10100011010111000010100

Latihan: Typical 32 -bit floating-point format +1. 638125 X 220 = 0 10010011 10100011010111000010100 1. 638125 X 220 = 1 10010011 10100011010111000010100 +1. 638125 X 2― 20 = 0 01101011 10100011010111000010100 1. 638125 X 2― 20 = 1 Syahrul 01101011 10100011010111000010100 46

Latihan: A. Tuliskan dalam format single precision standar IEEE 754: 1. ( + 5.

Latihan: A. Tuliskan dalam format single precision standar IEEE 754: 1. ( + 5. 375 x 10 3 )10 2. ( + 200. 0 )10 3. ( - 13. 275 )10 4. ( - 0. 05375 x 102 )10 B. Tuliskan dalam format notasi saintifik desimal 0 Syahrul 10000101 0110000000000 47

q KODE KARAKTER § Semua komputer secara internal merepresentasikan karakter dengan menyimpannya sebagai integer

q KODE KARAKTER § Semua komputer secara internal merepresentasikan karakter dengan menyimpannya sebagai integer non-negatip: 0, 1, 2 … § Mapping karakter ke dalam integer disebut kode karakter § Awalnya komputer menggunakan kode karakter dgn panjang 6 -bit (26 = 64 karakter unik) yg cukup untuk 26 huruf kapital, 10 angka, dan 15 hingga 28 karakter khusus termasuk: , . (): ; -+=/ yg dibutuhkan oleh HLL seperti FORTRAN, COBOL dan BASIC Syahrul 48

q KODE KARAKTER § Saat ini komputer merepresentasikan karakter dengan panjang 7 bit dan

q KODE KARAKTER § Saat ini komputer merepresentasikan karakter dengan panjang 7 bit dan 8 bit § Kode karakter 8 bit yang paling populer adalah ASCII, EBCDIC *) § Kode karakter lain yang dapat merepresentasikan semua kode bahasa di dunia adalah Unicode *) ASCII = American Standard Code for Information Interchange EBCDIC = Extended Binary Coded Decimal Interchange Code Syahrul 49

q KODE KARAKTER § ASCII Ø ASCII adalah kode karakter yg ditujukan bagi standar

q KODE KARAKTER § ASCII Ø ASCII adalah kode karakter yg ditujukan bagi standar internasional untuk representasi data tekstual Ø ASCII juga biasanya digunakan untuk transmisi informasi biner Ø Setiap karakter direpresentasikan oleh 7–bit kode Ø Biasanya bit kedelapan disisipkan untuk parity (error checking), atau untuk character set expansion Syahrul 50

Ø ASCII terdiri dari 128 karakter: § 95 karakter merepresentasikan simbol graphic termasuk huruf

Ø ASCII terdiri dari 128 karakter: § 95 karakter merepresentasikan simbol graphic termasuk huruf kecil dan kapital, bilangan 0 sampai 9, puctuation mark dan simbol-simbol khusus; § 23 karakter merepresentasikan format effector yang merupakan karakter fungsional untuk pengontrolan layout pencetakan atau display device seperti carriage return, line feed, horizontal tabulation, dan back space; § 10 karakter lainnya digunakan untuk aliran komunikasi data langsung dan status report-nya Syahrul 51

 Syahrul 52

Syahrul 52

q KODE KARAKTER § EBCDIC Ø Kode EBCDIC adalah kode alphanumerik lain yang digunakan

q KODE KARAKTER § EBCDIC Ø Kode EBCDIC adalah kode alphanumerik lain yang digunakan dalam peralatan IBM Ø Setiap karakter direpresentasikan oleh 8–bit kode dan bit kesembilan disisipkan untuk parity Ø Kode EBCDIC mempunyai simbol karakter yang sama dengan ASCII tetapi penetapan bit-bit untuk karakter berbeda. Syahrul 53

q KODE KARAKTER § Unicode Ø Unicode—coding scheme capable of representing all world’s languages

q KODE KARAKTER § Unicode Ø Unicode—coding scheme capable of representing all world’s languages Syahrul 54

q KODE BINER LAIN § Kode Gray, kode ini digunakan untuk aplikasi khusus Ø

q KODE BINER LAIN § Kode Gray, kode ini digunakan untuk aplikasi khusus Ø Keuntungan kode Gray dibandingkan dengan kode biner langsung adalah karena kode gray hanya mengubah satu bit dalam urutan kode tsb, dari 0 ke 1 atau dari 1 ke 0. Ø Aplikasi typical kode Gray adalah ketika data analog direpresentasikan dengan perubahan kontinyu dari sebuah posisi shaft (shaft encoder) Syahrul 55

Tabel Kode Gray 4 -bit Kode Gray 0000 0001 Ekivalen desimal 0 1 1100

Tabel Kode Gray 4 -bit Kode Gray 0000 0001 Ekivalen desimal 0 1 1100 1101 Ekivalen desimal 8 9 0011 0010 0111 0100 2 3 4 5 6 7 1111 1110 1011 1000 10 11 12 13 14 15 Kode Gray Syahrul 56

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode Desimal

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode Desimal BCD Ø Kode BCD (binary coded decimal) adalah bilangan desimal yang dikodekan secara biner Ø Kode BCD dasar 4 -bit disebut packed BCD, sedangkan kode BCD yang diperluas disebut unpacked BCD, misalnya unpacked BCD 1 byte. Ø Kode BCD unpacked dibentuk dengan cara menggabungkan packed BCD dengan kelipatan 4 -bit (nibble) Syahrul 57

Packed BCD 12 = 00010010 unpacked BCD 97 = 10010111 unpacked BCD Syahrul 58

Packed BCD 12 = 00010010 unpacked BCD 97 = 10010111 unpacked BCD Syahrul 58

§ Penjumlahan BCD 13 = 00010011 65 = 01100101 78 = 01111000 1 29

§ Penjumlahan BCD 13 = 00010011 65 = 01100101 78 = 01111000 1 29 = 00101001 18 = 00011000 + AC + 01000001 = 41 0110 47 = 01000111 Syahrul + hasil error korektor 59

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode desimal

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode desimal 2421 Syahrul Ø Kode 2421 merupakan kode berbobot (weighted code), di mana bit-bit dikalikan dengan bobot yang ditunjukkan dan jumlah dari bit-bit bobot tsb merupakan digit desimal Ø Misalnya: 11012421 = 2 x 1 + 4 x 1 + 2 x 0 + 1 x 1 = 710 (lihat tabel) 60

 Syahrul Desimal 2421 Excess-3 Gray 0 0000 0011 0010 1 0001 0100 0110

Syahrul Desimal 2421 Excess-3 Gray 0 0000 0011 0010 1 0001 0100 0110 2 0010 0101 0111 3 0011 0110 0101 4 0100 0111 0100 5 1011 1000 1100 6 1100 1001 1101 7 1101 1010 1111 8 1110 1011 1110 9 1111 1100 1010 Bit 0101 0000 kombinasi 0110 0001 Ini 0111 0010 0011 tidak 1000 1101 1000 digunakan 1001 1110 1001 1010 1111 1011 61

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode desimal

q KODE BINER LAIN → kode desimal (BCD, 2421, Excess-3 Gray) § Kode desimal Excess-3 Gray Syahrul Ø Kode Gray (lihat tabel) tidak cocok untuk kode desimal jika kita ingin memilih 10 entry pertama pada tabel, karena transisi dari 9 ke 0 melibatkan perubahan tiga bit (yaitu dari 1101 ke 0000) Ø Untuk mengatasi kesulitan di atas, kita pilih 10 bilangan dimulai dari entry ketiga 0010 hingga entry keduapuluh 1010. Jadi transisi dari 1010 ke 0010 hanya berubah satu bit. 62

to be Continued … ! thanks, see you later Syahrul 63

to be Continued … ! thanks, see you later Syahrul 63