operasi perkalian

23
OPERASI PERKALIAN

Upload: zalman

Post on 24-Jan-2016

227 views

Category:

Documents


11 download

DESCRIPTION

OPERASI PERKALIAN. Dibanding operasi + dan -, mempunyai kompleks baik dari Hardware dan Software. Coba dikalikan 1011 X 1101 = … ???. Operasi perkalian pada bilangan integer un-sign. Diagram operasi perkalian. Rule Algoritma :. Control Logic membaca bit-bit multiplier satu persatu . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: OPERASI PERKALIAN

OPERASI PERKALIAN

Page 2: OPERASI PERKALIAN

• Dibanding operasi + dan -, mempunyai kompleks baik dari Hardware dan Software.

• Coba dikalikan

1011 X 1101 = … ???

Page 3: OPERASI PERKALIAN

Operasi perkalian pada bilangan integer un-sign

Page 4: OPERASI PERKALIAN

Diagram operasi perkalian

Page 5: OPERASI PERKALIAN

Rule Algoritma :Control Logic membaca bit-bit multiplier satu

persatu.1. Jika bit Q0 = 1, maka multiplikan ditambahkan

ke reg A (perintah ADD) Setelah itu seluruh bit pada reg C, A, Q digeser

kekanan 1 bit ( perintah SHIFT)

2. Bila Q0=0, maka hanya perintah SHIFT saja, tidak terjadi penambahan.

Page 6: OPERASI PERKALIAN

Contoh Perkalian pada Bilangan Unsign

1011 X 1101 = … ???

Nilai 1101 disimpan dalam register Q sebagai Multiplier .

Nilai 1011 disimpan dalam register M sebagai Multiplikan.

Page 7: OPERASI PERKALIAN

Contoh HasilC A Q0 0000 1101 inisialisasi nilai

0 1011 1101 ADD0 0101 1110 SHIFT ----- siklus 1

0 0010 1111 SHIFT ---- siklus 2

0 1101 1111 ADD0 0110 1111 SHIFT ---- Siklus 3

1 0001 1111 ADD0 1000 1111 SHIFT ----- siklus 4

Product di reg A dan Q

Page 8: OPERASI PERKALIAN

• Algoritma di atas, hanya digunakan untuk bilangan Unsign (Tidak Bertanda).

• Untuk bilangan Bertanda (Sign), yaitu Bilangan dengan komplemen-2, perlu ALGORITMA BOOTH.

Contoh : 1101 bilangan unsign senilai dgn 13d1101 bilangan komplemen2 senilai dgn -3d

Page 9: OPERASI PERKALIAN

Algoritma Booth1. Multiplier dan Multiplikan di reg Q dan M2. Terdapat 1 reg di sebelah kanan Q0 sehingga

Q3 Q2 Q1 Q0 Q-1

3. Hasil perkalian muncul di reg A dan Q4. Reg A dan Q-1 diinisialisasi Nol5. Contol Logic mengecek bit pada Q0 dan Q-1

a. Bila sama (1 dan 1 atau 0 dan 0), maka bit pada reg A, Q, Q-1 digeser kekanan 1 bit. (perintah SHIFT saja).

b. Bila BEDA 1 dan 0 maka multiplikan ditambahkan ke reg A, lalu SHIFT

– insert di Q3 dng bit 10 dan 1 maka multiplikan dikurangi dengan A, lalu SHIFT. – insert di Q3 dng bit 0

Page 10: OPERASI PERKALIAN

Contoh jika Q = 0011 ( 3des) dan M = 1001 (-7des) A Q Q-1 0000 0011 0 initial1001 0011 0 A+M1100 1001 1 SHIFT --- siklus 1

1110 0100 1 SHIFT ---- siklus 2

0101 0100 1 A-M0010 1010 0 SHIFT -------- siklus 3

0001 0101 0 SHIFT ----- siklus 4

Page 11: OPERASI PERKALIAN

Contoh

• Pada Bilangan UnSign1101x0110

.Pada Bilangan Sign(Komplemen2)1010x0101

Page 12: OPERASI PERKALIAN

• 128 64 32 16 8 4 2 1

• 32• 1 0 0 0 1 0 = -30

• dimana +30 = 11110 komplemen 1 = 00001Komplemen 2 = 00010 JADI SALAH CING

Untuk data 8 bit ==+30 = 00011110 -30 = ……..???? komplemen 1 = 11100001 ---- komplemen 2 =

11100010

Page 13: OPERASI PERKALIAN
Page 14: OPERASI PERKALIAN

• Kebalikan dari perkalian, • pembagian (Division) adalah suatu bentuk dari

pengurangan yang dilakukan berulang-ulang.• proses ini juga dapat dilakukan pada

rangkaian logika dengan cara pengurangan dan penggeseran ke kiri (menggunakan shift left register).

OPERASI PEMBAGIAN

Page 15: OPERASI PERKALIAN

Berikut adalah aturan dari pembagian:• Kurangkan bilangan pembagi (Divisor) dari

MSB bilangan yang akan dibagi (Dividend), lihat hasil pengurangan.

Bila hasilnya 1 atau positif :• Berarti hasil pembagian (Product) adalah 1.

Setelah itu hasil pengurangan digeser ke kiri satu bit, dan dimulai lagi pengurangan oleh bilangan pembagi (Divisor).

Page 16: OPERASI PERKALIAN

Bila hasilnya 0 atau negatif :• Berarti hasil pembagian (Product) adalah 0. Dalam

hal ini sebelum digeser ke kiri harus ditambah dulu dengan bilangan pembagi (Divisor).

• Setelah digeser ke kiri satu bit, dimulai lagi proses pengurangan oleh bilangan pembagi.

• Pengurangan oleh bilangan pembagi dilakukan dengan penjumlahan komplemen2.

• Bila dalam penjumlahan tersebut terdapat pindahan (Carry), maka carry tersebut diabaikan.

Page 17: OPERASI PERKALIAN

FLOWCHART PROSES PEMBAGIAN

START

DIVIDENT + (-DIVISOR)

PROSES PEMBAGIAN = 0 ?

HASIL BAGI =

1 ?

DIVIDENT + DIVISOR

PRINT “ HASIL BAGI”

GESER KEKIRISATU BIT

ENDY

T

T

Y

Page 18: OPERASI PERKALIAN

Perhatikan contoh berikut : 1010 : 410 = 10102 : 1002

Tambah dgn bil. pembagi

Catatan : Karena ada hasil pengurangan yang negatif, maka digit yang dihasilkan setelah itu adalah digit pecahan, sehingga hasil yang benar 10,12

atau 2,510.

Page 19: OPERASI PERKALIAN

Integer Division • Once you have committed to implementing multiplication, implementing

division is a relatively easy next step that utilizes much of the same hardware

• Want to find quotient, Q, and remainder, R, such that

D = Q x V + R • Restoring division for unsigned integers

o Algorithm adapted from the traditional “pen and paper” approach o Algorithm is of time complexity O(n) for n-bit dividend o Uses essentially the same ALU hardware as the Booth multiplication

algorithm • » Adder / subtractor unit • » Double wide shift register AQ that can be shifted to the left • » Register for the divisor • » Control logic

Page 20: OPERASI PERKALIAN
Page 21: OPERASI PERKALIAN

• For two’s complement numbers, must deal with the sign extension “problem”

• Algorithm: o Load M with divisor, AQ with dividend (using sign bit extension) o Shift AQ left 1 position o If M and A have same sign, A<--A-M, otherwise A<--A+M o Q0<--1 if sign bit of A has not changed or (A=0 AND Q=0),

otherwise Q0=0 and restore *A o Repeat shift and +/- operations for all bits in Q o Remainder is in A, quotient in Q » If the signs of the divisor and the dividend were the same, quotient is

correct, otherwise, Q is the 2’s complement of the quotien

Page 22: OPERASI PERKALIAN
Page 23: OPERASI PERKALIAN