Aritmetic Integer Multiplicant (Perkalian)
Aritmetic Integer Multiplicant (Perkalian)
Contoh perkalian:
11 × 13
1 0 1 1
1 1 0 1
---------------------- ×
1 0 1 1
0 0 0 0
1 0 1 1
1 0 1 1
---------------------- +
1 0 0 0 1 1 1 1
> Dari cara perkalian diatas,
beberapa hal yang penting yang perlu dicatat :
1. Perkalian menggunakan partial product
untuk setiap digit pada multiplier. Partial product dijumlahkan untuk menghasilkan
partial product
2. Bila multiplier bit=0, partial
product =0. Bila multiplier bit=1, partial product adalah multiplicantnya
sendiri
3. Untuk penjumlahan partial product,
tiap partial product yang berurutan digeser satu posisi ke kiri terhadap partial
product sebelumnya
4. Perkalian dua bilangan n bit binary
integer memberikan hasil kali sampai 2n bit
> Perkalian 2's Complemet
Penjumlahan dan pengurangan bilangan
sign integer dapat dilakukan dengan 2's complement, tetapi bilangan ini tidak
berlaku untuk perkalian.
Misal
11 (1011) dikalikan 13 (1101) pada bilangan unsign integer akan
dihasilkan 143 (10001111). Bila bilangan diatas dianggap sebagai bilangan sign
integer 2's complement maka didapatkan:
1011
× 1101 = 10001111
-5 × -3
= -113
Perkalian tidak berhasil jika
multiplicant dari/atau multiplier negatif
Unsign binary number dapat dituliskan
berupa penjumlahan di pangkat dua
Contoh:
1101 = 1×2^3 + 1×2^2 + 0×2^1 + 1×2^0
= 2^3 + 2^2 + 2^0
Perkalian dengan bilangan biner 2^n
berarti menggeser bilangan kekiri sejumlah n bit
Contoh:
1 0 1 1 (M)
1 1 0 1 (Q)
----------------------------- ×
0 0 0 0 1 0 1 1 1 0 1 1 × 1 × 2^0
0 0 0 0 0 0 0 0 1 0 1 1 × 0 × 2^1
0 0 1 0 1 1 0 0 1 0 1 1 × 1 × 2^2
0 1 0 1 1 0 0 0 1 0 1 1 × 1 × 2^3
----------------------------- +
1 0 0 0 1 1 1 1
>
Algoritma Booth
*Contoh jika Q = 0011 ( 3) × M = 0111 (7)
A Q Q1 Proses
0000 0011 0 inisial
1001 0011 0 A <- A-M
1100 1001 1 shift right
1110 0100 1
shift right
0101 0100 1 A <- A+M
0010 1010 0 shift right
0001 0101 0 shift right
Hasil perkalian disimpan diregister A
dan Q. Dan hasilnya adalah : 0001
0101 = 21
* Contoh jika Q = 0011 ( 3) × M = 1001 (-7)
A Q Q1 Proses
0000 0011 0 inisial
0111 0011 0 A <- A-M
0011 1001 1 sift
0001 1100 1
sift
1010 1100 1 A <- A+M
1101 0110 0 sift
1110 1011 0 sift
Hasil perkalian yang disimpan diregister
A dan Q = 1110 1011 = -21
Komentar
Posting Komentar