Anda di halaman 1dari 24

PERKALIAN

Operasi Aritmatika

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

PENGALIAN UNSIGNED INTEGER


1 0 1 1 x 1 1 0 1 1 0 1 1 0 0 0 0 1 0 1 1 1 0 1 1
Partial Product Multiplicand (11) Mutiplier (13)

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

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

PENGALIAN UNSIGNED INTEGER

yg diambil selalu Q0 M=1011

PENGALIAN KOMPLEMEN-2

Dengan algoritma pengalian di atas 1011 * 1101 = 1000 1111


Perkalian unsigned integer : 11 * 13 = 143 Perkalian komplemen-2 : -5 * -3 = -113

perkalian tidak berfungsi jika multiplicand dan/atau multiplier-nya negatif

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

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

10 01 1-0

14

PEMBAGIAN
Operasi Aritmatika

15

PEMBAGIAN-UNSIGNED BINARY
1
1 1 1 1

3
4 1 7

3
3

7
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 0 1 1 1 0 1 1 0 0 1 0 1 1 A

M = 1011 M = 0101 (2nd-c)

1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0

0 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1

0 1 0 1 1 1 0 1 1 1 0 0 1 1 1 0 0 0

1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 0

Q 0 0 1 1 0 1 1 0

Initial Shift Left


A A - M Set Q0 Shift Left A A - M Set Q0 Shift Left A A - M

0 1 1 1 1 1 1 0

1 1 1 1 1 1 1 0

1 1 1 0 1 1 0 0

A A + M (restore A) Shift Left A A - M Set Q0

1 1 0 1

remainder

quotient

18

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

Anda mungkin juga menyukai