SISTEM BILANGAN DAN KODE Number Systems Coding Ir
SISTEM BILANGAN DAN KODE (Number Systems & Coding) Ir. Saifullah, M. T.
SISTEM BILANGAN • Sistem bilangan (number system) adalah suatu cara untuk mewakili besaran dari suatu besaran fisik. • Sistem bilangan menggunakan suatu bilangan dasar atau disebut juga basis (base / radix). • Dalam sistem digital ada empat sistem bilangan yang sering digunakan, yaitu: 1. Sistem Bilangan Desimal (Decimal Number System) 2. Sistem Bilangan Biner (Binary Number System) 3. Sistem Bilangan Oktal (Octal Number System) 4. Sistem Bilangan Heksadesimal (Hexadecimal Number System)
Sistem Bilangan Desimal Sistem bilangan desimal adalah sistem bilangan yang memiliki 10 simbol, yaitu: 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9. sistem disimal juga sering disebut sistem bilangan berbasis (base) 10 karena memiliki 10 digit. Setiap digit memiliki nilai tempat yang berbeda. Nilai tempat 103 102 101 100 1 7 4 MSD 5 10 -1 10 -2 10 -3 . 2 koma (DP) 1 4 LSD Misalnya: 1745, 21410 = (1 x 103) + (7 x 102) + (4 x 101) + (5 x 100) + (2 x 10 -1) + (1 x 10 -2) + (4 x 10 -3)
Sistem Bilangan Desimal
Sistem bilangan biner adalah sistem bilangan yang memiliki dua simbol, yaitu: 0 dan 1. Sistem biner juga sering disebut sistem bilangan berbasis 2 karena memiliki dua bit. Setiap bit memiliki nilai tempat yang berbeda. Nilai tempat 23 1 MSB 22 21 0 1 2 -1 . 1 koma (BP) 2 -2 2 -3 0 1 LSB Jadi : 1011, 1012 = (1 x 23) + (0 x 22) + (1 x 21) + (1 x 20) + (1 x 2 -1) + (0 x 2 -2) + (1 x 2 -3) = 8 + 0 + 2 + 1 + 0, 5 + 0, 125 = 11, 62510
Sistem bilangan biner
Sistem bilangan oktal adalah sistem bilangan berbasis 8, oleh karena itu ia memiliki delapan digit, yaitu: 0, 1, 2, 3, 4, 5, 6, 7. Nilai tempat bilangan oktal sbb. : 82 81 80 . 8 -1 8 -2 8 -3 octal point Misal 235, 18 = (2 x 82) + (3 x 81) + (5 x 80) + (1 x 8 -1) = 157, 12510
Sistem bilangan oktal
Sistem bilangan hexadesimal adalah sistem bilangan berbasis 16, oleh karena itu ia memiliki 16 digit, yaitu: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Huruf-huruf A, B, C, D, C, E dan F secara berturut-turut bernilai 10, 11, 12, 13, 14, 15. Misalnya 456716 dan 24 CE 16 adalah contoh bilangan hexadesimal. Sebagai contoh:
Sistem bilangan hexadesimal
KONVERSI BILANGAN n Konversi bilangan desimal ke sistem biner diperlukan dalam menerjemahkan keinginan manusia kedalam kode-kode yang dikenal oleh sistem digital, terutama komputer digital. n Konversi dari biner ke desimal diperlukan untuk menterjemahkan kode hasil pengolahan sistem digital ke informasi yang dikenal oleh manusia. Pengubahan (konversi) dari biner ke oktal dan heksadesimal dan sebaliknya merupakan pengantara konversi dari/ke biner ke/dari desimal. n Konversi ini banyak dilakukan karena disamping cacah angka biner yang disebut juga "bit", singkatan dari "binary digit", jauh lebih besar dibandingkan dengan angka-angka pada sistem oktal dan heksadesimal, juga karena konversi itu sangat mudah.
Konversi desimal ke biner / biner ke desimal Konversi bilangan desimal bulat: Gunakan pembagian dgn 2 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). n Contoh 1: Konersi 17910 ke biner: 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 n
Konversi desimal ke biner / biner ke desimal-lanjtn n Konversi fraksi-fraksi desimal ke biner: kalikan dengan 2 secara berulang sampai fraksi hasil perkalian = 0 (atau sampai jumlah penempatan biner yang diharapkan). Digit kesleuruhan hasil perkalian memrupakan jawaban, dengan yang pertama MSB, dan yang terakhir LSB. n Contoh 2: Konversi 0. 312510 ke biner Digit hasil. 3125 2 = 0. 625 0 . 625 2 = 1. 25 1 . 25 2 = 0. 50 0 . 5 2 = 1. 0 1 0. 312510 =. 01012 (MSB) (LSB)
Konversi desimal ke biner / biner ke desimal-lanjtn Contoh 3. Ubahlah 625, 187510 =. . . 2 Pisahkan antara bilangan bulat dan pecahannya.
Konversi desimal ke biner / biner ke desimal-lanjtn Ubahlah bilangan desimal berikut ke biner a. 43, 125 b. 457, 65
Konversi desimal ke biner / biner ke desimal-lanjtn n Konversi bilangan biner ke desimal didapatkan dengan menjumlahkan perkalian semua bit biner dengan perpangkatan 2 sesuai dengan posisi bit tersebut. Contoh 1 n Contoh 2: 10012 =. . desimal ? n 1 0 0 1 23 + 22 + 21 + 20 = 910 10102 =. . ? (desimal)
Konversi desimal ke oktal / heksadesimal Konversi desimal ke oktal dan desimal ke heksadesimal dapat dilakukan dengan melakukan pembagian berulang-ulang dengan 8 dan 16 untuk bagian bulat dan perkalian berulang-ulang untuk bagian pecahan seperti yang dilakukan pada konversi desimalbiner di bagian depan. Sebenarnya cara ini berlaku untuk semua dasar sistem bilangan. Contoh: 205, 0510 =. . . . ? (oktal dan hexa)
Konversi desimal ke oktal / heksadesimal-lanjtn Contoh: 205, 0510 =. . . . ? (hexa) Ubahlah • 42310 =. . . . hexa • 21410 =. . . . hexa
Konversi biner ke oktal dan oktal ke biner n Untuk mengubah bilangan biner ke oktal, kita pilah bilangan tersebut menjadi 3, 3, 3 -bit bilangan biner dari kanan ke kiri. Tabel berikut ini menunjukkan representasi bilangan biner terhadap bilangan oktal : Contoh : 11111102 =. . 8 001 1102 1 7 68 Jadi: 11111102 = 1768 Ubahlah ke oktal: 110010002 =. . . 8 Tabel ekivalensi biner dan oktal 1110012. . . 8
Konversi biner ke oktal dan oktal ke biner-lajntn n Mengubah sistem bilangan oktal ke bilangan biner dilakukan dengan cara kebalikan dari konversi biner ke oktal. Yaitu, masing – masing digit bilangan oktal diubah langsung menjadi bilangan biner dalam kelompok 3, 3, 3 bit, kemudian merangkai kelompok bit tersebut sesuai urutan semula. n Contoh : 1768 =. . . 2 1 7 68 001 1102 Jadi, 1768 = 0011111102 = 11111102 Ubahlah ke biner: 4728 =. . . . 2 54318 =. . . 2
Konversi biner ke heksadesimal dan heksadesimal ke biner n Pengubahan bilangan biner ke heksadesimal dilakukan dengan pengelompokan 4, 4, 4 -bit biner dimulai dari bit paling kanan. Kemudian konversikan setiap kelompok menjadi satu digit heksadesimal. Tabel berikut menunjukkan representasi bilangan biner terhadap digit heksadesimal : Contoh : 11111102 =. . 16 0111 11102 7 14(E) Jadi : 11111102 = 7 E 16 Ubahlah ke hexa: 10010111101101012 =. . . . 16
Konversi biner ke heksadesimal dan heksadesimal ke biner - lanjtn n Konversi bilangan heksadesimal ke biner dilakukan dengan membalik urutan dari proses pengubahan Biner ke heksadesimal. Satu digit heksadesimal dikonversi menjadi 4 bit Biner. contoh 7 E 16 =. . . 2 Ubahlah: 7 E 16 378 =. . . . . 10 0111 11102 Jadi, 7 E 16 = 11111102 16 B 2 F 16 =. . . . 8 35278 =. . . . 16 2
LATIHAN
SANDI BCD n n n Bilangan biner (0, 1) adalah bahasa paling alamiah dari komputer digital. Sedangkan manusia memahami / sudah terlatih dengan bilangan desimal. Solusi : dengan memanfaatkan kode biner (binary code). Yaitu : ubah desimal ke biner – lakukan operasi aritmetik – ubah kembali hasilnya ke desimal. Karena komputer hanya mengenal biner (0, 1), maka digit desimal harus ditulis dalam kode 0, 1 (coding). Kode yang populer adalah BCD (Binary Coded Decimal). Dimana setiap digit desimal ditulis dalam biner 4 -bit.
SANDI BCD n Berikut bilangan BCD dan desimal yang diwakilinya.
SANDI BCD Dalam BCD setiap digit angka desimal dinyatakan dengan bilangan biner 4 -bit yang ekivalen. Misalnya bilangan desimal 874. 8 Atau: 7 4 (desimal) 1000 0111 0100 9 4 3 1001 0100 0011 (BCD) (desimal) (BCD) Tetapi, jika sebuah bilangan desimal direpresentasikan dengan bilangan biner yang ekivalen, ini disebut sebagai straight binary equivalent Contoh: 13710 = 100010012 (biner / straight binary equivalent) 13710 = 0001 0011 0111 (BCD)
SANDI BCD Perlu diperhatikan bahwa, BCD bukan sistem bilangan seperti sistem bilangan biner, oktal, desimal dan hexa. Tapi, ia hanya sistem desimal yang setiap digitnya diencoding ke dalam biner ekivalen. • Konversi BCD ke desimal ekivalen, dapat dilakukan sbb: Misal ubah BCD: 0110100000111001 ke dalam desimal. v Pisahkan BCD menjadi kelompok biner 4 -bit : 0110 1000 0011 1001 6 8 3 9 (BCD) (desimal) Contoh 1. Ubah BCD : 0110100000111001 ke dalam desimal yang ekivalen.
PENGUNAAN SANDI BCD n n Penerapan bilangan BCD : kalkulator, pencacah elektronik, voltmeter, jam digital. Penerapan BCD pada kumputer terbatas (komputer zaman dulu). Ini karena komputer BCD lebih lambat dan rumit dibanding komputer biner. Karena komputer tidak sekedar memproses bilangan tapi juga data alfanumerik (huruf abjad, bilangan, dan simbul lain). Karena itulah komputer modern menggunakan CPU yg memproses bilangan biner dan bukan bilangan BCD.
KODE ALFANUMERIK n Komputer disamping menangani data dalam bentuk bilangan, juga karakter lain seperti: n Bagaimanakah kita menuliskan karakter-karakter di atas di komputer ? Tentu harus disandikan (kode) ke biner.
KODE ALFANUMERIK n Salah satu kode biner untuk data alfanumerik adalah kode ASCII, yaitu kode biner 7 -bit. Berikut beberapa kode ASCII (selebihnya silakan dicari di sumber lain). n Misal, 100 0001 (A), 110 0001 (a), 0100 ($), 010 1011 (+)
KODE ALFANUMERIK n Kode ASCII. . (lanjutan. . . ) n Misalnya tuliskan nama saudara dengan kode ASCII.
- Slides: 31