1 / 23

OPERASI PERKALIAN

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 .

zalman
Télécharger la présentation

OPERASI PERKALIAN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OPERASI PERKALIAN

  2. Dibanding operasi + dan -, mempunyai kompleks baik dari Hardware dan Software. • Coba dikalikan 1011 X 1101 = … ???

  3. Operasiperkalianpadabilangan integer un-sign

  4. Diagram operasi perkalian

  5. Rule Algoritma : Control Logic membaca bit-bit multiplier satupersatu. 1. Jika bit Q0 = 1, makamultiplikanditambahkankereg A (perintah ADD) Setelahituseluruh bit padareg C, A, Q digeserkekanan 1 bit ( perintah SHIFT) 2. Bila Q0=0, makahanyaperintah SHIFT saja, tidakterjadipenambahan.

  6. Contoh Perkalian pada Bilangan Unsign 1011 X 1101 = … ??? Nilai 1101 disimpan dalam register Q sebagai Multiplier . Nilai 1011 disimpan dalam register M sebagai Multiplikan.

  7. ContohHasil C A Q 0 0000 1101 inisialisasinilai 0 1011 1101 ADD 0 0101 1110 SHIFT ----- siklus 1 0 0010 1111 SHIFT ---- siklus 2 0 1101 1111 ADD 0 0110 1111 SHIFT ---- Siklus 3 • 0001 1111 ADD 0 1000 1111 SHIFT ----- siklus 4 Product direg A dan Q

  8. 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 13d 1101 bilangan komplemen2 senilai dgn -3d

  9. Algoritma Booth • Multiplier danMultiplikandireg Q dan M • Terdapat 1 regdisebelahkanan Q0 sehingga Q3 Q2 Q1 Q0 Q-1 3. Hasilperkalianmunculdireg A dan Q 4. Reg A dan Q-1diinisialisasiNol 5. Contol Logic mengecek bit pada Q0 dan Q-1 a. Bilasama (1 dan 1 atau 0 dan 0), maka bit padareg A, Q, Q-1digeserkekanan 1 bit. (perintah SHIFT saja). b. Bila BEDA 1 dan 0 makamultiplikanditambahkankereg A, lalu SHIFT – insert di Q3 dng bit 1 0 dan 1 makamultiplikandikurangidengan A, lalu SHIFT. – insert di Q3 dng bit 0

  10. Contohjika Q = 0011 ( 3des) dan M = 1001 (-7des) A Q Q-1 0000 0011 0 initial • 0011 0 A+M • 1001 1 SHIFT --- siklus 1 • 0100 1 SHIFT ---- siklus 2 0101 0100 1 A-M 0010 1010 0 SHIFT -------- siklus 3 0001 0101 0 SHIFT ----- siklus 4

  11. Contoh • Pada Bilangan UnSign 1101x0110 .Pada Bilangan Sign(Komplemen2) 1010x0101

  12. 128 64 32 16 8 4 2 1 • 32 • 1 0 0 0 1 0 = -30 • dimana +30 = 11110 komplemen 1 = 00001 Komplemen 2 = 00010 JADI SALAH CING Untuk data 8 bit ==>>> +30 = 00011110 -30 = ……..???? komplemen 1 = 11100001 ---- komplemen 2 = 11100010

  13. OPERASI PEMBAGIAN • 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).

  14. 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).

  15. 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.

  16. FLOWCHART PROSES PEMBAGIAN START DIVIDENT + (-DIVISOR) PROSES PEMBAGIAN = 0 ? PRINT “ HASIL BAGI” Y END T GESER KEKIRI SATU BIT T DIVIDENT + DIVISOR HASIL BAGI = 1 ? Y

  17. Perhatikan contoh berikut : 1010 : 410 = 10102 : 1002 Tambahdgnbil. 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.

  18. 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

  19. 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

More Related