Skip to main content

Perhitungan Bilangan Biner

Sering sekali saya baru menyadari definisi suatu kata setelah cukup lama mengenal kata tersebut. Salah satunya adalah komputer. Bahasa serapan dari computer yang kata dasarnya adalah compute, yang artinya menghitung. Namun sejak saya mengingat kata komputer di otak saya, komputer adalah sebuah perangkat besar yang terdiri dari CPU, monitor, keyboard, dan mouse. Film Hidden Figures-lah yang menyadarkan saya bahwa fungsi utama komputer pada awalnya adalah alat untuk menghitung. Bahkan jaman sebelum mesin komputer ada, komputer adalah sebutan untuk orang yang pekerjaannya menghitung.

Komputer menghitung bilangan diskrit. Ketika sebuah komputer dikatakan prosesor 32-bit, artinya ukuran atau lebar data yang bisa dihitung; kata lain yang mungkin lebih tepat adalah diolah dan diproses, adalah 32-bit bilangan biner. Saat ini, prosesor yang umum dipakai adalah 64-bit.

1. Perhitungan bilangan biner

a. Penjumlahan

Dalam penjumlahan bilangan biner, ada dua terminologi yang harus kita ketahui: sum (jumlah) dan carry (simpanan).
Mari kita lihat contoh sederhana berikut di mana kita menjumlahkan bilangan desimal 5 dan 9, untuk mencoba mengambil pengertian sum dan carry.

Ketika penjumlahan di kolom 0 hasilnya melebihi 10, maka pada kolom 1, kita menuliskan 1 yang merepresentasikan nilai 10, dan sisa satuan dari hasil penjumlahan adalah 4. Maka hasil dari penjumlahan adalah 14.


Dari contoh sederhana ini, kita bisa mengartikan sum (jumlah) adalah 4, dan carry (simpanan) adalah 1. Bisa kita artikan carry adalah nilai atau kolom tambahan yang harus kita sediakan ketika hasil penjumlahan lebih dari 9. Ketika bilangan yang dijumlahkan adalah 1 dan 8, tidak ada carry dihasilkan, hanya ada sum yaitu 9.


Sekarang mari kita telaah bagaimana penjumlahan bilangan biner dengan modal terminologi sum dan carry.




0b + 0b = 0b

0b + 1b = 1b + 0b = 1b (sifat komutatif)

1b + 1b = 0b dengan carry = 1b


Mengapa hasil 1b + 1b ditandai dengan merah? Ketika satu sistem hanya terdiri dari 1 bilangan biner (atau memiliki representasi dengan 1 bit data), hasil penjumlah dari sistem juga direpresentasikan dengan 1 bilangan biner. Yang artinya terjadi overflow; dengan kata lain, hasilnya melebihi dari representasi data yang dapat diproses. Jika sistem memiliki penyimpan carry, maka hal tersebut bukan masalah. Tapi jika nilaicarry tidak disimpan, maka akan representasi hasil dapat dikatakan salah atau tidak valid.

Kita ambil contoh representasi data dengan lebar 4-bit.

  • 0000b + 0001b = 0001b ( 0 + 1 = 1 )
  • 0001b + 0001b = 0010b ( 1 + 1 = 2 )
  • 0010b + 0001b = 0011b ( 2 + 1 = 3 )
  • ....
  • 1111b + 0001b = 0000b + 10000b carry (15 + 1 = 0 + 16 (carry) )


b. Pengurangan

Dalam sistem digital, pengurangan ditransformasikan menjadi penjumlahan dengan mengubah tanda operan menjadi nilai negatif negatif:

A - B = A +(-B)

Bagaimana cara mengubah bilangan biner menjadi negatif? Two's complement adalah salah satu metode yang dapat kita gunakan.

Contoh perhitungan: 9 - 3.

  • Angka desimal 9 dan 3 memerlukan representasi 4-bit. 9 adalah 1001b, dan 3 adalah 0011b.
  • Untuk mengubah 3 menjadi -3 dalam bilangan biner dengan cara two's complement, konversi setiap bit 1 menjadi 0 dan sebaliknya, kemudian tambahkan dengan 1b. 0011b dikonversi menjadi 1100b, lalu ditambahkan 1b menjadi 1101b.
  • Jumlahkan 9 dengan -3 : 1001b + 1101b = 0110b dengan carry 10000b. Dengan mengabaikan nilai carry, maka hasil sum adalah 0110b yang adalah 6.

2. Hardware fisik penghitungan bilangan biner

Bagaimana sebuah chip digital dapat melakukan penjumlahan dan pengurangan? Sebagai pengantar untuk artikel selanjutnya: realisasi chip digital jika kita melihat detail dengan mikroskop, hierarkinya adala sebagai berikut:

  1. Transistor CMOS : terendah dari realisasi chip digital adalah transistor. 
  2. Gerbang logika (logic gate) : beberapa transistor CMOS dirangkai menjadi sebuah gerbang logika. Gerbang logika adalah implementasi fisik dari persamaan boolean. 
  3. Rangkaian gerbang logika : gabungan beberapa gerbang logika dapat diimplementasikan untuk memabangun sebuah rangkaian dengan fungsi tertentu, misalnya untuk melakukan penjumlahan. Dengan demikian, pengurangan memerlukan rangkaian penjumlahan dan juga converter untuk mengubah salah satu operan menjadi negatif.

Isi tulisan kali ini cukup padat dengan sebutan-sebutan baru. Satu demi satu akan kita bahas pada artikel selanjutnya. Pada artikel selanjutnya akan diulas mengenai transistor CMOS - Gerbang logika - dan Rangkaian gerbang logika untuk mengimplementasikan penjumlahan dan pengurangan.

Selamat Tahun Baru 2018!

Comments

  1. "Carry" lebih baik diterjemahkan jadi "simpanan", dibandingkan "pembawa".

    Karena di bahasa Indonesia 9+5 itu jumlahnya 4, disimpan 1.

    ReplyDelete
  2. 0b + 1b = 1b + 0b = 1b (sifat asosiatif)

    Ini sifat komutatif, 0+1 = 1+0, asosiatif itu yang (0+1) + 1 = 0 + (1+1)

    ReplyDelete
    Replies
    1. Sudah dibetulkan. Terima kasih Iwan sudah membaca dengan teliti :)

      Delete

Post a Comment

Popular posts from this blog

Realisasi Bilangan Biner Menjadi Sinyal Digital

Setelah mengulas bagaimana kita mentransformasikan bilangan desimal menjadi bilangan biner , pada tulisan ini akan diulas bagaimana kita merealisasikan bilang biner menjadi sinyal digital. Karena sinyal digital ini adalah nilai nyata yang digunakan di dalam perangkat elektronik yang kita gunakan. Bilangan biner hanya memiliki dua nilai, 0 dan 1. Pada dunia nyata, nilai 0 dan 1 direalisasikan pada umumnya dengan nilai tegangan 0 dan 3 Volt. Mari kita ambil contoh sederhana: bagaimana merealisasikan nilai pengukuran antara 0 - 15 Volt dengan bilangan biner? Bilangan desimal 0 - 15 memerlukan representasi 4 bit bilangan biner. Tabel di bawah ini menguraikan setiap nilai analog 0 - 15 ke dalam 4 bit bilangan biner. Realisasi sinyal digital sebenarnya juga adalah sinyal analog yang nilai amplitudanya hanya 2, yaitu 0 dan 3 Volt. Pada gambar sinyal di bawah ini, nilai 0 Volt ditunjukkan dengan garis hitam, dan nilai 3 Volt ditunjukkan dengan garis merah. Dengan demikian, nilai 0 ...

Mengapa Digital, bukan Analog?

Sebelum mengulas bersama tentang sistem digital, pengertian mengenai sistem analog dan digital penting untuk dimengerti. Berhubung saya bukan ilmuwan ilmu pasti, dan tidak mahir dengan formula Matematika, penjelasan ini lebih mengacu pada contoh dan aplikasi. Sejak SMP, kita belajar tentang gelombang. Saya akan mengambil contoh: gelombang suara. Gelombang suara adalah contoh sumber sinyal analog. Kontinu. Tidak terputus-putus.   Gambar di bawah ini adalah ilustrasi sinyal suara yang direkam atau ditangkap oleh osiloskop. Source: pixabay ( and edited ) Kalau kita tambahkan sumbu y (vertikal) sebagai amplituda atau nilai sinyal suara (biasanya dalam satuan miliVolt) dan sumbu x (horizontal) sebagai waktu, pengertian kontinu adalah: setiap titik waktu, punya nilai amplituda. Titik waktu ini kalau kita perbesar atau zoom-out bisa tidak terbatas, bukan lagi 1 detik, tapi 0.0000000000001 detik, dan seterusnya! Bayangkan betapa repot dan besarnya data jika kita mau menyimp...