Operasi Aritmatika
1
PENGALIAN
Operasi pengalian lebih rumit dibandingkan
operasi penjumlahan atau pengurangan, baik
dalam hardware maupun software
Ada beberapa jenis algoritma yang digunakan
dalam bermacam-macam komputer
2
PENGALIAN – UNSIGNED INTEGER
1 0 1 1 Multiplicand (11)
x 1 1 0 1 Mutiplier (13)
1 0 1 1
0 0 0 0 Partial
1 0 1 1 Product
1 0 1 1
1 0 0 0 1 1 1 1 Product (143)
3
PENGALIAN – UNSIGNED INTEGER
Pengalian meliputi pembentukan beberapa perkalian
parsial untuk setiap digit dalam multiplier. Perkalian
parsial ini kemudian dijumlahkan untuk
mendapatkan hasil pengalian akhir
Bila bit multiplier sama dengan 0, maka hasil
pengaliannya 0. Bila bit multiplier 1, maka hasil
pengaliannya sama dengan mutiplier
Hasil pengalian akhir diperoleh dengan
menjumlahkan perkalian parsial tersebut. Setiap hasil
perkalian parsial yang berurutan digeser satu posisi
ke kiri relatif terhadap hasil perkalian sebelumnya.
Pengalian dua buah integer biner n-bit menghasilkan
hasil perkalian sampai 2n-bit
4
PENGALIAN – UNSIGNED INTEGER
Control Logic membaca bit-bit multiplier
satu persatu
Bila Q0 = 1, multiplicand ditambahkan ke
register A; hasilnya disimpan ke register
A; setelah itu seluruh bit di register C, A
dan Q digeser ke kanan 1 bit.
Bila Q0 = 0, tidak terjadi penambahan;
seluruh bit di register C, A dan Q digeser
ke kanan 1 bit.
Proses tersebut dilakukan secara
berulang untuk setiap bit multiplier
Hasil perkalian akhir tersimpan di
register A dan Q.
5
PENGALIAN – UNSIGNED INTEGER
6
PENGALIAN – UNSIGNED INTEGER
yg diambil selalu Q0
M=1011
7
PENGALIAN KOMPLEMEN-2
Dengan algoritma pengalian di atas
1011 * 1101 = 1000 1111
Perkalian unsigned integer : 11 * 13 = 143
Perkalian komplemen-2 : -5 * -3 = -113
8
PERKALIAN UNSIGN &
KOMPLEMEN-2
Ada beberapa cara untuk menangani hal
tersebut:
konversi multiplier dan multicand jadi positif,
dikalikan; cari komplemen-2 dari hasilnya jika tanda
multiplier dan multiplicand berbeda
Menggunakan algoritma lain yang tidak
memerlukan transformasi, misalnya Algoritma Booth
9
ALGORITMA BOOTH
memiliki kelebihan kecepatan proses
perkaliannya, relatif terhadap pendekatan
langsung
terdapat register Q(multiplier), M(multiplicand),
A(accumulator), dan register 1-bit di kanan Q yg
ditandai dengan Q-1
hasil perkalian tersimpan di A dan Q
10
ALGORITMA BOOTH
A dan Q-1 diinisialisasi 0
control logic memeriksa bit-bit multiplier
satu-persatu beserta bit di kanannya
Jika kedua bit sama (1-1 atau 0-0), maka
seluruh bit di A, Q dan Q-1 digeser 1-bit ke
kanan
jika kedua bit berbeda, multiplicand
ditambahkan (0-1) atau dikurangkan (1-0)
ke register A, kemudian digeser ke kanan
pergeseran menggunakan Arithmetic
Shift
contoh : 1011 0101 1101 1010
11
ALGORITMA BOOTH
12
ALGORITMA BOOTH
contoh : 0111 * 0011 = 0001 0101
13
ALGORITMA BOOTH
sub
shift
add
1101
1–0
0–1
1-0
14
PEMBAGIAN
Operasi Aritmatika
15
PEMBAGIAN-UNSIGNED BINARY
1 3
1 1 1 4 7
1 1
3 7
3 3
4
T.Informatika UAD 16
PEMBAGIAN-UNSIGNED BINARY
E0
M divisor
A,Q dividend
Count n
17
PEMBAGIAN-UNSIGNED BINARY
1001 0011 : 1011 = 000 1101 + 0100
E A Q
0 1 0 0 1 0 0 1 1 Initial
M = 1011 1 0 0 1 0 0 1 1 0 Shift Left
M’ = 0101 (2nd-c) 0 1 0 1
1 0 1 1 1 A A - M
1 0 1 1 1 0 1 1 1 Set Q0
0 1 1 1 0 1 1 1 0 Shift Left
0 1 0 1
1 0 0 1 1 A A - M
1 0 0 1 1 1 1 1 1 Set Q0
0 0 1 1 1 1 1 1 0 Shift Left
0 1 0 1
0 1 1 0 0 A A - M
1 0 1 1
1 0 1 1 1 1 1 1 0 A A + M (restore A)
0 1 1 1 1 1 1 0 0 Shift Left
0 1 0 1
1 0 1 0 0 A A - M
1 0 1 0 0 1 1 0 1 Set Q0
18
remainder quotient
PEMBAGIAN KOMPLEMEN-2
Muatkan divisor ke M, dividend ke A dan Q. dividend
diekspresikan sbg komplemen-2 2n-bit.
Geser A dan Q 1-bit ke kiri
Bila M dan A memiliki tanda yg sama, lakukan A A
– M; bila tandanya beda, A A + M
Operasi tsb akan berhasil bila tanda A sesudah dan
sebelum operasi sama
bila berhasil (A dan Q = 0), set Q0 1
bila gagal (A dan Q <> 0), reset Q0 0 dan simpan A
sebelumnya
Ulangi langkah 2 sampai 4 utk setiap posisi bit di Q
Bila tanda divisor dan dividend sama maka quotient
ada di Q, jika tidak quotient adalah komplemen-2 dari
Q.
Remainder ada di A.
19
PEMBAGIAN KOMPLEMEN-2
20
PEMBAGIAN KOMPLEMEN-2
21
PEMBAGIAN KOMPLEMEN-2
22
PEMBAGIAN KOMPLEMEN-2
(-7)/(3)
dan (7)/(-3) akan menghasilkan
remainder yang berbeda. Hal ini
disebabkan operasi pembagian
didefinisikan sebagai
D=Q*V+R
dengan
D = dividend
Q = quotient
V = divisor
R = remainder
23
Daftar Pustaka:
1. William Stallings, Computer and Architecture
2. E. Haodudin Nurkifli, Universitas Ahmad Dahlan