Representasi Data Sistem Mikroprosesor

Untuk lebih mengetahui bagaimana representasi data berlangsung, maka kita harus bersentuhan langsung dengan sistem mikroprosesor pada level mesin, kita perlu memeriksa isi memori dan register. Sistem mikroprosesor hanya mengenal sistem bilangan biner yang terdiri angka 0 dan angka 1.

Setiap digit dalam angka biner disebut sebagai bit (binary digit). Delapan buah bit membentuk byte, yang merupakan unit terkecil penyimpanan pada komputer saat ini. Tipe yang lebih besar adalah word yang panjangnya 16 bit (2 byte). Integer biasanya  disimpan dalam memori sebagai byte, word, atau double word. Jika kita ingin mengkonversi bilangan desimal menjadi heksadesimal, lakukan pembagian bilangan yang akan dikonversi dengan 16 desimal secara terus menerus sampai hasil bagi sama dengan nol. Hasil konversinya adalah deretan sisa hasil bagi mulai dari yang pertama diperoleh (Least Significant Digit) sampai dengan sisa yang terakhir diperoleh (Most Significant Digit).

Contoh. Bilangan desimal 15268 dikonversi menjadi heksadesimal sebagai berikut.

  • Langkah 1. 15268 : 16 = 954 sisa 4
  • Langkah 2. 954 : 16 = 59 sisa 10 = A
  • Langkah 3. 59 : 16 = 3 sisa 11 = B
  • Langkah 4. 3 : 16 = 0 sisa 3

Jadi hasil konversi desimal 15268 ke heksadesimal 3BA4H (H menunjukkan basis bilangan heksadesimal).

Perbedaan bilangan bertanda (signed bit) dan bilangan tidak bertanda (unsigned bit) terletak pada bit paling kiri (MSB). Byte tidak bertanda menggunakan 8 bit seluruhnya untuk nilai angkanya, misal 11111111 = 255 dan 01111111 = 127. Sedangkan byte bertanda hanya menggunakan bit paling kiri sebagai tanda dan sisanya menunjukkan nilainya, misal 11111111 = -128 dan 01111111 = 127

Format data komputer yang digunakan pada mikroprosesor umumnya berformat ASCII (American Standard Code for Information Interchange), BCD (Binary Coded Decimal), signed & unsigned integer, dan bilangan floating point (bilangan real). Format data ASCII yang digunakan adalah 7 bit dengan bit ke-8 sebagai MSB (Most Significant Bit) yang digunakan untuk memuat paritas dalam beberapa sistem. Dalam sebuah printer, MSB dari data ASCII bernilai 0 pada pencetakan alfanumerik, dan bernilai 1 pada pencetakan grafik. Dalam komputer, kumpulan karakter extended ASCII menggunakan kode 80H – FFH. Karakter-karakter ini menyimpan huruf-huruf asing dan tanda baca, karakter Yunani, karakter matematika, karakter box – drawing, dan karakter khusus lainnya.

Selain data ASCII, ada pula format data BCD (Binary Coded Decimal) yang disimpan dalam bentuk packed atau unpacked. Data packed disimpan dalam bentuk 2 digit per byte, sedangkan data unpacked disimpan 1 digit per byte. Mengapa diciptakan dua jenis ini? Tentu saja memiliki fungsi khsusus, yakni unpacked BCD digunakan untuk keypad atau keyboard dimana memerlukan satu byte tiap karakternya. Sedangkan packed BCD untuk beberapa instruksi penjumlahan dan pengurangan BCD dalam kumpulan instruksi mikroprosesor.

Contoh. Representasi data BCD dari bilangan 20 desimal.

  • Packed BCD: 0010 0000
  • Unpacked BCD: 00000010 00000000

Untuk aritmetika pada bilangan kompleks, format data BCD jarang digunakan karena tidak ada metode yang sederhana dan efisien sehingga hanya sebatas penjumlahan dan pengurangan saja.

Prolog:
Apa yang kamu pelajari segera kerjakan. Sedang apa yang kamu kerjakan segera pelajari. Whats you learn is what you do. Then, what you do is what you learn.


Who's Online

We have 60 guests and no members online