77
PI1023 – ORGANISASI PI1023 – ORGANISASI KOMPUTER KOMPUTER REPRESENTASI INFORMASI

Organisasi Komputer- representasi informasi

  • Upload
    daru2501

  • View
    6.372

  • Download
    53

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Organisasi Komputer- representasi informasi

PI1023 – ORGANISASI PI1023 – ORGANISASI KOMPUTERKOMPUTER

REPRESENTASI INFORMASI

Page 2: Organisasi Komputer- representasi informasi

• Representasi Representasi InformasiInformasi• Bit, byteBit, byte, dan, dan word word• Representasi data nRepresentasi data numeriumerikk dan dan

basis bilangan basis bilangan • Representasi komplemen dua dan Representasi komplemen dua dan

bertandabertanda• Sistem Sistem fixedfixed point dan point dan floating floating

pointpoint• RepresentaRepresentasi data bukan numeriksi data bukan numerik

((kode karakterkode karakter))

Pokok BahasanPokok Bahasan

Page 3: Organisasi Komputer- representasi informasi

Representasi InformasiRepresentasi Informasi (1)(1)

Converter

External RepresentationInternal Representation

Representasi EksternalRepresentasi Eksternal adalah suatu cara untuk merepresentasikan dan memanipulasi informasi oleh programmer dengan suatu bahasa pemrograman atau notasi bahasa perintah lainnya Agar nyaman bagi programmer (user).

Representasi InternalRepresentasi Internal adalah suatu cara untuk menyimpan dan memanipulasi informasi secara aktual di dalam sistem komputer Agar mudah dalam membangun perangkat keras.Informasi ≈ program & data ≈ deretan bit akses/manipulasi terhadap informasi ≈ akses/operasi (arithmetic/logic) terhadap deretan bit

Page 4: Organisasi Komputer- representasi informasi

Representasi InformasiRepresentasi Informasi (2)(2)

• Bilangan berpresisi terbatas berpeluang memunculkan ‘kesalahan’ (dari segi matematika klasik), tetapi bisa menjadi ‘kebenaran’ sebagai konsekuensi logis dari keterbatasan mesin tersebut

• Kesalahan yang dapat terjadi: – overflow error – underflow error – unrepresentable

Page 5: Organisasi Komputer- representasi informasi

BBit dan Byteit dan Byte• Apa bedanya antara bit dan byte ?• 1 byte = 8 bit (binary digit)

– Range Binary: 000000002 - 111111112

– Range Decimal: 010 - 25510

– Range Hexadecimal: 0016 - FF16

representasi bilangan basis 16 Menggunakan karakter ‘0’ - ‘9’ dan ‘A’ - ‘F’

– Range Octal: ... - ... 0008 - 3778

• 1 nibble = … bit = … byte

0 0 00001 1 00012 2 00103 3 00114 4 01005 5 01016 6 01107 7 01118 8 10009 9 1001A 10 1010B 11 1011C 12 1100D 13 1101E 14 1110F 15 1111

HexDecim

al

Binary

Page 6: Organisasi Komputer- representasi informasi

WordWord Size Size (1)(1)

• WordWord merupakan sejumlah bit berukuran tetap merupakan sejumlah bit berukuran tetap yang ditangani secara bersama-sama oleh yang ditangani secara bersama-sama oleh komputerkomputer

• Sebuah word dapat merupakan:Sebuah word dapat merupakan:– ukuran registerukuran register– ukuran suatu tipe dataukuran suatu tipe data– jumlah data dalam sekali transferjumlah data dalam sekali transfer– lebar alamat suatu memorilebar alamat suatu memori

• Kebanyakan mesin menggunakan 32 bit (4 byte)Kebanyakan mesin menggunakan 32 bit (4 byte)• Sistem high-end menggunakan 64 bit (8 byte)Sistem high-end menggunakan 64 bit (8 byte)• Satuan word adalah Satuan word adalah bytebyte• Contoh: Contoh:

– Intel: 1 word = 16 bit (8086)Intel: 1 word = 16 bit (8086)– Tetap kompatibel dengan, x86, IA-32, IA-64Tetap kompatibel dengan, x86, IA-32, IA-64

Page 7: Organisasi Komputer- representasi informasi

WordWord Size Size (2)(2)

d = desimal; b = bit

Page 8: Organisasi Komputer- representasi informasi

Representasi DataRepresentasi Data• Contoh ukuran Objek pada C (dContoh ukuran Objek pada C (daallaam byte)m byte)

Tipe Data CTipe Data C Compaq AlphaCompaq Alpha Typical 32-bitTypical 32-bit Intel IA32Intel IA32

intint 44 44 44

long intlong int 88 44 44

charchar 11 11 11

shortshort 22 22 22

floatfloat 44 44 44

doubledouble 88 88 88

long doublelong double 88 88 10/1210/12

char *char * 88 44 44

Page 9: Organisasi Komputer- representasi informasi

Bilangan Desimal Bilangan Desimal (1)(1)

• Representasi bilangan basis 10Representasi bilangan basis 10– Itu kenapa jari tangan dikenal sebagai “digits”Itu kenapa jari tangan dikenal sebagai “digits”– Representation bilangan natural untuk transaksi Representation bilangan natural untuk transaksi

financialfinancial• Kenapa komputer sekarang menggunakan sistem Kenapa komputer sekarang menggunakan sistem

biner dan bukan desimal ?biner dan bukan desimal ?• Implementasi secara elektronikImplementasi secara elektronik

– Sukar disimpanSukar disimpan ENIAC (komp. pertama kali) menggunakan 10 vacuum ENIAC (komp. pertama kali) menggunakan 10 vacuum

tubes/digittubes/digit– Sukar dikirimkanSukar dikirimkan

Memerlukan Memerlukan presisi yg tinggipresisi yg tinggi untuk meng-encode sinyal untuk meng-encode sinyal dengan 10 level pada single wiredengan 10 level pada single wire

– Kehandalan komponen elektronika turun sejalan dengan Kehandalan komponen elektronika turun sejalan dengan waktu penggunaannya (drift)waktu penggunaannya (drift) Perubahan sebesar 10 % saja sudah mengubah nilaiPerubahan sebesar 10 % saja sudah mengubah nilai

– Sulit untuk diimplementasikan pada fungsi logika digitalSulit untuk diimplementasikan pada fungsi logika digital Addition, multiplication, etc.Addition, multiplication, etc.

Page 10: Organisasi Komputer- representasi informasi

Bilangan Desimal Bilangan Desimal (2)(2)

Desimal Biner

Page 11: Organisasi Komputer- representasi informasi

Bilangan BinerBilangan Biner• Representasi bilangan basis 2Representasi bilangan basis 2

– Representasi 15213Representasi 152131010 as 11101101101101 as 1110110110110122

– Representasi 1,20Representasi 1,201010 as 1,0011001100110011[0011]… as 1,0011001100110011[0011]…22

– Representasi 1,5213 X 10Representasi 1,5213 X 1044 as 1,1101101101101 as 1,110110110110122 X 2 X 21313

• Implementasi ElektronikImplementasi Elektronik– Mudah untuk disimpan sebagai elemen yang bistable Mudah untuk disimpan sebagai elemen yang bistable

(hanya ada 2 nilai yang berbeda jauh)(hanya ada 2 nilai yang berbeda jauh)– Lebih handal pada Lebih handal pada wire wire yang noise dan inaccurateyang noise dan inaccurate– Mudah diimplementasikan pada fungsi logika digitalMudah diimplementasikan pada fungsi logika digital

• Apa kekurangan bilangan biner ?Apa kekurangan bilangan biner ?

0.0V

0.5V

2.8V

3.3V

0 1 0

Page 12: Organisasi Komputer- representasi informasi

Jenis-Jenis Bilangan BinerJenis-Jenis Bilangan Biner• Bilangan bulat biner tak bertanda Bilangan bulat biner tak bertanda

(unsigned integer)(unsigned integer)• Bilangan bulat biner bertanda (signed Bilangan bulat biner bertanda (signed

integer)integer)– Sign/magnitudeSign/magnitude– Komplemen 2 (radix complement)Komplemen 2 (radix complement)– Komplemen 1 (diminished radix Komplemen 1 (diminished radix

complement)complement)– Binary Coded Decimal (BCD)Binary Coded Decimal (BCD)

• Bilangan pecahan biner (floating point)Bilangan pecahan biner (floating point)• Excess 2Excess 2m-1m-1

Page 13: Organisasi Komputer- representasi informasi

Bilangan bulat Bilangan bulat Biner tak bertanda Biner tak bertanda (Unsigned Integer)(Unsigned Integer)dndn-1dn-2...d3d2d1d0 = dnrn + dn-1rn-1

+ dn-2rn-2 .. d3r3 +

d2r2 + d1r1 + d0r0

d = nilai bilangan; r = radix (basis bilangan) = jumlah simbol maksimum

n = posisi bilangan, LSB = posisi ke-0

Cakupan bilangan yang bisa disajikan: 0 I 2m-1

Misal bilangan 16 bit: 0 I 216-1 = 0 I 32768

Konversi dari NR ke Nr : R = basis desimal dan r = basis bilangan

lainnya

NR = dnrn + dn-1rn-1 + dn-2rn-2

.. d3r3 + d2r2 + d1r1 + d0r0

Biner ke desimal: 1010112 = 1x25 + 0x24 + 1x23 + 0x22 + 1x21

+ 1x20

= 32 + 0 + 8 + 0 + 2 +1 = 4310

Page 14: Organisasi Komputer- representasi informasi

Konversi Bilangan Konversi Bilangan (1)(1)

Latihan:a. 101010102 = ...10 f. ABCD16 = ...8

b. 500010 = ...2 g. 10010110101001012 = ...10

c. 500010 = ...8 h. 10010110101001012 = ...8

d. 500010 = ...16 i. 10010110101001012 = ...16

e. ABCD16 = ...10 (solusi)

Desimal ke biner 4310 = ...2

43 : 2 = 21 ; sisa 1 d0 (LSB)

21 : 2 = 10 ; sisa 1 d1

10 : 2 = 5 ; sisa 0 d2

5 : 2 = 2 ; sisa 1 d3

2 : 2 = 1 ; sisa 0 d4

1 : 2 = 0 ; sisa 1 d5 Jadi 4310 =

1010112

Page 15: Organisasi Komputer- representasi informasi

Konversi Bilangan Konversi Bilangan (2)(2)

Apa kesimpulan yang dapat diperoleh ?• Konversi bilangan biner ke bilangan oktal atau

sebaliknya dapat dilakukan dengan lebih mudah dan lebih cepat dibanding konversi bilangan tersebut ke bilangan desimal

• Konversi bilangan biner ke bilangan heksadesimal atau sebaliknya dapat dilakukan dengan lebih mudah dan lebih cepat dibanding konversi bilangan tersebut ke bilangan desimal

• Konversi representasi data eksternal ke data internal atau sebaliknya memerlukan proses lebih panjang dan lebih rumit

• ...

Page 16: Organisasi Komputer- representasi informasi

Signed Integer : Sign/magnitude Signed Integer : Sign/magnitude (1)(1)

• Dapat merepresentasikan bilangan Dapat merepresentasikan bilangan negatifnegatif • Simple: Simple: Bit terkiri (Bit terkiri (MoMost st SSignificant ignificant BBitit - MSB - MSB) )

dianggap sebagai bit tanda (dianggap sebagai bit tanda (sign bitsign bit))– Bit 0 Bit 0 bilangan positif bilangan positif– bit 1 bit 1 bilangan negatif bilangan negatif

• Bit selain MSB sebagai Bit selain MSB sebagai nilai nilai magnitudemagnitude absolut absolut bilanganbilangan

• Cakupan nilai (I) yang dapat direpresentasikan:Cakupan nilai (I) yang dapat direpresentasikan: ! ! (2(2m-1m-1 ! 1) ! 1) I I +(2 +(2m-1m-1 ! 1) ! 1)

m = banyaknya bitm = banyaknya bit

• Misal:Misal:Untuk bilangan 16 bit: U (2Untuk bilangan 16 bit: U (216-116-1 U 1) U 1) I I +(2 +(216-116-1 U 1) U 1)

= U 32767 = U 32767 I I +32767 +32767

Page 17: Organisasi Komputer- representasi informasi

Signed Integer : Sign/magnitude Signed Integer : Sign/magnitude (2)(2)

• Contoh m = 3 :Contoh m = 3 :

• MasalahMasalah: Apakah : Apakah 000 = +0 000 = +0 sama dengan sama dengan 100 = 100 = -0 ???-0 ???– Bagi manusia: +0 dan U 0 adalah samaBagi manusia: +0 dan U 0 adalah sama– Bagi komputer: +0 dan U 0 adalah Bagi komputer: +0 dan U 0 adalah bedabeda, karena , karena

komputer membandingkan 2 buah bilangan secara komputer membandingkan 2 buah bilangan secara bit per bit !!bit per bit !!

Page 18: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (1)(1)

• Biner dalam bentuk 2’s complement • Disebut sebagai aritmatika modular (modulo) A = B (mod M)A = B (mod M)

Bilangan berapapun ditambah dengan M hasilnya tetap !• Bilangan biner dengan jumlah bit = m, mempunyai modulo M = 2m

• M = 1000...0, bilangan terbesar: 111...1 = 2m – 1 = M – 1

• Bilangan positif, hitung ke atas mulai dari nol: (+X = X)• Bilangan negatif, hitung ke bawah dari modulus M: ( U X = M U

X)

0 M-1

Bilangan Positif Bilangan Negatif

kecil besar kecil besar

m nol m satu

Page 19: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (2)(2)

• Contoh 1: m = 4, maka M = 2m = 24 = 16 +610 = 0110011022, –710 = …2

Cara I: U X = M U X U 710 = 16 – 7 = 9 = 10012

• Contoh 2: U 1010 = ...2 U 1010 = 16 – 10 = +6 = 0110011022

Jadi +610 = U 1010 ??? (ambigu !)• Solusinya dibuat aturan sbb:

IFIF MSB = 0 MSB = 0 THEN bilangan adalahTHEN bilangan adalah POSITIFPOSITIF (magnitude = unsigned integer) (magnitude = unsigned integer)

ELSEELSE bilangan adalah NEGATIFbilangan adalah NEGATIF (magnitude = M – X)(magnitude = M – X)

Jadi 0110011022 hanya untuk bilangan +6 hanya untuk bilangan +61010 saja, saja, –10 –101010 = ??= ??

Page 20: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (3)(3)

Page 21: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (4)(4)• M-1 = 2m-1 = 111...1 (satu semua)• Bilangan biner yang digunakan untuk mengurangi 1

akan menghasilkan biner kebalikannya (1–0 = 1; 1–1 = 0)

• Pengurangan dengan M-1 = inversi (komplemen)• Modifikasi rumus: –X = M–X menjadi:

• Contoh: Untuk m = 5, maka U 510 = ...2

Cara II: (lebih sederhana)

+510 = 00101 nilai X dalam biner 11010 dikomplemenkan: bit 1 0, bit 0 1

1 + 11011 setelah ditambah 1 110112 U 510 dalam komplemen 2

11 XMXkomplemen

Page 22: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (5)(5)

Latihan: (untuk m = 5)(a) U 610 = ...2 (b) U 910 = ...2 (c) U 1310 = ...2

(d) U 1510 = ...2 (e) U 1810 = ...2

(f) 101012 = ...10

(g) 110012 = ...10

(h) 100002 = ...10

(i) 111112 = ...10

(j) +010 = ...2 (k) 010102 = ...10

(solusi)

Page 23: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (6)(6)

• Cakupan nilai:Cakupan nilai:

• Contoh untuk bilangan 16 bit: U (2Contoh untuk bilangan 16 bit: U (216-116-1) ) I I +(2 +(216-116-1 U 1) U 1) • = U 32768 = U 32768 I I +32767 (tipe +32767 (tipe

sign int)sign int)

• Aritmatika Aritmatika PenjumlahanPenjumlahan::

• Contoh aritmatika m= 5 bitContoh aritmatika m= 5 bit

122 11 mm I

Page 24: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (7)(7)

Kapan Overflow terjadi ???:bilangan positif + bilangan positif = bilangan negatifbilangan negatif + bilangan negatif = bilangan positif

Berapa komplemen 2 dari 00000 ?

Komplemen 2 banyak diterapkan di komputer !!

Page 25: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (8)(8)

Organisasi fungsional untuk Organisasi fungsional untuk PenjumlahanPenjumlahan::

Page 26: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (9)(9)

Latihan:Latihan:

Dengan m = 6:Dengan m = 6:

(a) (+6) + (-7)(a) (+6) + (-7)

(b) (+7) + (-6)(b) (+7) + (-6)

(c) (-15) + (-16)(c) (-15) + (-16)

(d) (-20) + (-20)(d) (-20) + (-20)

(e) (+31) + (-31)(e) (+31) + (-31)

(f) (-32) + (+12)(f) (-32) + (+12)(solusi)

Page 27: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (10)(10)

• Bagaimana dengan Pengurangan ?• Dapat dengan unit pengurangan +

register borrow + register overflow• Perancang komputer:

• Lebih suka manfaatkan unit penjumlahan yang sudah ada + unit komplementor• Biaya lebih murah• Perawatan lebih mudah

• Modifikasi: • D = Y – X menjadi D = –X + Y

Page 28: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (11)(11)Contoh: m = 4:Contoh: m = 4:

(a) (+3) – (+2)(a) (+3) – (+2)

0011 (+3) – 0010 (+2)

(b) (+3) – (+5) (b) (+3) – (+5)

0011 (+3) – 0101 (+5)

(c) (-2) – (-5)(c) (-2) – (-5) 1110 (–2) – 1011 (–5)

0011 (+3) + 1110 (–2) 1|0001 (+1)

0011 (+3) + 1011 (–5) 1110 (–2)

1110 (–2) + 0101 (+5) 1|0011 (+3)

ke carry register

ke carry register

Page 29: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 2 Signed Integer: Komplemen 2 (Radix Complement(Radix Complement) ) (12)(12)

unit baru

Organisasi fungsional untuk Organisasi fungsional untuk PenguranganPengurangan::

Page 30: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 1 Signed Integer: Komplemen 1 (Diminished Radix Complement(Diminished Radix Complement) ) (1)(1)

• Diminished = ...• Merupakan varian dari komplemen 2• Komplemen dilakukan dengan cara:Komplemen dilakukan dengan cara:

– GGanti semua bit 1 dengan 0 dan semua bit 0 dengan anti semua bit 1 dengan 0 dan semua bit 0 dengan 11

– TTanpa penambahan dengan +1anpa penambahan dengan +1– Carry Carry tidaktidak dibuang dibuang

• CakupanCakupan nilai: nilai:

• Misal:Misal:Untuk bilangan 16 bit: U (2Untuk bilangan 16 bit: U (216-116-1 U 1) U 1) I I +(2 +(216-116-1 U 1) U 1)

= U 32767 = U 32767 I I +32767 +32767 (sama dengan sign/magnitude)(sama dengan sign/magnitude)

XMX

XX

)1(

1212 11 mm I

Page 31: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 1 Signed Integer: Komplemen 1 (Diminished Radix Complement(Diminished Radix Complement) ) (2)(2)

Page 32: Organisasi Komputer- representasi informasi

Signed Integer: Komplemen 1 Signed Integer: Komplemen 1 (Diminished Radix Complement(Diminished Radix Complement) ) (3)(3)

Muncul kembali ambiguitas +0 dan –0 Komplemen 1 jarang digunakan

Page 33: Organisasi Komputer- representasi informasi

Binary Coded Decimal (BCD) Binary Coded Decimal (BCD) (1)(1)

• Mengapa BCD digunakan ?Mengapa BCD digunakan ?– Karena kKarena konversi onversi bilangan bilangan desimal desimal ke komplemen 2 ke komplemen 2

dapatdapat mendominasi waktu eksekusi mendominasi waktu eksekusi

• Konversi : tiap digit desimal Konversi : tiap digit desimal empat bit biner empat bit biner– Contoh: 0Contoh: 01010 = 0000 = 000022; 1; 11010 = 0001 = 000122; ...; 9; ...; 91010 = 1001 = 100122

– Tanda Tanda ‘+’ dan ‘‘+’ dan ‘––’ ’ dengan dengan kombinasi yang belum kombinasi yang belum dipakai, contoh : 1010dipakai, contoh : 1010 = ‘+’ = ‘+’ dan 1011 dan 1011 = ‘–’ = ‘–’

• Aplikasi apa yang menggunakan BCD ?Aplikasi apa yang menggunakan BCD ? – Aplikasi yangAplikasi yang banyak banyak melibatkan data input melibatkan data input

maupun output namun sangat sedikit pemrosesan maupun output namun sangat sedikit pemrosesan numerik (contoh : numerik (contoh : payroll payroll dan dan inventoryinventory) )

Page 34: Organisasi Komputer- representasi informasi

Binary Coded Decimal (BCD) Binary Coded Decimal (BCD) (2)(2)

• Contoh Contoh

1.2341.2341010 = = 00010001001000100011001101000100

– –5675671010 = = 10111011010101010110011001110111

1 2 3 4

‘–’ 5 6 7

Page 35: Organisasi Komputer- representasi informasi

• Apa kekurangan BCD ?Apa kekurangan BCD ?– OOperasi aritmperasi aritmaatiktikaa lebih lama lebih lama (lookup table) (lookup table)

dibanding sign/magnitude maupun 2’s dan dibanding sign/magnitude maupun 2’s dan 1’s1’s complement complement

– Penjumlahan bilangan dalam BCD dilakukan Penjumlahan bilangan dalam BCD dilakukan per digit desimal (4-bit) dan menghasilkan per digit desimal (4-bit) dan menghasilkan carry carry desimaldesimal (bukan penjumlahan bit per bit)(bukan penjumlahan bit per bit)

• Contoh Aritmatika:Contoh Aritmatika: (0001) (0001)(0001) (0001) carry carry

0110 00110110 0011 (+63)(+63) +0100 1001+0100 1001 (+49)(+49)

0001 0001 0010(+112)0001 0001 0010(+112)

Binary Coded Decimal (BCD) Binary Coded Decimal (BCD) (3)(3)

Page 36: Organisasi Komputer- representasi informasi

Floating Point Floating Point (1)(1)

Bilangan floating point (pecahan):

dndn-1dn-2...d2d1d0.d-1d-2d-3... =

dnrn+ dn-1rn-1 + dn-2rn-2

...+ d2r2 + d1r1 + d0r0 + d-1r-1

+ d-2r-2 + d-3r-3 ...

Contoh :(a) 110,011012 = 1x22 + 1x21 + 0x20 + 0x2-1 + 1x2-2 + 1x2-3 + 0x2-4 + 1x2-5

= 4 + 2 + 0 + 0 + 1/4 + 1/8 + 0 + 1/32 = 6 + 0,25 + 0,125 + 0,03125 = 6,4062510

(b) 101,1012 = 1x22 + 0x21 + 1x20 + 1x2-1 + 0x2-2 + 1x2-3

= 4 + 0 + 1 + ½ + 0 + 1/8= 5 + 0,5 + 0,125 = 5,62510

Page 37: Organisasi Komputer- representasi informasi

Floating Point Floating Point (2)(2)

((cc) 0,375) 0,3751010 == ......22

(d) 0,3(d) 0,310 10 = = ......22Jika akurasinya 5 digit, maka:

0,310 = 0,010012

Page 38: Organisasi Komputer- representasi informasi

Floating Point Floating Point (3)(3)

((ee) 0,3) 0,377551010 == ......44 0,375 X 4 1,500 X 4 2,000

0,30,377551010 == 0,12 0,1244

(f) 1,234(f) 1,2345 5 = = ......1010

= 1x50 + 2x5-1 + 3x5-2 + 4x5-3

= 1 + 2x0,2 + 3x0,04 + 4x0,008 = 1 + 0,4 + 0,12 + 0,032 = 1,55210

((gg) 0,) 0,9849841100 == ......1616 (4 digit akurasi) 0,984 X 16 5904 984 + 15,744 X 16 4464 744 + 11,904 X 16 5424 904 + 14,464 X 16 2784 464 + 7,424 0,0,9849841010 == 0,FBE7 0,FBE71616

Page 39: Organisasi Komputer- representasi informasi

FFloating loating PPoint Roint R (Notasi (Notasi Ilmiah) Ilmiah) (1)(1)

• Digunakan untuk merepresentasikan bilangan pecahan di dalam semua komputer

• Notasi floating point R::

M = MantissaM = MantissaE = EksponenE = EksponenBB = Basis dari eksponen= Basis dari eksponen

• B B ≠≠ basis bilangan basis bilangan• Basis bilangan selalu bernilai Basis bilangan selalu bernilai 2 2 (biner), (biner),

sementara sementara basis eksponen basis eksponen B B tidak harustidak harus 2 2

EBMR

Page 40: Organisasi Komputer- representasi informasi

FFloating loating PPoint Roint R (Notasi (Notasi Ilmiah) Ilmiah) (2)(2)

• Contoh :Contoh :(a) (a) 1.228,8 = 1,2288 x 101.228,8 = 1,2288 x 1033

M = 1,2288; E = +3; B = 10M = 1,2288; E = +3; B = 10(b) Tuliskan 1.228,8 dengan notasi ilmiah dan(b) Tuliskan 1.228,8 dengan notasi ilmiah dan

basis eksponen B = 8 !basis eksponen B = 8 !1.228,8 = 2,40 x 81.228,8 = 2,40 x 833 (caranya ?)(caranya ?)

M = 2,4; E = +3; B = 8M = 2,4; E = +3; B = 8• Basis eksponen ditentukan dan di-set secara Basis eksponen ditentukan dan di-set secara hardwarehardware, ,

tidak bisa diubah oleh usertidak bisa diubah oleh user • Contoh : Contoh :

PDP-11 dan VAX-11 PDP-11 dan VAX-11 B = 2 B = 2IBM-360 dan 370 IBM-360 dan 370 B = 16 B = 16Burroughs BBurroughs B55500 500 B = 8 B = 8

• Bilangan Bilangan realreal dalam komputer direpresentasikan hanya dalam komputer direpresentasikan hanya dengan nilai dengan nilai MM dan dan EE, , sehingga sehingga R = (R = (±M, ±E)±M, ±E)

Page 41: Organisasi Komputer- representasi informasi

Floating Point: NormalisasiFloating Point: Normalisasi (1) (1)

• Bagaimana cara merepresentasikan Bagaimana cara merepresentasikan floating point secara normal ?floating point secara normal ?1.228,81.228,8 = 1,2288 * 10= 1,2288 * 1033 ??????

= 0,12288 * 10= 0,12288 * 1044 ?????? = 0,012288 * 10= 0,012288 * 1055 ?????? = ......= ...... ??????

• NNormalized formormalized form:: – Agar tidak membingungkanAgar tidak membingungkan– Untuk Untuk memaksimalkan akurasi dari representasi memaksimalkan akurasi dari representasi

bilanganbilangan– MMenempatkan koma tepat dienempatkan koma tepat di sebelah kiri angka penting sebelah kiri angka penting

pertamapertama– Sebelum koma = 0, sesudah koma = bukan nol (jika Sebelum koma = 0, sesudah koma = bukan nol (jika

bisa)bisa)– Nilai mantissa M:Nilai mantissa M:

11

MB

Page 42: Organisasi Komputer- representasi informasi

Floating Point: NormalisasiFloating Point: Normalisasi (2) (2)

• Akurasi: jika mantissa = 5 digit, Akurasi: jika mantissa = 5 digit, manakah manakah yang paling akurat ?yang paling akurat ? 1.228,8 = 1.228,8 = 0,12288 * 100,12288 * 1044 ??????

= = 0,01228 * 100,01228 * 1055 ?????? = = 0,00122 * 100,00122 * 1066 ??????

• Contoh:Contoh: Normalisasikan !Normalisasikan !(a) 103,5(a) 103,51010 dengan B = 10 ? dengan B = 10 ?

103,5103,51010 = 0,1035 x 10 = 0,1035 x 1033

(b) (b) 0,0000111010,00001110122 dengan B = 2 ?dengan B = 2 ?0,0000111010,00001110122 = = 0,111010,1110122 xx 2 2-4-4

(c) (c) 10011,11010011,11022 x 2 x 210 10 dengan B = 2 ?dengan B = 2 ? 10011,11010011,11022 x x 2 21010 = 0,10011110 = 0,1001111022 xx 2 21515

Page 43: Organisasi Komputer- representasi informasi

Floating Point: NormalisasiFloating Point: Normalisasi (3) (3)

(d) (d) 0,0000110,00001122 x 8x 822 dengan B = 8 ? dengan B = 8 ?

8 = 28 = 233 pergeseran per 3 bit ! pergeseran per 3 bit !

0,0000110,00001122 x 8x 822 = 0= 0000000,011,01122 xx 8 811 == 00,011,01122 xx 8811

(e) (e) 0,00010,000122 x 16x 1655 dengan B = 16 ? dengan B = 16 ?

16 = 216 = 244 pergeseran per 4 bit ! pergeseran per 4 bit !

0,00010,000122 x 16x 1655 = = sudah normal !sudah normal !

(f) (f) 0,0000110,00001122 x 16x 1655 dengan B = 16 ? dengan B = 16 ?

0,0000110,00001122 x 16x 1655 = 0= 000000000,,111122 xx 16164 4 == 00,11,1122 xx 161644

Page 44: Organisasi Komputer- representasi informasi

RepresentasiRepresentasi MantissaMantissa dandan EksponenEksponen• Model representasi yang mana yang digunakan

untuk merepresentasikan mantissa ?– Sign/magnitude, komplemen 1, komplemen 2 , atau

BCD dapat digunakan, tergantung perancang komputer

– Contoh: PDP-11 dan VAX-11 menggunakan sign/magnitude

• Model representasi yang mana yang digunakan

untuk merepresentasikan eksponen ?– Ke-4 model representasi dapat digunakan– Yang banyak digunakan: notasi bias atau notasi

excess-n, n = 2m-1

Page 45: Organisasi Komputer- representasi informasi

Excess-n Excess-n (1)(1)

• Cara kCara konversi: onversi: e’ = e +e’ = e + 2 2m-1m-1 – e’ = eksponen biase’ = eksponen bias– e = eksponen sebenarnyae = eksponen sebenarnya– mm = jumlah = jumlah bitbit

• Contoh:Contoh:bilangan 8-bit (m = 8) bilangan 8-bit (m = 8) 22m-1m-1 = 128= 128 excess excess

128128 ––331010 –3 –31010 + 128 + 1281010 = 125 = 1251010 = 01111101 = 0111110122

001010 = ... = ...22; –100; –1001010 = ... = ...22; 128; 1281010 = ... = ...22 • Range nilai:Range nilai:

––22m-1m-1 E E +(2 +(2m-1m-1–1)–1)Untuk m = 8 bit: Untuk m = 8 bit: –128 ... +127 –128 ... +127 e’ = e’ = 0 ... 2550 ... 255

• Sama dengan komplemen 2Sama dengan komplemen 2 dengan bit tanda dengan bit tanda yang yang didinegasikannegasikan

Page 46: Organisasi Komputer- representasi informasi

Excess-n Excess-n (2)(2)

• Apa manfaat konversi dari Apa manfaat konversi dari eksponen ke eksponen eksponen ke eksponen bias ?bias ?– Mempermudah atau Mempermudah atau

mempercepat perbandingan 2 mempercepat perbandingan 2 buah bilanganbuah bilangan

Contoh eksponen bias untuk m = 5 bit

Page 47: Organisasi Komputer- representasi informasi

Berapa Berapa jumlah bitjumlah bit untuk untuk MantissaMantissa dandan Eksponen ?Eksponen ? (1)(1)

• Makin banyak jumlah digit mantisa semakin presisi

• Makin banyak digit eksponen cakupan (range) bilangan yang dapat direpresentasikan makin lebar

• Makin besar basis bilangan B cakupan bilangan makin lebar– Contoh:

Dengan 6 digit eksponen cakupan signed eksponen = –31 hingga +31

Jika B = 2 cakupan bilangannya 2–31 hingga 2+31

Jika B = 16 cakupan bilangannya 16–31 hingga 16+31 atau 2–124 hingga 2+124 !!!

Page 48: Organisasi Komputer- representasi informasi

Berapa Berapa jumlah bitjumlah bit untuk untuk MantissaMantissa dandan Eksponen ?Eksponen ? (2)(2)

• Makin besar basis bilangan B akurasi berkurang– Contoh bentuk normal dari 7,510 dengan 4 bit

mantissa: 7,510 = 111,12

Dengan basis eksponen 2: 111,12 = 0,1111 x 23 = 7,510

Dengan basis eksponen 16: 111,12 = 0,0111 x 161 = 7,010 (jauh

berbeda !!)

• Pilihan penggunaan basis eksponen ditentukan oleh aspek mana yang lebih dipentingkan (lebar cakupan atau akurasi)

Page 49: Organisasi Komputer- representasi informasi

Berapa Berapa jumlah bitjumlah bit untuk untuk MantissaMantissa dandan Eksponen ?Eksponen ? (3)(3)

• Biasanya setiap sistem komputer mempunyai lebih dari satu format floating point

• Contoh jumlah bit untuk PDP-11 dan VAX-11:

• Format F:– 24 bit mantissa akurasi 7 angka desimal– 8 bit eksponen eksponen desimal 10±38

Page 50: Organisasi Komputer- representasi informasi

22022008 #50

Berapa Berapa jumlah bitjumlah bit untuk untuk MantissaMantissa dandan Eksponen ?Eksponen ? (4)(4)

• Format D: (double precision)– 56 bit mantissa akurasi 16 angka desimal

• Format H: – 113 bit mantissa akurasi 34 angka desimal– Cakupan bilangan: –10480 R +10480

• Floating point overflow: fatal error !!fatal error !!– Terjadi jika bilangan yang akan disimpan lebih besar dari

eksponen positif– Misal bilangan ½ x 2200 akan disimpan pada tipe bilangan

F

• Floating point underflow: di-reset ke nol !– Terjadi jika bilangan yang akan disimpan lebih kecil dari

eksponen negatif– Misal bilangan ½ x 2–200 akan disimpan pada tipe

bilangan F

Page 51: Organisasi Komputer- representasi informasi

Berapa Berapa jumlah bitjumlah bit untuk untuk MantissaMantissa dandan Eksponen ?Eksponen ? (5)(5)

• Karakteristik floating point beberapa komputer

Page 52: Organisasi Komputer- representasi informasi

BagaimanaBagaimana Bit-bit Bit-bit Floating PointFloating Point disusundisusun ?? (1)(1)

• Komponen bilangan floating point : – sign (sebuah bit, terletak paling kiri / MSB)– mantissa (terletak sesudah eksponen)– eksponen (terletak bit sign dan bit-bit mantissa)

• IEEE Standard 754 tiga jenis format: – single precision (32 bit) – double precision (64 bit) – extended precision (80 bit) mereduksi error akibat pembulatan– Contoh: Intel, Motorola, SPARC, MIPS

}fraksi (mantissa): radix 2;eksponen: excess-n

Page 53: Organisasi Komputer- representasi informasi

BagaimanaBagaimana Bit-bit Bit-bit Floating PointFloating Point disusundisusun ?? (2)(2)

• Distribusi bit floating point pada PDP-11 dan VAX-11:

• Distribusi bit floating point pada IBM 370:

s Mantissa

1 8 23 Ukuran field

Format F: Eksponen bias

s Eksponen bias Mantissa

1 8 55 Ukuran field

Format D:

s Eksponen bias Mantissa

1 7 24 Ukuran field

Regular precission

s Eksponen bias Mantissa

1 7 56 Ukuran field

Double precission

Page 54: Organisasi Komputer- representasi informasi

OptimasiOptimasi Bit-bit Bit-bit Floating PointFloating Point (1)(1)

• Optimasi: lebih efisien, cepat, akurat• Fakta untuk B = 2:

– Setelah normalisasi nilai mantissa selalu ½

– Bit paling kiri (MSB) mantissa selalu 1

• Maka:– Bit MSB mantissa tidak perlu disimpan– Lebih akurat 1 digit– Mantissa 100...0 ditulis menjadi 100...0

X

Page 55: Organisasi Komputer- representasi informasi

OptimasiOptimasi Bit-bit Bit-bit Floating PointFloating Point (2)(2)

Contoh:(a) Bagaimana nilai –3/16 desimal disimpan ke

dalam format F PDP-11 ?(1) Normalisasi: –3/16 = –3/4 x 2–2

(2) Nilai eksponen bias: e’ = e + 2m-1

e’ = –2 + 28-1 = –2 + 128 = 12610

e’ = 011111102

(3) Nilai mantissa dalam notasi sign/magnitude:–3/4 = 1 | 11000...0

(4) Buang bit MSB mantissa: –3/4 = 1 | 1000...0(5) Hasil lengkap:

= 10111111010000000000000000000000

= 277200000008

Page 56: Organisasi Komputer- representasi informasi

OptimasiOptimasi Bit-bit Bit-bit Floating PointFloating Point (3)(3)

(b) Bagaimana nilai +200,0 desimal disimpan ke dalam format F PDP-11 ?(1) Normalisasi: +200 = +200/256 x 28

= 25/32 x 28

(2) Nilai eksponen bias: e’ = e + 2m-1

e’ = 8 + 28-1 = 8 + 128 = 13610

e’ = 100010002

(3) Nilai mantissa dalam notasi sign/magnitude:+25/32 = 0 | 1100100...0

(4) Buang bit MSB mantissa: +25/32 = 0 | 100100...0(5) Hasil lengkap:

= 01000100010010000000000000000000

= 104220000008

Page 57: Organisasi Komputer- representasi informasi

OptimasiOptimasi Bit-bit Bit-bit Floating PointFloating Point (4)(4)

(c) Jika representasi internal pada PDP-11 dengan format F adalah 277340000008, angka desimal berapakah yang sedang disimpan ?(1) Ubah ke biner sebanyak 32 bit:

277340000008 = 101111110111000000000000000000002

(2) Tentukan bilangan positif atau negatif:MSB = 1 bilangan negatif

(3) Cari nilai eksponen: Eksponen bias = 011111102 = 12610

Eksponen sebenarnya = 126 - 28-1 = 126–128 = –2(4) Tambahkan bit MSB mantissa:

101111110111100000000000000000002

(5) Cari nilai mantissa:Mantissa = 11110000...0 = ½ + ¼ + 1/8 + 1/16 = 15/16

(6) Nilai desimalnya = –15/16 x 2–2

= –15/64 = –0,234375

Page 58: Organisasi Komputer- representasi informasi

Kesalahan-KesalahanKesalahan-Kesalahan Floating Floating Point Point (1)(1)

(1) Overflow dan underflow(1) Overflow dan underflow

Jika fraksi Jika fraksi == 3 digit desimal bertanda dan eksponen 3 digit desimal bertanda dan eksponen == 2 digit desimal 2 digit desimal bertanda, maka garis bilangan real terbagi dalam bertanda, maka garis bilangan real terbagi dalam tujuhtujuh bagian, yakni : bagian, yakni :

1.1. Bilangan negatif yang Bilangan negatif yang lebih kecillebih kecil dari –0.999 x 10 dari –0.999 x 109999

2.2. Bilangan negatif antara –0.999 x 10Bilangan negatif antara –0.999 x 109999 dan –0.100 x 10 dan –0.100 x 10-99-99

3.3. Bilangan negatif dengan nilai Bilangan negatif dengan nilai magnitudemagnitude sangat kecil kurang dari 0.100 sangat kecil kurang dari 0.100 x 10x 10-99-99

4.4. NolNol5.5. Bilangan positif dengan nilai magnitude sangat kecil kurang dari 0.100 x Bilangan positif dengan nilai magnitude sangat kecil kurang dari 0.100 x

1010-99-99

6.6. Bilangan positif antara 0.100 x 10Bilangan positif antara 0.100 x 10-99-99 dan 0.999 x 10 dan 0.999 x 109999

7.7. Bilangan positif yang lebih besar dari 0.999 x 10Bilangan positif yang lebih besar dari 0.999 x 109999

Page 59: Organisasi Komputer- representasi informasi

Kesalahan-KesalahanKesalahan-Kesalahan Floating Floating Point Point (2)(2)

(2) Kerapatan (density)– Bilangan bilangan real tidak pasti (berubah-ubah)– Antara dua bilangan real, x dan y, selalu ada

bilangan real lain, z = (x + y)/ 2 continuum (rangkaian kesatuan)

(3) Kesalahan pembulatan (round-off error)– Tidak dapat merepresentasikan setiap bilangan

floating point secara tepat– Contoh:

1/5 = 0,210 = 0,0011001100110011...2 (tak terbatas) Dibatasi dengan jumlah bit mantissa tertentu Misal 12 bit sign/magnitude dan 6 bit eksponen:

0,210 = 0,110011001102 x 2-2 = 0,798828125 x ¼ = 0,19971 (kurang dari 0,2)“Jangan pernah menguji balik nilai suatu bilangan real !”

Page 60: Organisasi Komputer- representasi informasi

Kesalahan-KesalahanKesalahan-Kesalahan Floating Floating Point Point (3)(3)

(4) Kesalahan propagasi (propagation error)– Terjadi pada operasi aritmatika jika dua bilangan

yang dioperasikan memiliki eksponen yang jauh berbeda

– Langkah-langkah untuk menjumlahkan dua bilangan real:

1. Samakan eksponen kedua bilangan (penskalaan)2. Jumlahkan mantissa kedua bilangan 3. Normalisasikan Contoh 1: 0,123 x 105 + 0,00456 x 106

Page 61: Organisasi Komputer- representasi informasi

Kesalahan-KesalahanKesalahan-Kesalahan Floating Floating Point Point (4)(4)

Contoh 2Contoh 2: Penjumlahan +11 dengan +1/4: Penjumlahan +11 dengan +1/4Jika digunakan 6 bit Jika digunakan 6 bit sign/magnitudesign/magnitude untuk mantissa (lima bit untuk mantissa (lima bit ditambah satu bit tanda), dan 4 bit ditambah satu bit tanda), dan 4 bit biased exponentbiased exponent, maka, maka:: signsign expexp mantissamantissa+11 = +11/16 x 2+11 = +11/16 x 24 4 = 0 1100 10110= 0 1100 10110+1/4 = +1/2 x 2+1/4 = +1/2 x 2-1 -1 = 0 0111 10000= 0 0111 10000Samakan eksponennya:Samakan eksponennya:+11/16 x 2+11/16 x 24 4 = +11/16 x 2= +11/16 x 24 4 = 0 1100 10110= 0 1100 10110+1/2 x 2+1/2 x 2-1 -1 = +1/64 x 2= +1/64 x 24 4 = + = + 0 1100 0 1100 0000000000 (0,00000 (0,00000,10000,10000))

((x2x255)) 0 1100 10110 0 1100 10110 11/16 x 2 11/16 x 2-4-4 = = +11 !!+11 !!

(Propagation error)(Propagation error)Solusi:Memperbanyak bit pada mantissa dan eksponen mengurangi dampak masalah

Page 62: Organisasi Komputer- representasi informasi

Organisasi Memori Berorientasi Organisasi Memori Berorientasi WordWord

• Alamat spesifik Alamat spesifik dari lokasi Bytedari lokasi Byte– Alamat word Alamat word

pertama = alamat pertama = alamat awal memori (RAM)awal memori (RAM)

– Alamat word Alamat word selanjutnya selanjutnya melompat 4 alamat melompat 4 alamat (32-bit) atau 8 (32-bit) atau 8 alamat (64-bit)alamat (64-bit)

000000010002000300040005000600070008000900100011

32-bitWords

Bytes Addr.Memory

0012001300140015

64-bitWords

Addr =??

Addr =??

Addr =??

Addr =??

Addr =??

Addr =??

0000

0004

0008

0012

0000

0008

Page 63: Organisasi Komputer- representasi informasi

Big Endian dan Little EndianBig Endian dan Little Endian

• Big EndianBig Endian– Least significant byteLeast significant byte memiliki memiliki

alamat tertinggialamat tertinggi– Contoh: Sun, Macintosh, Contoh: Sun, Macintosh,

Motorola 6800, 68000, IBM Motorola 6800, 68000, IBM system/360system/360

• Little EndianLittle Endian– Least significant byte memiliki Least significant byte memiliki

alamat terkecilalamat terkecil– Alphas, 6502, Z80, x86, PDP-Alphas, 6502, Z80, x86, PDP-

1111

MSB LSB

LSB MSB

Page 64: Organisasi Komputer- representasi informasi

Representasi VariabelRepresentasi Variabel

• Contoh– Sebuah variable x memiliki data sebanyak 4-byte: 0x01234567

– Alamat yang diberikan &x adalah 0x100

0x100 0x101 0x102 0x103

01 23 45 67

0x100 0x101 0x102 0x103

67 45 23 01

Big Endian

Little Endian

01 23 45 67

67 45 23 01

Page 65: Organisasi Komputer- representasi informasi

Representasi IntegerRepresentasi Integer• int A = 15213;• int B = -15213;• long int C = 15213;3 komputer: Linux, Alpha, dan SunLinux + Alpha = Little endian; Sun = Big endian

Decimal: 15213Binary: 0011 1011 0110 1101Hex: 3 B 6 DDecimal: -15213Binary: 1100 0100 1001 0011Hex: C 4 9 3

6D3B0000

Linux/Alpha A

3B6D

0000

Sun A

93C4FFFF

Linux/Alpha B

C493

FFFF

Sun B

representasi Two’s complement

00000000

6D3B0000

Alpha C

3B6D

0000

Sun C

6D3B0000

Linux C

Page 66: Organisasi Komputer- representasi informasi

Representasi PointersRepresentasi PointersContoh: int B = -15213; int *P = &B;

Alpha Address

Hex: 1 F F F F F C A 0

Binary: 0001 1111 1111 1111 1111 1111 1100 1010 0000

01000000

A0FCFFFF

Alpha P

Sun Address

Hex: E F F F F B 2 C Binary: 1110 1111 1111 1111 1111 1011 0010 1100

Compilers & mesin yg beda akan merepresentasikan pada lokasi yg beda

FB2C

EFFF

Sun P

FFBF

D4F8

Linux P

Linux Address

Hex: B F F F F 8 D 4 Binary: 1011 1111 1111 1111 1111 1000 1101 0100

Page 67: Organisasi Komputer- representasi informasi

Tipe Data KarakterTipe Data Karakter

Tipe yang dTipe yang dominan :ominan :• ASCIIASCII ( (American Standard Code for Information American Standard Code for Information

InterchangeInterchange))standar standar proses transfer informasi antar proses transfer informasi antar komputerkomputer

• EBCDICEBCDIC ( (Extended Binary-Coded Decimal Extended Binary-Coded Decimal Interchange CodeInterchange Code))EBCDIC secara internal, ASCII secara eksternalEBCDIC secara internal, ASCII secara eksternal

• ASCII (7 bit/code) vs standar format numerik ASCII (7 bit/code) vs standar format numerik (kelipatan 8 bit)(kelipatan 8 bit)– ASCII diimplementasikan dalam 8 bitASCII diimplementasikan dalam 8 bit– Bit ke-8:Bit ke-8:

selalu bernilai 0selalu bernilai 0 flag untuk mendefinisikan character set expansion flag untuk mendefinisikan character set expansion error detection (parity genap/ganjil)error detection (parity genap/ganjil)

Page 68: Organisasi Komputer- representasi informasi

Kode ASCIIKode ASCII

Oct Dec Hex Name000 0 0x00 NUL001 1 0x01 SOH, Control-A002 2 0x02 STX, Control-B003 3 0x03 ETX, Control-C004 4 0x04 EOT, Control-D005 5 0x05 ENQ, Control-E006 6 0x06 ACK, Control-F007 7 0x07 BEL, Control-G010 8 0x08 BS, Control-H, backspace..................

Page 69: Organisasi Komputer- representasi informasi

Table karakter EBCDICTable karakter EBCDIC

Page 70: Organisasi Komputer- representasi informasi

• Strings di C:Strings di C:– Direpresentasikan dengan array of charactersDirepresentasikan dengan array of characters– Setiap karakter di-encoded ke dalam format ASCIISetiap karakter di-encoded ke dalam format ASCII

Standard Encoding : 7-bitStandard Encoding : 7-bit Encoding lain ada, tapi tidak biasaEncoding lain ada, tapi tidak biasa

– String harus diakhiri dengan nullString harus diakhiri dengan null Karakter akhir = 0Karakter akhir = 0 Karakter “0” memiliki kode Karakter “0” memiliki kode 0x300x30

Digit i memiliki kode 0x30+i• KompatibilitiKompatibiliti

– Urutan Byte bukan issueUrutan Byte bukan issue Data merupakan single byte quantitiesData merupakan single byte quantities

– Text files secara umum platform independentText files secara umum platform independent Kecuali untuk konvensi yang bedaKecuali untuk konvensi yang beda

Representasi StringRepresentasi String

Linux/Alpha S Sun S

char S[6] = "15213";

3231

3135

3300

3231

3135

3300

Page 71: Organisasi Komputer- representasi informasi

Penanganan Kesalahan DenganPenanganan Kesalahan Dengan ParitasParitas (1)(1)• Mendeteksi kesalahan data pada Mendeteksi kesalahan data pada level bitlevel bit • Bit paritasBit paritas: bit ekstra yang ditambahkan pada suatu : bit ekstra yang ditambahkan pada suatu

unit data terkecil untuk digunakan dalam proses unit data terkecil untuk digunakan dalam proses pengecekan kebenaran data pada saat pengecekan kebenaran data pada saat penyimpanan atau proses transmisi penyimpanan atau proses transmisi

• Bit paritas yang ditambahkan merupakan hasil Bit paritas yang ditambahkan merupakan hasil keluaran dari suatu fungsi yang menerima masukan keluaran dari suatu fungsi yang menerima masukan berupa seluruh data pada unit terkecil tersebutberupa seluruh data pada unit terkecil tersebut

• Jenis paritasJenis paritas: paritas genap (: paritas genap (eveneven) & paritas ganjil ) & paritas ganjil ((oddodd))– Paritas genap:Paritas genap:

Menambahkan sebuah bit sehingga total bit ‘1’ suatu word Menambahkan sebuah bit sehingga total bit ‘1’ suatu word berjumlah genapberjumlah genap

– Paritas ganjil:Paritas ganjil: Menambahkan sebuah bit sehingga total bit ‘1’ suatu word Menambahkan sebuah bit sehingga total bit ‘1’ suatu word

berjumlah ganjilberjumlah ganjil

• Mendeteksi Mendeteksi maksimal 1 bit errormaksimal 1 bit error, lokasi tidak , lokasi tidak diketahuidiketahui

Page 72: Organisasi Komputer- representasi informasi

data

parity

(data + parity)

data'F(data) F(data’)

append separate

parity'’ =parity’ ?

parity'’

parity' yes

no

accept‘valid’data

process forinvalid data

parity generationnetwork /storage

error detection

Penanganan Kesalahan DenganPenanganan Kesalahan Dengan ParitasParitas (2)(2)

ContohContoh::DataData = = 10010011001001,, jenis paritas = paritas genapparitas genap

JikaJika bit bit yang dibaca yang dibaca 1001001100100111 JikaJika bit bit yang dibaca yang dibaca 1011001101100111 JikaJika bit bit yang dibaca yang dibaca 1011001101100100

data data dianggap dianggap validvaliddata data dianggap dianggap tidaktidak validvaliddata data dianggap dianggap validvalid !! !!

Page 73: Organisasi Komputer- representasi informasi

Hamming Code single-bitHamming Code single-bit • BBiasa digunakan dalam konteks iasa digunakan dalam konteks Error ControlError Control

(deteksi maupun koreksi)(deteksi maupun koreksi)• BBit-bit informasi + bit-bit paritas = it-bit informasi + bit-bit paritas = codewordcodeword• HammingHamming distancedistance: jumlah perbedaan bit dari : jumlah perbedaan bit dari

duadua buah buah codewordcodeword – Contoh Contoh CCodewordodeword dengan 7 bit informasi dan 1 bit dengan 7 bit informasi dan 1 bit

paritas genap:paritas genap: 0000000 00000000 0

0000001 10000001 1 0000010 1 0000010 1 0000011 00000011 0

– Hamming distanceHamming distance = 2 = 2 hanya dapat mendeteksi hanya dapat mendeteksi 1-bit 1-bit erroerrorr

• MMendeteksi n endeteksi n errorerror: : Hamming distanceHamming distance n + 1 n + 1 • MMe-e-recoverrecover n n errorerror: : Hamming distanceHamming distance 2n + 1 2n + 1

Penanganan Kesalahan DenganPenanganan Kesalahan Dengan Hamming CodeHamming Code (1)(1)

Page 74: Organisasi Komputer- representasi informasi

Penanganan Kesalahan DenganPenanganan Kesalahan Dengan Hamming CodeHamming Code (2)(2)

• Dapat menentukan posisi dari single-bit error yang terjadi• Recovery dapat dilakukan dengan meng-inverse bit pada posisi

tersebut• Block (k digit) dikodekan n digit (n > k); dilambangkan dengan (n,k)• (k/n) = code rate atau code efficiency; 1 - k/n = redundancyIlustrasi: Codeword = 7 bit informasi + 4 bit check (pada posisi 2x)

(11,7)informasi: 1001101

C: check bit menjumlahkan (modulo 2) semua indeks bit yang bernilai 1

Jumlah bit code: 2K – 1 M+KK = jumlah bit kontrol; M = jumlah bit data

Misal M=7K = 3: 23–1 7 + 3 (salah)K = 4: 24–1 7 + 4 (ok)

nilai C pada posisi yang bersesuaian

Page 75: Organisasi Komputer- representasi informasi

Penanganan Kesalahan DenganPenanganan Kesalahan Dengan Hamming CodeHamming Code (3)(3)

• Pada decoder dilakukan proses serupa (termasuk bit-bit Pada decoder dilakukan proses serupa (termasuk bit-bit check)check)

tidak terdeteksi tidak terdeteksi errorerror ( (single-bitsingle-bit errorerror))

Contoh jika terjadi error pada bit ke-11: Contoh jika terjadi error pada bit ke-11:

errorerror pada bit ke-11 (representasi biner = 1011) pada bit ke-11 (representasi biner = 1011)

Recovery: invert bitRecovery: invert bit

Page 76: Organisasi Komputer- representasi informasi

Penanganan KesalahanPenanganan Kesalahan• JJarang digunakan dalam konteks arang digunakan dalam konteks

komunikasi data / jaringan komputer, komunikasi data / jaringan komputer, dimana probabilitas terbesar error yang dimana probabilitas terbesar error yang terjadi adalah terjadi adalah burst errorburst error

• BBiasanya digunakan kode-kode berbasis iasanya digunakan kode-kode berbasis konvolusikonvolusi

• DDapat digunakan pada aplikasi yang apat digunakan pada aplikasi yang punya batasan punya batasan single-bit errorsingle-bit error, misalnya: , misalnya: error correcting semiconductor memory error correcting semiconductor memory systemsystem

Page 77: Organisasi Komputer- representasi informasi

PustakaPustaka[HTT02]http://en.wikipedia.org/wiki/[SCH85] Schneider, Michael G. 1985. “The

Principle of Computer Organization”. 1st edition. John Wiley & Sons. Canada.

[TAN99] Tanenbaum, Andrew S. 1999. “Structured Computer Organization”. 4th edition. Prentice Hall.