CPU ARITHMATIC.

Slides:



Advertisements
Presentasi serupa
Bus 3-State Sistem bus dapat dibangun dari gerbang 3-keadaan
Advertisements

PERTEMUAN MINGGU KE-4 REPRESENTASI DATA.
PERTEMUAN MINGGU KE-3 REPRESENTASI DATA.
ARITMETIKA KOMPUTER I. Pendahuluan
Arsitektur Komputer “Rangkaian Aritmatika”
ARCHITECTURE COMPUTER
WISNU HENDRO MARTONO,M.Sc
© 2009 Fakultas Teknologi Informasi Universitas Budi Luhur Jl. Ciledug Raya Petukangan Utara Jakarta Selatan Website:
Operasi Aritmatika.
SISTEM BILANGAN, OPERASI ARITMATIKA DAN PENGKODEAN
Organisasi dan Arsitektur Komputer
MATA KULIAH TEKNIK DIGITAL DISUSUN OLEH : RIKA SUSANTI, ST
PERKALIAN Operasi Aritmatika.
BAB 9 RANGKAIAN ARITMATIKA.
Integer Arithmatic Pembagian
4/20/2015 9:54 AM ORGANISASI KOMPUTER by TIM DOSEN STT PLN 1.
TEK 2524 Organisasi Komputer
1 Kuliah Rangkain Digital Kuliah 3 : Sistem Bilangan Teknik Komputer Universitas Gunadarma.
Pertemuan 11 (Aritmatika)
Floating Point (Multiplication)
ARITHMATIC LOGICAL UNIT (ALU)
COMPUTER ARITHMETIC.
Organisasi dan Arsitektur Komputer
Pertemuan 2 Sistem Bilangan
Konversi Bilangan Mulyono.
1 Pertemuan 2 Sistem Bilangan Matakuliah: T0483 / Bahasa Rakitan Tahun: 2005 Versi: versi 1.0 / revisi 1.0.
1 Pertemuan 21 Arithmetic: I Matakuliah: T0324 / Arsitektur dan Organisasi Komputer Tahun: 2005 Versi: 1.
Pengantar Teknologi Informasi
PENGANTAR TEKNOLOGI KOMPUTER & INFORMASI – A
Operasi dalam sistem bilangan
SISTEM BILANGAN.
OPERASI PERKALIAN.
Arsitektur Komputer Genap 2004/2005
OPERASI ARITMATIKA Arsitektur Komputer.
Arithmatika Komputer Pertemuan – 2 Oleh : Tim Pengajar.
ORGANISASI dan ARSITEKTUR KOMPUTER
Aritmetik Digital #11 Teknik Digital (IF) 2015.
PERTEMUAN MINGGU KE-4 REPRESENTASI DATA.
PERTEMUAN MINGGU KE-3 REPRESENTASI DATA.
Aritmetik Digital.
REPRESENTASI BILANGAN
CPU ARITHMATIC.
ARITMATIKA DAN UNIT PENGOLAHAN DASAR
UNIVERSITAS GUNADARMA
ALU (2) Multiplication & Division a ) shifting register method b ) booth’s Representation b ) Parallel array Multiplication c ) parallel Array Divider.
ORGANISASI KOMPUTER MATA KULIAH: ARITMATIKA PERTEMUAN 11
Transfer Register dan Mikrooperasi
Aritmatika digital.
SUPLEMEN MASA DEPAN KULIAH ORGANISASI DAN ARSITEKTUR KOMPUTER
UNIT ARITMATIKA.
SIRKUIT ARITMATIKA.
PERTEMUAN MINGGU KE-3 REPRESENTASI DATA.
COMPUTER ARITHMETIC.
WISNU HENDRO MARTONO,M.Sc
MATA KULIAH TEKNIK DIGITAL DISUSUN OLEH : RIKA SUSANTI, ST., M.ENG
Oleh : Devie Rosa Anamisa
Representasi Data: Operasi Aritmatika
PERTEMUAN MINGGU KE-4 REPRESENTASI DATA OLEH SARI NY.
PENGANTAR TEKNOLOGI KOMPUTER & INFORMASI 1A
WISNU HENDRO MARTONO,M.Sc
COMPUTER ARITHMETIC.
Sistem-Sistem Bilangan
Sistem-Sistem Bilangan
BILANGAN KOMPLEMEN Temu 9.
PERTEMUAN MINGGU KE-3 REPRESENTASI DATA.
Andang, Elektronika Komputer Digital
OPERASI Arithmatika dan logika
MATAKULIAH SISTEM DIGITAL PERTEMUAN V RANGKAIAN ARITMATIK
SISTEM BILANGAN.
Biner Bertanda Temu 8.
Transcript presentasi:

CPU ARITHMATIC

Size Representation (Jumlah Bit) Berdasarkam Jumlah Bit :::: (Ref : Prosesor Intel) Nybble : 4 bit Byte : 8 bit ------ DB (DEFINE BYTE) Word : 16 bit ----- DW (DEFINE WORD) Double Word : 32 bit --- DD (DEFINE DOUBLE WORD) Quad Word : 64 bit --- DQ (DEFINE QUAD WORD) Ten Bytes : 80 bit ---- DT (DEFINE TEN BYTES)

Data representation Berdasarkan Representasi :::: Integer Representation Floating Point Representation Berdasarkan Sign (Tanda) :::: Unsign (tidak mengenal bilangan negatif) Sign (mengenal bilangan positif dan negatif)

Format Integer Representation Sign Magnitude Complement 1 Complement 2

Contoh : Representasi 8 bit +42 des = 00101010 -42 des = 10101010

Contoh : Representasi 8 bit +42 des = 00101010 -42 des = 11010101

Representasi biner 4 bit Bil. Desimal Sign Magnitude One Complement Two Complement +8 +7 +6 +5 +4 +3 +2 +1 +0 -0 -1 -2 -3 -4 -5 -6 -7 -8

ALU (Arithmetic and Logic Unit) Unit Aritmetika dan Logika merupakan bagian pengolah bilangan dari sebuah komputer. Di dalam operasi aritmetika ini sendiri terdiri dari berbagai macam operasi diantaranya adalah operasi penjumlahan, pengurangan, perkalian, dan pembagian. Mendesain ALU juga memiliki cara yang hampir sama dengan mendesain enkoder, dekoder, multiplexer, dan demultiplexer. Rangkaian utama yang digunakan untuk melakukan perhitungan ALU adalah Adder.

Ada 2 jenis Adder : 1. Rangkaian Adder yang hanya menjumlahkan dua bit disebut Half Adder. 2. Rangkaian Adder yang menjumlahkan tiga bit disebut Full Adder. 3. Rangkaian Adder yang menjumlahkan banyak bit disebut paralel Adder Half Adder & Full Adder SUDAH DIKETAHUI SEBELUMNYA

Parallel Adder Parallel Adder adalah rangkaian Full Adder yang disusun secara parallel dan berfungsi untuk menjumlah bilangan biner berapapun bitnya, tergantung jumlah Full Adder yang diparallelkan. Gambar berikut menunjukkan Parallel Adder yang terdiri dari 4 buah Full Adder yang tersusun parallel sehingga membentuk sebuah penjumlah 4 bit.

Penjumlahan Biner Ada 4 kondisi yang terjadi pada penjumlahan biner yaitu apabila 0 + 0, 0 + 1, 1 + 0,dan 1 + 1. Jika yang terjadi adalah 1 + 1, kita tidak dapat menyatakan hasil jumlah dalam satu digit. Tetapi kita harus melakukan penyimpanan (Carry Out) kedalam kolom yang lebih tinggi. Ini berlaku untuk seluruh sistem bilangan. Sebagai contoh pada bilangan desimal 2 + 5 = 7 dengan carry out = 0, 9 + 9 = 8 dengan carry out = 1.

OPERASI PENGURANGAN diubah dalam operasi penjumlahan Jika 824d – 278d = 546d akan sama jika 824d + (–278d) = 546d Negatif bil desimal dengan 2 cara : komplemen9 dan komplemen 10 -278d 721d -278d 722d 824 721 1 545 1 546 Komplemen9 Komplemen10

Negatif bil Biner dengan 2 cara : komplemen1 dan komplemen2 0110 0110 0110 0011 1100 1101 _____ - _____ + _____ +

00100101 00001100 _________ - ................ Lakukan hal yang sama dengan mengubah menjadi operasi penjumlahan dengan komplemen1 dan komplemen2 !

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

Algoritma Perkalian Bilangan Un-Sign

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.

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

Contoh Hasil Perkalian Q=1101 dan M=1011 C A Q 0 0000 1101 inisialisasi nilai 0 1011 1101 A←A+M 0 0101 1110 SHIFT Right, c←0 ----- siklus 1 0 0010 1111 SHIFT Right , c←0 ---- siklus 2 0 1101 1111 A←A+M 0 0110 1111 SHIFT Right , c←0 ---- Siklus 3 0001 1111 A←A+M 0 1000 1111 SHIFT Right , c←0 ----- siklus 4 Product di reg A dan Q  10001111b = 143d

ALGORITMA BOOTH 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 komplemen ’2 senilai dgn -3d

Algoritma Booth  operasi perkalian pada bilangan Sign

Algoritma Booth Pada Bilangan Sign Multiplier dan Multiplikan di reg Q dan M Terdapat 1 reg di sebelah kanan Q0 sehingga Q3 Q2 Q1 Q0 Q-1 3. Hasil perkalian muncul di reg A dan Q 4. Pertama kali (Inisialisasi), Reg A dan Q-1 diinisialisasi Nol 5. 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 Right saja). b. Bila BEDA 1 dan 0 maka multiplikan ditambahkan ke reg A, lalu SHIFT – insert di A3 dng bit 1 0 dan 1 maka A dikurangi dengan M, lalu SHIFT. – insert di A3 dng bit 0

Contoh Perkalian Bilangan Sign Q = 0011 ( 3des) dan M = 1001 (-7des) A Q Q-1 0000 0011 0 initial 0011 0 A←A+M 1001 1 SHIFT Right, A3←1, --- siklus 1 0100 1 SHIFT Rihgt, A3←1, ---- siklus 2 0101 0100 1 A←A-M 0010 1010 0 SHIFT Right, A3←0, -------- siklus 3 0001 0101 0 SHIFT Right, A3←0, ----- siklus 4 Product di A dan Q  00010101 = + 21d  Selanjutnta dilakukan komplemen2 menjadi 11101011 = -21d

Contoh Pada Bilangan UnSign 1101x0110 .Pada Bilangan Sign(Komplemen2)

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

OPERASI PEMBAGIAN Kebalikan dari perkalian, Operasi PEMBAGIAN (Division) adalah suatu bentuk dari pengurangan yang dilakukan berulang-ulang. D = V x Q + R dimana D = dividend, V=divisor, Q=Quotient, R = Remainder Proses ini juga dapat dilakukan pada rangkaian Digital (logika) dengan cara pengurangan dan penggeseran ke kiri (menggunakan shift left register). Algoritma Booth pada Operasi Pembagian dilakukan seperti Flowchart berikut :

Contoh  Bilangan 7 : 3  quotient = 2, remainder = 1 Keterangan 0000 0111 Initial Value 1110 Shift Left 1101 A←A-M Krn A<0  A←A+M dan Qo←0 0001 1100 0011 1000 1001 Krn A≥0  Qo←1 0010 Siklus 1 Siklus 2 Siklus 3 Siklus 4

Contoh Lain untuk LATIHAN Coba Uraikan Algoritma Booth untuk operasi Pembagian 5 : 5 5 : 1

TUGAS MTE 1. Tuliskan representasi biner 8 bit dengan Sign Magnitude, komplemen1 dan Komplemen2 pada bilangan positif dan negatifnya : 42, 47, 52, 57, 62, 67, 72, 77, 82, 87, 92, 97, 102, 107, 112, 117, 122, 126 55 109 2. Urutkan langkah perkalian bilangan sign dengan algoritma Booth: 0001x0111 1001 x 0101 0110 x 1000 0101 x 0100 1000 x 0010 0011x0111 1010x0101 0110 x 1011 0101 x 0101 1111 x 0010 0101x0111 1100x 0101 0110x 1111 0101 x 0110 1001x 1100 0111x0111 1101x 0101 0110x 1100 0110 x 0111 1011x 1010 3. Urutkan langkah pembagian bilangan biner dari bilangan desimal berikut: 7:6 6:6 5:5 7:1 5:1 7:5 6:5 5:4 6:2 4:4 7:4 6:4 5:3 6:1 4:3 7:2 6:3 5:2 7:7 4:2

EXPLANATION DIVISION PROCESS

Integer Division D = Q x V + R 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

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

ALGORITMA PEMBAGIAN LAINNYA : Kurangkan bilangan pembagi (Divisor) dari MSB bilangan yang akan dibagi (Dividend), lihat hasil pengurangan. Bila hasil carry-nya 1 atau tandanya positif : Berarti hasil pembagian (Product) adalah 1. Setelah itu hasil pengurangan digeser ke kiri satu bit, dan dimulai lagi pengurangan oleh bilangan pembagi (Divisor).

Bila hasil carry-nya 0 atau tandanya 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.

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

Perhatikan contoh berikut : 1010 : 410 = 10102 : 1002 +10 des -4 des Tambah dgn bil. pembagi +4 des 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.

Test Pemahaman Diri 1. Tentukan represenstasi sign magnitude, komplemen 1, dan komplemen 2 untuk bilangan desimal berikut : A. 26, -26, 119. -119 B. 31, -31, 107, -107 2. Kurangkan bilangan biner berikut dengan komplemen 1 dan komplemen 2 A. 01100101 – 00011010 B. 01101010 – 00100111 3. Proses perkalian A. 1001 x 1110 B. 1010 x 1100 4. Tentukan hasil representasi floating point 32 bit untuk bilangan : A. – 0,00011000001 B. - 0,00001001101