840 likes | 2.03k Views
REPRESENTASI DATA. Pengantar Komputer Teknik Sipil dan Perencanaan Universitas Gunadarma. Pendahuluan.
E N D
REPRESENTASI DATA PengantarKomputer TeknikSipildanPerencanaan UniversitasGunadarma
Pendahuluan • Materiinimendiskusikanbeberapakonseppentingmencakupsistembilanganbinerdan hexadecimal, organisasi data biner (bit, nibbles, byte, kata/word, dan double word), sistempenomoranbertanda (signed) dantidakbertanda (unsigned), aritmatika, logika, shift/geser, danoperasi rotate padanilaibiner, bit field danpaket data, danhimpunankarakter ASCII
Pendahuluan • Ada beberapa sistem bilangan yang digunakan dalam sistem digital. Yang paling umum adalah sistem bilangan desimal, biner, oktal dan heksadesimal • Sistem bilangan desimal merupakan sistem bilangan yang paling familier dengan kita karena berbagai kemudahannya yang kita pergunakan sehari – hari.
Sistem Bilangan • Secara matematis sistem bilangan bisa ditulis seperti contoh di bawah ini:
Sistem Radiks Himpunan/elemen Digit Contoh Desimal r=10 {0,1,2,3,4,5,6,7,8,9} 25510 Biner r=2 {0,1} 111111112 Oktal r= 8 {0,1,2,3,4,5,6,7} 3778 r=16 {0,1,2,3,4,5,6,7,8,9,A, B, C, D, E, F} FF16 Heksadesimal Desimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Heksa 0 1 2 3 4 5 6 7 8 9 A B C D E F Biner 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Macam-Macam Sistem Bilangan
Konversi Radiks-r ke desimal • Rumuskonversiradiks-r kedesimal: • Contoh: • 11012 = 123 + 122 + 120 = 8 + 4 + 1 = 1310 • 5728 = 582 + 781 + 280 = 320 + 56 + 16 = 39210 • 2A16 = 2161 + 10160 = 32 + 10 = 4210
Konversi Bilangan Desimal ke Biner • KonversibilangandesimalbulatkebilanganBiner: Gunakanpembagiandgn 2 secarasuksesifsampaisisanya = 0. Sisa-sisapembagianmembentukjawaban, yaitusisa yang pertamaakanmenjadileast significant bit (LSB)dansisa yang terakhirmenjadimost significant bit (MSB).
Contoh: Konersi 17910kebiner: 179 / 2 = 89 sisa 1 (LSB) / 2 = 44 sisa 1 / 2 = 22 sisa 0 / 2 = 11 sisa 0 / 2 = 5 sisa 1 / 2 = 2 sisa 1 / 2 = 1 sisa 0 / 2 = 0 sisa 1 (MSB) • 17910 = 101100112 • MSB LSB
Konversi Bilangan Desimal ke Oktal • Konversi bilangan desimal bulat ke bilangan oktal: Gunakan pembagian dgn 8 secara suksesif sampai sisanya = 0. Sisa-sisa pembagian membentuk jawaban, yaitu sisa yang pertama akan menjadi least significant bit (LSB) dan sisa yang terakhir menjadi most significant bit (MSB).
Contoh: Konversi 17910keoktal: • 179 / 8 = 22 sisa 3 (LSB) • / 8 = 2 sisa 6 • / 8 = 0 sisa 2 (MSB) • 17910 = 2638 • MSB LSB
Konversi Bilangan Desimal ke Hexadesimal • Konversi bilangan desimal bulat ke bilangan hexadesimal: Gunakan pembagian dgn 16 secara suksesif sampai sisanya = 0. Sisa-sisa pembagian membentuk jawaban, yaitu sisa yang pertama akan menjadi least significant bit (LSB) dan sisa yang terakhir menjadi most significant bit (MSB).
Contoh: Konversi 17910kehexadesimal: • 179 / 16 = 11 sisa 3 (LSB) • / 16 = 0 sisa 11 (dalambilanganhexadesimalberarti B)MSB • 17910 = B316 • MSB LSB
Konversi Bilangan Biner ke Oktal Untuk mengkonversi bilangan biner ke bilangan oktal, lakukan pengelompokan 3 digit bilangan biner dari posisi LSB sampai ke MSB
Contoh: konversikan 101100112kebilanganoktal • Jawab : 10 110 011 • 2 6 3 • Jadi101100112 = 2638
Konversi Bilangan Oktal ke Biner Sebaliknya untuk mengkonversi Bilangan Oktal ke Biner yang harus dilakukan adalah terjemahkan setiap digit bilangan oktal ke 3 digit bilangan biner
ContohKonversikan 2638kebilanganbiner. • Jawab: 2 6 3 • 010 110 011 • Jadi 2638 = 0101100112 Karena 0 didepantidakadaartinyakitabisamenuliskan 101100112
Konversi Bilangan Biner ke Hexadesimal Untuk mengkonversi bilangan biner ke bilangan hexadesimal, lakukan pengelompokan 4 digit bilangan biner dari posisi LSB sampai ke MSB
Contoh: konversikan 101100112kebilanganheksadesimal • Jawab : 1011 0011 • B 3 • Jadi101100112 = B316
Konversi Bilangan Hexadesimal ke Biner Sebaliknya untuk mengkonversi Bilangan Hexadesimal ke Biner yang harus dilakukan adalah terjemahkan setiap digit bilangan Hexadesimal ke 4 digit bilangan biner
ContohKonversikan B316kebilanganbiner. • Jawab: B 3 • 1011 0011 • Jadi B316 = 101100112
KonversikanBilangandiBawahini 8910 = ……16 3678 = ……2 110102 = ……10 7FD16 = ……8 29A16 = ……10 1101112 = …….8 35910 = ……2 4728 = ……16 Tugas
Jawaban • Konversi 8910kehexadesimal: 89 / 16 = 5 sisa 9 8910 = 5916 • Konversi 3678kebiner: 3 = 011 ; 6 = 110 ; 7 = 111 » 0111101112 = 111101112 • Konversi 110102kedesimal: = 124+ 123 +022 + 121 + 020 = 16 + 8 + 2 = 2610
Jawaban • Konversi 7FD16keoktal: 7 = 0111 ; F = 1111 ; D = 1101 0111111111012 = 111111111012 111111111012 = 37758 » 7FD16 = 37758 • Konversi 29A16kedesimal: = 2162+ 9161 + A160 = 512 + 144 + 10 = 66610
Jawaban • Konversi 1101112keOktal 110= 6 ; 111 = 7 1101112 = 678 • Konversi 35910 kebiner 359 / 2 = 179 sisa 1 (LSB) / 2 = 89 sisa 1 / 2 = 44 sisa 1 / 2 = 22 sisa 0 / 2 = 11 sisa 0 / 2 = 5 sisa 1 / 2 = 2 sisa 1 / 2 = 1 sisa 0 / 2 = 0 sisa = 1 (MSB) • 35910 = 1011001112
Jawaban • Konversi 4728ke hexadecimal = 314 • 4728 = 1001110102 • 4 7 2 • 100 111 010 • 1001110102 = 13A16
Pendahuluan • Komputersecaraumumbekerjadenganbeberapajumlah bit khusus. Kumpulan yang Umumadalah bit tunggal, kelompokempat bit (disebutnibbles), kelompokdelapan bit (disebutbyte), kelompok 16 bit (disebutword), dan lain-lain.
Bits • "Unit" paling kecildari data padakomputerbineradalahsatu bit tunggal. • satu bit tunggalmampumerepresentasikanhanyaduanilai yang berbeda (secaratipikalnolatausatu) • Andabisamerepresentasikandua item data apapun yang berbedadengansatu bit tunggal. Contohmeliputinolatausatu, benaratausalah, on atau off, priaatauwanita. Andatidakdibatasiuntukmerepresentasikanjenis data biner (yaitu, objek yang hanyamempunyaiduanilai yang berbeda).
Bits • Data adalahapa yang andaingindefinisikan. • Jikaandamenggunakan bit untukmerepresentasikansuatunilaiboolean (benar/salah) maka bit itu (olehdefinisianda) merepresentasikanbenaratausalah. • Agar bit mempunyaimaksud/arti yang benar, andaharuskonsisten. Maka, jikaandasedangmenggunakan bit untukmerepresentasikanbenaratausalahdidalam program anda, andatidakbolehmenggunakannilaibenar/salah yang disimpandalam bit tsbuntukmerepresentasikanmerahataubiru.
Nibbles • nibbleadalahsatukoleksiempat bit. Iabukanmerupakanjenis data yang menarikkecualidua item: bilangan BCD (binary coded decimal) danbilanganberbasisenambelas. • Iamenggunakanempat bit untukmerepresentasikansatu BCD tunggalatau digit hexadecimal. Dengansuatu nibble, kitabisamerepresentasikansampaidengan 16 nilaiberbeda.
Nibbles • Dalamkasusbilanganberbasisenambelas, nilaidapatberupa 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F direpresentasikandenganempat bit. BCD menggunakansepuluhangkaberbeda (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
Bytes • Struktur data terpenting yang digunakanolehmikroprosesor 80x86 adalah byte. Sebuah byte terdiridaridelapan bit danadalah datum addressable paling kecil (data item) padamikroprosesor 80x86. • MemoriUtamadanalamat I/O pada 80x86 adalahsemuaalamat byte. Artinyabahwa item paling kecil yang mungkindiaksessecaraindividuolehsatu program 80x86 adalahnilaidelapan-bit.
Bytes • Bit dalamsatu byte secara normal dinomoridarinolsampaitujuhmenggunakankonvensididalamgambar 1.1. • Bit 0 adalahurutan bit terendahatau bit paling tidakberarti (signifikan), bit 7 adalahurutan bit paling berarti (signifikan) dari byte. Kita akanmengacupadapenomoransemua bit lain.
Bytes Gambar 1.1: Penomoran Bit dalamsatu Byte • Perhatikanbahwasatu byte jugaberisipersisdua nibble (lihatgambar 1.2). Gambar 1.2: Dua Nibbles dalamsatu Byte
Word • Sebuah word adalahkelompok 16 bit. Kita akanmenomori bit dalam word mulaidarinolsampaidengan lima belas. Penomoran bit munculdigambar 1.3. Gambar 1.3: Nomor Bit dalam Word • Seperti byte, bit 0 adalahurutan bit terendahdan bit 15 adalahurutan bit tertinggi.
Word • Perhatikanbahwasatu word berisipersisdua byte. Bit 0 sampai 7 membentukurutan byte terendah, bit 8 hingga 15 membentukurutan byte tertinggi (lihatgambar 1.4). Gambar 1.4: Dua Bytes dalam Word • Secaraalami, satu word mungkinsajadipecahkedalamempat nibble sepertidiperlihatkandidalamgambar 1.5.
Word Gambar 1.5: Nibble dalamSebuah Word • Nibble noladalah nibble urutanterendahdalam word dan nibble tigaadalahnibleurutantertinggidari word. Dua nibble lain adalah “nibble satu” atau “nibble dua”.
Word • Dengan 16 bit, andabisamerepresentasikan 216 (65,536) nilai yang berbeda. Inibisamenjadinilaidalamjangkauan 0..65,535 (atau, sebagaikasusbiasanya, -32,768..+32,767) ataujenis data lain apapuntanpalebihdari 65,536 nilai.
PertambahanBilanganBiner • Operasiaritmatikaterhadapbilanganbiner yang dilakukanolehkomputerdi ALU terdiridarioperasipertambahandanpengurangan. • Operasiperkalianbinardapatdilakukandgnoperasipertambahan yang dilakukansecaraberulang-ulang. Pembagianbinerdapatdilakukandgnoperasipengurangan yang dilakukansecaraberulang-ulang
PertambahanBilanganBiner • Pertambahanbilanganbinerdapatdilakukandengancara yang samasepertihalnyapertambahanbilangandesimal. • Pertambahanbilangandesimaldapatdilakukandengancara • digit2 dari bilangan2 desimalditambahkansatupersatumulaidariposisi paling kanan • Bilahasilpertambahanantarkolommelebihnilai 9, makadikurangidengannilai 10 untukdibawakepertambahankolomberikutnya
Contoh 273 189 -----+ 2 carry of 1 1 273 189 -----+ 62 carry of 1 1 273 189 -----+ 462
Contoh 1111 10100 ---------+ 100011 Langkah2nya: 1 + 0 = 1 1 + 0 = 1 1 + 1 = 0 dgncarry of 1 1 + 0 + 1 = 0 dgncarry of 1 1 + 1 = 0 dgncarry of 1
PenguranganBilanganBiner • Bilanganbinerdikurangkandengancara yang samadgnpenguranganbilangandesimal. Dasarpenguranganuntukmasing-masing digit bilanganbineradalah 0 - 0 = 0 • 1 - 0 = 1 • 1 – 1 = 0 • 0 – 1 = 1 dgnborrow of 1
MetodePenguranganKomputer • Komputermelakukanpengurangandengancaramenggunakankomplemen, yaitukomplemen basis minus 1. • Di dalamsistembilangandesimalada 2 komplemenyakni 9s komplemendan 10s komplemen. • Di dalamsistembilanganbinerada 2 komplemenyakni 1s komplemendan 2s komplemen
Contoh 9s Komplemen 859 859 523 476 adalah 999-523 ----- - ----- + 336 1 335 1 ----- + 336
Contoh 10s Komplemen 859 859 523 477 adalah 1000-523 ----- - ----- + 336 1 336 dibuang
Contoh 1s Komplemen 11001 11001 10110 01001 adalah 11111-10110 -------- - -------- + 00011 1 00010 1 -------- + 00011
Contoh 2s Komplemen 11001 11001 10110 01010 adalah 01001 + 1 -------- - -------- + 00011 1 00011 dibuang