Operasi Operasi Aritmatika pada Bilangan Biner

Fakultas Teknologi Informatika UNPRI
by : Chandra Wijaya

Konten : 
  • Konversi ke Bilangan Biner
  • Penjumlahan dua Bilangan Biner
  • Pengurangan dua Bilangan Biner
  • Perkalian dua Bilangan Biner
  • Pembagian dua Bilangan Biner
Bilangan yang diambil : 3021210 dan 3021310


Konversi Bilangan Desimal ke Biner

Untuk mengubah bilangan Desimal  ke Bilangan Biner , bagi bilangan tersebut dengan basis Biner yaitu 2, berulang sampai didapatkan hasil pembagian sama dengan nol. Setelah itu, urutkan sisa pembagian yang didapat dari yang paling akhir ke awal. Jika, terdapat angka koma, maka pengurutan untuk angka setelah koma adalah dari awal ke akhir.

30212 bagi 2 =   15106        sisa 0 (akhir)
15106 bagi 2 =   7553          sisa 0
7553   bagi 2 =   3776          sisa 1
3776   bagi 2 =   1888          sisa 0
1888   bagi 2 =    944           sisa 0
944     bagi 2 =    472           sisa 0
472     bagi 2 =    236           sisa 0
236     bagi 2 =    118           sisa 0
118     bagi 2 =      59           sisa 0
59       bagi 2 =      29           sisa 1
29       bagi 2 =      14           sisa 1
14       bagi 2 =        7           sisa 0
7         bagi 2 =        3           sisa 1
3         bagi 2 =        1           sisa 1
1         bagi 2 =       0 (stop)  sisa 1 (awal)

maka, 30212 = 111 011 000 000 100

untuk 30213  hanya perlu ditambah angka 1 atau 20
maka, 30213 = 111 011 000 000 101

Penjumlahan Angka Biner

Aturan dasar penjumlahan Bilangan Biner:

0 + 0 = 0 carry 0
0 + 1 = 1 carry 0
1 + 0 = 1 carry 0
1 + 1 = 0 carry 1 
(dikarenakan 1+1=2, angka 210 pada biner sama dengan 102 maka simpan bil. paling kiri yaitu 1)
   Dalam melakukan penjumlahan bilangan Biner, kita melibatkan sistem Carry In. Carry In adalah nilai Carry Out yang akan dijumlahkan pada penjumlahan bilangan berikutnya. Pola penjumlahannya sama dengan pola penjumlahan bilangan desimal, hanya saja bedanya disini kita hanya punya nilai angka 0 dan 1.

Jadi, misalnya 1 + 1 = 10 (angka biner untuk nilai 2) maka yang dituliskan adalah 0 nya sedangkan 1 nya adalah carry out. Begitu juga jika menjumlahkan 1 + 1 + 1 = 11 (angka biner untuk nilai 3), maka yang kita tuliskan 1 yang kanan, sedangkan 1 yang kiri akan menjadi carry out.

Apabila dalam penjumlahan terdapat bawaan (carry), maka dijumlah dengan tingkatan diatasnya , perhatikan contoh berikut:








Soal
30212 + 30213 = ?
                                      11    1                         1
30212                       111 011 000 000 100
30213                       111 011 000 000 101
---------(+)                 -----------------------------(+)
60425                     1110 110 000 001 001

Pengurangan Angka Biner

Pengurangan Biner pada prinsipnya hampir sama dengan penjumlahan biner, jika pengurang lebih besar dari bilangan yang dikurangi maka perlu meminjam (borrow) pada bilangan disebelahnya. Aturan dasar nya :

0 – 0 = 0  borrow 0
0 – 1 = 1  borrow 1
1 – 0 = 1  borrow 0 
1 – 1 = 0  borrow 0 (borrow 0 maksudnya tidak perlu meminjam)

Jika pada penjumlahan melibatkan Carry In, maka pada pengurangan biner kita akan melibatkan Borrow In 
Soal
30213 – 30212 = ?

30213                        111 011 000 000 101
30212                        111 011 000 000 100
---------( – )                 ----------------------------( – )
        1                        000 000 000 000 001

Bagaimana jika, 30212 – 30213 = ?

30212                        111 011 000 000 100
30213                        111 011 000 000 101
---------( – )                 ----------------------------( – )
        -1                                                      ?

Kita dapat menggunakan cara 1s complement untuk menyelesaikan soal tsb.
1s complement adalah suatu cara untuk membalikkan bilangan negatif menjadi positif (karena sebenarnya dalam bahasa komputer tidak dikenali pengurangan) sehingga pengurangan ini menjadi penjumlahan. 1s complement dari suatu bilangan dilakukan dengan mengubah 0 menjadi 1 dan 1 menjadi 0, Jadi :

111011000000100 – 111011000000101 = 111011000000100 + (–111011000000101) 
 untuk,
–111011000000101 1s complementnya = 000100111111010,

30212                        111 011 000 000 100
30213                        000 100 111 111 010
---------( – )                 ----------------------------( + )
        -1                       111 111 111 111 110

Perkalian Angka Biner

Dilakukan sama dengan cara perkalian pada bilangan desimal. Aturan dasarnya :

0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1
 
Selain itu, posisi angka bergeser 1 ke kanan setiap dikalikan 1 bit pengali. Setelah proses perkalian masing-masing bit pengali selesai, lakukan penjumlahan masing-masing kolom bit hasil.

Soal
30212 x 30213 = ?

        30212
        30213
---------------(x)
912795156

                                        111 011 000 000 100  (yang dikalikan)
                                        111 011 000 000 101 (pengali)
                                      ------------------------------(x)
........................................111 011 000 000 100
....................................0 000 000 000 000 00
..................................11 101 100 000 010 0   (bergeser satu bit)
................................000 000 000 000 000
.............................0 000 000 000 000 00
...........................00 000 000 000 000 0
.........................000 000 000 000 000
......................0 000 000 000 000 00
....................00 000 000 000 000 0
................ ..111 011 000 000 100
............... 1 110 110 000 001 00
.............00 000 000 000 000 0                        (setelah selesai operasi pengali,
.......... 111 011 000 000 100                            jumlahkan dengan cara sama
........1 110 110 000 001 00                             seperti penjumlahan biner/
......11 101 100 000 010 0                              sistem carry )
---------------------------------------------------------(+)
 110 110 011 010 000 010 011 000 010 100 (hasil kali)

Pembagian Angka Biner

Pembagian Biner pada dasarnya sama dengan pembagian desimal, bedanya nilai yang dihasilkan hanya 0 dan 1.
Bit-bit yang dibagi diambil bit per bit dari sebelah kiri. Apabila nilainya lebih dari bit pembagi, maka bagilah bit-bit tersebut. Jika setelah bergeser 1 bit nilainya masih dibawah bit pembagi, maka hasil bagi sama dengan 0.

Soal
 30212 / 30213 = ?

                     =0.999966....
            ___________
30213 / 30212
                                                                                                    0,100..... 
                                                                    __________________
                                 111 011 000 000 101 / 111 011 000 000 100
                                                                  /  000 000 000 000 000
                                                                    -----------------------------(-)
                                                                     111 011 000 001 110   (hasil biner, ditambah 10
                                                                     111 011 000 000 101     desimal)
                                                                    -----------------------------(-)
                                                                     000 000 000 001 001
                                                                     000 000 000 000 000
                                                                    -----------------------------(-)
                                                                     000 000 000 001 001
                                                                     000 000 000 000 000
                                                                    -----------------------------(-)
                                                                                               1 001.... (tidak dilanjutkan,                                                                                                                           karena hasilnya                                                                                                                           sangat kecil)

Sekian, sharing dan postingan tentang Angka Biner. Jika terdapat kesalahan, mohon dibantu dan diberitahukan di kolom Comment ya guys..
Sangat diapresiasi jika teman-teman memakai bahasa yang sopan!

Komentar