Sabtu, 10 Mei 2008

binner, byte dan bit dalam digital
Kalau kita melihat pameran komputer atau pameran alat-alat digital lainnya, pasti banyak dijumpai istilah-istilah yang membuat penasaran. Apalagi bagi yang ingin tahu performa atau kemampuan alat yang akan dibeli. Yuk, kita pelajari!
Ada komputer dengan RAM (Random Access Memory) DDR/SDR berkapasitas 256 MB (Mega Byte), ada HDD (Hard Disk Drive) ukuran 40 GB (Giga Byte), juga modem dengan kecepatan 56 kbps (kilo bit per second). Masih ada lagi, kamera foto digital dengan 8 MB built in memory. Dan, kalau lihat iklan, ada handphone yang mampu menghasilkan 4.096 warna.<>
Nah, berbeda dengan Giga, Mega, dan Kilo yang sudah umum digunakan dalam banyak satuan, byte dan bit hanya dipahami oleh orang yang tahu dunia digital. Istilah bit dan byte muncul pada bilangan dasar/radix dua. Bilangan dasar 2 yang populer dengan nama bilangan biner (binary) ini digunakan dalam dunia digital karena dapat mewakili sistem digital yang hanya mengenal 2 level/kondisi (hidup atau mati).
Bilangan biner
Jika bilangan desimal (radix/dasar 10) mempunyai simbol 0,1,2,3,4,5,6,7,8,9, bilangan dasar 2 atau biner hanya mempunyai dua simbol, yaitu 0 dan 1. Dalam sistem digital, bilangan 0 digunakan untuk mewakili kondisi off/non-aktif, sedangkan bilangan 1 digunakan untuk mewakili kondisi on/aktif.
Pertanyaannya: "Dengan hanya dua simbol bilangan itu, bagaimana cara menuliskan angka-angka yang nilainya lebih besar dari satu, misalnya, dua, sembilan, lima belas, dua puluh, atau lainnya?"
Untuk bilangan desimal, nilai nol hingga sembilan ditulis dalam satu digit simbol bilangan (yaitu 0,1,2,3,4,5,6,7,8, atau 9 saja). Nilai-nilai yang lebih besar dari sembilan ditulis dengan kombinasi 2 digit simbol atau lebih. Kombinasi itu ditulis dengan memperhatikan bobot tempat.
Bobot tempat untuk bilangan desimal adalah : … 10 pangkat 5, 10 pangkat 4, 10 pangkat 3, 10 pangkat 2, 10 pangkat 1, 10 pangkat 0.… Dengan pangkat itu, urutan nilai yang dihasilkan adalah … 100.000, 10.000, 1.000, 100, 10, 1…. Kemudian, kita dapat mengisi maksimal nilai sembilan untuk tiap tempat berbobot. Dalam pelajaran di sekolah dasar, penggambaran bobot tempat ini dibuat dalam bentuk "tusuk sate" yang tersusun sejajar di papan.
Dengan bobot tempat semacam itu, satu biji "sate" yang diletakkan pada tiang atau tempat satuan (10 pangkat 0) akan bernilai satu dan disimbolkan dengan 1. Sementara satu biji "sate" yang diletakkan pada tiang atau tempat ratusan (10 pangkat 2) akan bernilai seratus dan disimbolkan dengan 100. Jadi, nilai delapan belas diperoleh dengan meletakkan satu biji "sate" di tiang puluhan dan delapan biji "sate" di tiang satuan. Nilai seratus delapan puluh diperoleh dengan meletakkan satu biji "sate" di tiang ratusan dan delapan biji "sate" di tiang puluhan. Pokoknya, nilai bilangan bergantung pada jumlah biji "sate" dan tempat peletakannya.
Cara serupa juga dilakukan untuk bilangan biner. Bobot tempat untuk bilangan biner adalah … 25, 24, 23, 22, 21, 20…. Dengan pangkatnya, urutan nilainya dapat ditulis dengan … 32, 16, 8, 4, 2, 1…. Ternyata bilangan biner tidak mengenal puluhan, ratusan, ribuan, dst, tetapi dua-an, empat-an, delapan-an, dst. Jika tiap tempat berbobot dalam bilangan desimal dapat diisi maksimal sembilan biji "sate", tiap tempat dalam bilangan biner hanya dapat diisi maksimum satu biji saja sehingga tiap tempat hanya punya dua kemungkinan, berisi satu atau tidak berisi.
Dengan format semacam itu, penyusunan di tiap tempat akan menghasilkan nilai-nilai tertentu. Peletakan satu biji pada tempat berbobot 32,8, dan 1 akan menghasilkan simbol bilangan biner 101001. Simbol itu mewakili nilai 32 + 8 + 1 = 41. Contoh lain, peletakan satu biji pada tempat berbobot 8, 4, 2, dan 1 akan menghasilkan simbol biner 1111, yang mewakili nilai 15. Cara praktis ini dapat kita gunakan untuk mengonversi simbol bilangan desimal ke biner dan atau sebaliknya.
Bit (BInary digiT) dan byte
Satuan bit (binary digit) digunakan untuk menunjukkan panjang bilangan biner. Bilangan biner 1001 mempunyai panjang 4 bit, bilangan biner 10110 mempunyai panjang 5 bit, sedangkan 10101101 mempunyai panjang 8 bit.
Byte adalah satuan yang menunjukkan deretan bilangan biner dengan panjang 8 bit. Atau gampangnya, 1 byte = 8 bit. Jadi, bilangan biner 20 byte mempunyai ukuran 20 x 8 bit = 160 bit. Sebenarnya, masih ada satu satuan lagi yang kurang populer. Satuan itu adalah nibble, yang menunjukkan deretan bilangan biner sepanjang 4 bit. Hubungan antara bit, nibble, dan byte adalah 1 byte = 2 nibble = 8 bit.
Kode-kode biner
Kode-kode biner digunakan untuk membawa informasi angka, huruf, karakter (", ;, spasi, $$, @, dan lain-lain), gambar, warna, atau apa saja. Kode-kode ini digunakan selama proses pengolahan, pengiriman, penerimaan, perekaman, dan pembacaan data. Tetapi, pada akhirnya kode ini akan diubah kembali menjadi informasi asal.
Kode biner terdiri dari banyak jenis. Salah satunya adalah jenis kode yang membawa informasi angka saja. Contoh kode ini adalah kode biner murni, seperti yang dijelaskan di atas.
Jenis lainnya adalah kode BCD (Binary Coded Decimal), yang banyak digunakan di rangkaian counter, speedometer, jam digital. Berbeda dengan kode biner murni, kode ini menempatkan 4 bit untuk tiap digit bilangan desimal. Jadi, kode BCD untuk angka 41 adalah 0100 0001. Empat bit di kiri mewakili digit 4 desimal, sedangkan empat bit di kanan mewakili digit 1 desimal. Untuk angka 15, kode BCD-nya adalah 0001 0101. Bandingkan dengan kode biner murni di atas.
Selain itu, ada kode alfanumerik yang digunakan untuk membawa informasi karakter: angka, huruf, dan tanda baca atau karakter lain. Kode alfanumerik yang populer adalah kode ASCII (American Standard Code for Information Interchange). Kode ASCII digunakan untuk komunikasi antara keyboard komputer dengan CPU (Central Processing Unit) dan komunikasi antarkomputer.
Pada awalnya, kode ASCII menyediakan 7 bit untuk mewakili 128 karakter angka, huruf, dan tanda baca lainnya. Setelah itu, ia dikembangkan lagi menjadi 8 bit sehingga dapat digunakan untuk mewakili 256 karakter. Tabel daftar karakter kode ASCII mudah dijumpai di buku-buku aplikasi komputer.
Contoh kode alfanumerik lainnya adalah EBCDIC (Extended Binary Coded Decimal Interchange Code). Kode yang digunakan dalam komputer-komputer produksi IBM ini mempunyai panjang 8 bit.
Selain itu, ada juga kode-kode yang digunakan untuk membawa informasi gambar, warna, atau untuk keperluan-keperluan lain. Yang saat ini banyak dikembangkan adalah kode-kode pendeteksi dan perbaikan kesalahan.
Kode pendeteksi dan perbaikan kesalahan dipakai untuk keperluan pengiriman atau perekaman data digital. Dengan mengaplikasikan kode ini, kesalahan pembacaan atau penerimaan data digital akibat gangguan selama proses pengiriman atau perekaman dapat dikurangi sehingga semaksimal mungkin dapat diperoleh data aslinya. Contoh kode pendeteksi dan perbaikan kesalahan adalah kode CRC, Reed Solomon (yang banyak diterapkan untuk komunikasi wireless), Turbo code (yang mempunyai kecepatan tinggi).
Jumlah kombinasi vs panjang bit
Semakin panjang bit dari kode akan menambah jumlah kombinasi yang dihasilkan oleh kode tersebut. Jumlah kombinasi yang dihasilkan oleh kode dengan panjang n bit adalah 2 pangkat n. Dengan demikian, kode biner dengan panjang 1 bit hanya akan menghasilkan dua kombinasi, yaitu 0 dan 1. Kode biner 2 bit menghasilkan 4 kombinasi, yaitu 00, 01, 10, dan 11, sedangkan kode biner 3 bit menghasilkan 8 kombinasi dengan urutan 000, 001, 010, 011, 100, 101, 110, 111.
Jadi, untuk mewakili seluruh karakter angka (0-9) dan abjad (a-z, A-Z) yang berjumlah 62 dibutuhkan kode dengan panjang 6 bit (yang menghasilkan 64 kombinasi). Kode 6 bit ini menyisakan 2 kombinasi yang tidak terpakai. Kode dengan panjang 5 bit tidak dapat dipakai karena hanya menghasilkan 32 kombinasi.
Untuk kode ASCII yang juga memasukkan banyak karakter tanda baca lain, panjang 6 bit itu jelas tidak cukup. Karena itu, ia menyediakan panjang 7 bit yang dapat menghasilkan 128 kombinasi kode. Pada pengiriman data serial antarkomputer, kode ASCII 7 bit ini ditambah 1 bit paritas, yang berfungsi sebagai deteksi kesalahan. Karena itu, pada komunikasi komputer, umumnya dikirim 8 bit = 1 byte data. Panjang 1 byte ini juga populer untuk kode-kode lainnya.
Kilo dan Mega dalam bilangan biner
Dalam bilangan biner, 1 kb (kilobit) tidak identik dengan 1.000 bit, melainkan 1.024 bit yang dihasilkan dari 2 pangkat 10. Angka 2 kb identik dengan 2.048 bit yang dihasilkan dari 2 pangkat 11, dan angka 4 kb identik dengan 4.096 bit yang dihasilkan dari 2 pangkat 12.
Jadi, handphone yang "katanya" mampu menghasilkan 4.096 warna kemungkinan besar mempunyai kode dengan panjang 12 bit untuk mendapatkan kombinasi warnanya. Sementara modem dengan kecepatan 56 kbps dapat mengirim data digital dengan kecepatan 56 x 1.024 = 57.344 bit tiap detiknya.
Untuk memory (RAM, ROM, CD, disket), satuan dasar yang biasa digunakan adalah byte karena lebar data yang biasa digunakan adalah 1 byte (8 bit). Jika penyimpanan data digambarkan dalam bentuk baris dan kolom, lebar kolom menunjukkan lebar data (biasanya kelipatan 8 bit), sedangkan jumlah baris menunjukkan banyaknya data.
Jumlah baris tergantung pada panjang bit kode penunjuk baris. Jika panjang kode penunjuk baris adalah 16 bit, ia dapat menyimpan 2 pangkat 16 = 65.536 baris data. Jadi, jika dalam bentuk baris dan kolom sebuah memori mempunyai 8 kolom dan 65.536 baris, ia disebut memiliki kapasitas sebesar 65.536 byte atau 64 kbyte. Nah, bisa dibayangkan, berapa banyak baris dan kolom yang disediakan untuk memori dengan kapasitas beberapa puluh Mega atau Giga byte.
PRIHADI MURDIYAT Mahasiswa S2 Telekomunikasi Multimedia ITS

Tidak ada komentar: