STMIK STIKOM BALIKPAPAN
1
MODUL 2 SISTEM PENGKODEAN BILANGAN A. TEMA DAN TUJUAN KEGIATAN PEMBELAJARAN 1. Tema
:
2. Fokus Pembahasan Materi Pokok 3. Tujuan Kegiatan Pembelajaran
: 1. Definisi Pengkodean 2. Sistem Pengkodean :
Sistem Pengkodean Bilangan
1. Mahasiswa dapat memahami konsep sistem pengkodean bilangan 2. Mahasiswa mampu membedakan sistem kode: BCD, Excess-3, Gray Code, dan ASCII 3. Mahasiswa dapat mengkonfersi dari sistem bilangan ke dalam sistem pengkodean bilangan.
B.URAIAN MATERI POKOK 1. DEFINISI PENGKODEAN Pengkodean
kadang
disebut
dengan
penyandian,
terdiri
kode
yang
memasangkan serangkaian karakter berurutan dari suatu kumpulan dengan sesuatu yang lain, untuk memfasilitasi penyimpanan teks pada komputer dan transmisi teks melalui jaringan telekomunikasi. Seperti telah diterangkan dalam uraian mengenai sistem bilangan oktal dan heksadesimal di bagian depan, untuk menyatakan 1 angka desimal diperlukan 4 angka biner. Tetapi dengan 4 bit sebenarnya dapat dinyatakan 16 macam simbol yang berbeda sehingga kesepuluh simbol dalam bilangan desimal dapat dinyatakan dengan beberapa himpunan (set) kode yang berbeda. Perlu dibedakan dengan tegas antara pengkodean dan konversi. Kalau suatu bilangan dikonversikan ke bilangan lain maka kedua bilangan itu mempunyai harga/nilai. Namun tidak demikian dengan pengkodean. Sebagai contoh, kalau angka 8 desimal dikonversikan ke biner, maka satusatunya pilihan adalah 1000. Tetapi kalau angka 8 ini dikodekan ke biner, ada
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
2
bermacam-macam kode yang dapat dibentuk, walaupun hanya terdiri atas 4 bit. Pembahasan mengenai macam-macam kode, akan dijelaskan pada subbab berikutnya.
2. SISTEM PENGKODEAN 2.1. KODE BCD Sistem Desimal Disandi Secara Biner atau BCD (singkatan dari Binary Coded Decimal) merupakan kode yang paling sederhana karena kode itu sendiri merupakan konversi dari desimal ke biner. Kode BCD merepresentasikan masing-masing 10 digit desimal (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) menjadi kode 4-digit biner. Kode ini sangat berguna untuk outputting bagi display yang selalu menggunakan numerik atau angka (0 sampai 9), demikian juga angka seperti yang ada pada jam digital atau voltmeter digital. Bilangan BCD sangat berguna jika informasi data desimal hendak disalurkan ke dalam atau ke luar dari sebuah sistem digital. Sebagai contoh, rangkaian dalam kalkulator saku dapat mengolah bilangan BCD. Dengan memasukkan bilangan desimal melalui papan tombol kalkulator, akan diperoleh jawaban berbentuk bilangan desimal pada penampang-penampil LED dan LCD. Contoh lain aplikasi sistem BCD adalah pencacah elektronik, multimeter digital, dan jam digital. Semua rangkaian tersebut bekerja pada sistem BCD. Bilangan BCD memiliki peran terbatas dalam komputer. Beberapa jenis komputer 8-bit menggunakan BCD, tetapi komputer jenis ini lambat dan lebih rumit dibandingkan dengan komputer biner. Komputer pada dasarnya tidak sekedar memproses bilangan, tetapi harus dapat bekerja dangan nama-nama, data-data non numerik, grafis dan lain-lain. Karenanya komputer modern (misalnya seperti komputer Personal Computer = PC) menggunakan mikroprosesor yang memproses bilangan biner dan bukan BCD. Proses yang dilakukan mirip halnya seperti mengkonfersi bilangan desimal menjadi bilangan biner. Setiap bit dalam BCD diberi bobot menurut letaknya dalam
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
3
urutan kode, yaitu 1, 2, 4, dan 8, berurut dari bit yang paling kanan. Hanya saja dalam kode BCD tidak ada nilai lebih dari 9. Untuk mengetahui gambaran lebih jelas mengenai BCD, dapat dilihat pada Tabel 2.1. Contoh: Tentukan kode BCD dari bilangan desimal berikut : 1. 9 2. 6 3. 10 4. 163 Jawab : 1. Angka 9 merupakan penjumlahan 8 dengan 1, sehingga kode BCD-nya adalah: 1001 2. Angka 6 merupakan penjumlahan 4 dengan 2, kodenya adalah: 0110. 3. Bagaimana untuk angka 10? Apakah akan berkode 1010? Tentu saja jawabannya tidak. Perlu diingat bahwa kode BCD tidak melebihi nilai 9. Angka 10, merupakan gabungan antara nilai 1 dan 0, sehingga kode BCDnya adalah 0001 0000. Diperlukan 8 digit untuk mengkodekan angka 10. 4. Untuk menyatakan bilangan desimal ratusan diperlukan 3 kode BCD, jadi 12 bit. Bilangan 163 dikodekan dengan 0001 0110 0011.
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
4
2.2. KODE EXCESS-3 Kode Excess-3 digunakan dalam memanipulasi bilangan-bilangan yang dipergunakan dalam operasi peralatan digital. Sandi ini diterapkan pada rangkaian yang dipakai dalam operasi perhitungan seperti kalkulator ataupun komputer. Kode Excess-3 (XS3) berhubungan dengan kode BCD, hal ini disebabkan oleh sifat biner-terkode-desimalnya. Dengan kata lain, masing-masing kelompok 4-bit dalam kode XS3 sama dengan suatu digit desimal tertentu. Kode XS3 adalah selalu tiga angka lebih besar dari pada angka BCD. Kode Excess-3 (XS3) diperoleh dengan menambahkan 3 (=0011) kepada kode BCD standar, dan inilah alasan pemberian namanya. Nilai tertinggi untuk BCD Excess-3 adalah (9+3) = 1100 Excess-3
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
5
Contoh: Tentukan kode Excess-3 (XS3) dari bilangan desimal berikut : 1. 9 2. 6 3. 10 4. 163 Jawab : 1. BCD standar untuk angka 9 = 1001, maka : 1001 0011 + 1100 2. BCD standar untuk angka 6 = 0110, maka : 0110 0011 + 1001 3. BCD standar untuk angka 10 = 0001 0000, maka kode Excess-3 (XS3) = 0100 0011 4. BCD standar untuk angka 163 = 0001 0110 0011, maka kode Excess-3 (XS3) 163 = 0100 1001 0110
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
6
2.3. GRAY CODE Gray code ini diperkenalkan oleh Frank Gray pada tahun 1947. Gray Code atau kode kelabu merupakan salah satu kode biner yang tak berbobot selain dari kode Excess 3. Gray Code bukan merupakan kode jenis BCD. Masing-masing kenaikan hitungan (penambahan) pada Gray Code dilakukan hanya dengan pengubahan satu bit saja. Dalam biner 4 bit, semua berubah keadaan (dari 0111 ke 1000). Dalam garis yang sama, Gray Code hanya mempunyai perubahan keadaan pada bit sebelah kiri (0100 ke 1100), terlihat pada Gambar 2.1.
Gambar 2.1 Jenis kode ini digunakan dalam pengkodean posisi sudut dari peralatan yang bergerak secara berputar, seperti motor stepper, mesin bubut otomatis serta gerinda. Kode gray biasanya juga dipakai pada mechanical encoder, misalnya pada telegraf. Untuk bilangan gray code tidak memiliki aturan cara konversi, yang perlu diingat adalah kelanjutan dari bilangan yang satu ke bilangan berikutnya hanya boleh berubah 1 angka. Dalam Gray Code, setengah bagian atas, yaitu untuk kode desimal 5-9, merupakan bayangan cermin dari pada setengah bagian bawah, yaitu kode untuk desimal 0-4, kecuali untuk bit 3 (bit ke 4 dari kanan). Sifat ini disebut reflective. Di samping itu, seperti dapat dilihat pada Tabel 2.1, Gray Code juga mempunyai sifat
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
7
bahwa kode untuk desimal yang berturutan berbeda hanya pada 1 bit. Sifat ini sangat penting dalam pengubahan sinyal-sinyal mekanis atau listrik ke bentuk digital. Sebagai contoh, kalau tegangan yang dikenakan pada suatu voltmeter digital berubah dari 3 volt ke 4 volt (dalam biner dari 0011 ke 0100), maka ada kemungkinan bit 2 (bit ke 3 dari kanan) akan berubah lebih dulu dari bit-bit yang lain sehingga akan memberikan penunjukan sementara 0111 (= 7) yang jelas salah. Dengan penggunaan kode Gray kesalahan seperti ini tidak akan terjadi.
Tabel 2.1. Perbandingan Sistem Bilangan dengan Pengkodean BCD, Excess-3, dan Gray Code Desimal
Biner
BCD
Excess-3
Gray Code
0
0000
0000 0000
0011 0011
0000
1
0001
0000 0001
0011 0100
0001
2
0010
0000 0010
0011 0101
0011
3
0011
0000 0011
0011 0110
0010
4
0100
0000 0100
0011 0111
0110
5
0101
0000 0101
0011 1000
0111
6
0110
0000 0110
0011 1001
0101
7
0111
0000 0111
0011 1010
0100
8
1000
0000 1000
0011 1011
1100
9
1001
0000 1001
0011 1100
1101
10
1010
0001 0000
0100 0011
1111
11
1011
0001 0001
0100 0100
1110
12
1100
0001 0010
0100 0101
1010
13
1101
0001 0011
0100 0110
1011
14
1110
0001 0100
0100 0111
1001
15
1111
0001 0101
0100 1000
1000
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
8
2.4. ASCII Dalam penggunaan komputer secara umum, walaupun kode yang diolah dalam komputer itu sendiri adalah angka-angka biner, tetapi selain angka-angka desimal juga diproses huruf-huruf dan tanda-tanda baca/tanda khusus lainnya. Untuk memroses data seperti ini tentunya diperlukan sistem kode yang lebih luas dari pada sistem-sistem kode yang telah diterangkan sebelumnya. Kode yang berlaku umum ini disebut kode "Alphanumeric" yang sering juga disingkat dengan nama "Alphameric". Dua jenis kode yang paling umum dipakai dalam dunia komputer sekarang ini adalah: ASCII (baca: eskii, singkatan dari: American Standard Code for Information Interchange) dan EBCDIC (baca: ebsidik, singkatan dari: Extended Binary Coded Decimal Interchange Code). ASCII terdiri atas 7 bit yang dapat mengkodekan semua angka desimal, huruf abjad, baik huruf besar maupun kecil, tanda-tanda khusus dan tanda baca, dan beberapa kode kendali/kontrol yang umum dipakai dalam komunikasi data. Dalam praktek sekarang, walaupun aslinya 7 bit, kebanyakan ASCII menggunakan 8 bit dengan bit tambahan dipakai sebagai bit parity, kadang kadang untuk membentuk aksara yang bukan aksara latin. Sebagai informasi sistem kode EBCDIC terdiri atas 8 bit, dan digunakan dalam komputer-komputer IBM tipe 360 dan 370 yang sangat terkenal itu. Pada modul ini, yang lebih diperdalam hanyalah mengenai ASCII, sedangkan sistem kode EBCDIC hanya sekedar informasi. Dalam ASCII, karakter dengan kode di bawah 20 heksadesimal digunakan sebagai kode kendali komunikasi, angka dikodekan dengan 30 - 39, huruf kapital dikodekan 41 - 5A, huruf kecil 61 - 7A dan kode yang lainnya untuk tanda-tanda baca, seperti tampak pada Tabel 2.2.
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
9
Tabel 2.2. Pengkodean ASCII
Sumber http://www.cdrummond.qc.ca/cegep/informat/Professeurs/Alain/images/ASCII1.GIF
Firmansyah, S.Kom.
Sistem Digital
STMIK STIKOM BALIKPAPAN
10
LATIHAN : 1. Tentukan kode BCD, Excess-3, Gray, serta ASCII dengan tanpa melihat tabel untuk bilangan dibawah ini! a. 12(10) b. 1001(2) c. 3A(16) 2. Tentukan bilangan desimal untuk kode berikut ini! a. 00100010 (BCD) b. 10100011 (Excess-3) c. 0110 (Gray) d. SD 3. Bedakan antara kode BCD, Excess-3, Gray, serta ASCII !!
Firmansyah, S.Kom.
Sistem Digital