Senin, 11 Juni 2012

Bilangan Biner


Penambahan bilangan biner, konsepnya bila bilangan binernya sama-sama positif, maka dijumlahkan sebagaimana bilangan desimal.
Contoh:
0101

(5)
0101
+
(5)
1010

(10)

Namun bila salah satu bernilai negatif, maka sebaiknya bilangan biner ini dikonversi ke format 2’s complement.
Contoh:
a.
1001

(-7)

d.
1100

(-4)

0101
+
(5)


1111
+
(-1)

1110

(-2)


11011

(-5)









b.
1100

(-4)

e.
0100

5

0100
+
(4)


0100
+
4

10000

(0)


1001

9






=overflow
c.
0011

(3)

f.
1001

-7

0100
+
(4)


1010
+
-6

0111

(7)


10011

-13






=overflow

Pada sembarang penambahan, hasil operasi dapat lebih besar dari yang dapat ditampung ukuran word yang sedang digunakan. Kondisi ini disebut overflow. Ketika terjadi overflow, ALU harus memberikan sinyal tentang keadaan ini sehingga komputer tidak memanfaatkan data ini.
Untuk mendeteksi overflow, aturannya adalah sbb:
Jika 2 bilangan ditambahkan dan keduanya positif atau keduanya negatif, maka overflow terjadi jika dan hanya jika hasilnya mempunyai tanda yang berlawanan.

Pengurangan
Untuk mengurangkan satu bilangan (subtrahend) dari bilangan lain (minvend), ambil komplemen dua dari subtrahend dan tambahkan hasilnya ke minvend.
Contoh:
a.
2-7  ð
0010

(2)

c.
(-5)-2 ð
1011

-5


1001
+
(-7)



1110
+
-2


1011

(-5)



11001

-7











b.
5-2 ð
0101

(5)

d.
(-6)-4 ð
1010

-6


1110
+
(-2)



1100
+
-4


10011

3



10110

-10








=overflow

Perkalian
Perkalian adalah operasi yang lebih kompleks dibanding pernambahan dan pengurangan. Untuk bilangan unsign, perkalian dapat dilakukan identik dengan bilangan desimal.
Contoh:
11x13:



1
0
1
1




1
1
0
1
x



1
0
1
1



0
0
0
0



1
0
1
1



1
0
1
1




1
0
0
















































































































































































































Konsep perkalian secara umum untuk unsign integer
Text Box:
Pengali-pengali multiplicand terisi ke dalam dua register (Q&M). Register ketiga, register A, juga diperlukan dan pada awalnya di-set 0. Terdapat juga register C10bit yang di-inisialisasi 0 yang menampung bit pembawa potensian sebagai hasil penambahan. Operasi perkaliannya sebagai berikut.
Logika control membaca bit-bit pengali satu demi satu jika Q0 adalah 1, maka multiplicand ditambahkan ke register A dan hasilnya disimpan di dalam register A, dengan bit C untuk overflow kemudian semua bit yang berada dalam register C, A, dan Q digeser ke kanan 1 bit, sehingga C ð An-1, A0 ð Qn-1, Q0 ð hilang.
Jika Q0=0, maka tidak terjadi penambahan, hanya terjadi pergeseran. Proses ini dulangi untuk setiap bit pengali. Produk/hasil kali disimpan di register A, C, dan Q.
C
A
Q
M

0
0000
1101
1011
Nilai Awal
0
0
1011
0101
1101
1110
1011
1011
Pergeseran tambahan
(siklus pertama)
0
0010
1111
1011
Pergeseran
(siklus kedua)
0
0
1101
0110
1111
1111
1011
1011
Pergeseran tambahan
(siklus ketiga)
1
0
0001
1000
1111
1111
1011
1011
Pergeseran tambahan
(siklus keempat)

0 komentar:

Posting Komentar

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | JCPenney Coupons