Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

ARCHITECTURE COMPUTER

Presentasi serupa


Presentasi berjudul: "ARCHITECTURE COMPUTER"— Transcript presentasi:

1 ARCHITECTURE COMPUTER
Computer Arithmatic

2 Computer Arithmatic Proses arithmatic dalam komputer umumnya menggunakan 2 jenis bilangan yang sangat berbeda, yaitu Integer dan Floating Point. Arithmatic Logic Unit (ALU) ALU adalah bagian dari komputer yang melaksanakan proses perhitungan dan logika pada data. Semua elemen dari CPU mengirim data ke ALU untuk diproses dan mendapatkan hasilnya.

3 Data dari register diberikan ke ALU dan hasil dari operasi juga disimpan di register.

4 Alu juga merubah isi flag sebagai hasil dari operasi (misal : overflow, carry) dan isi dari flag juga bisa mempengaruhi proses di ALU. Control unit memberikan sinyal yang mengontrol operasi di ALU serta pemindahan data kedalam dan keluar dari ALU.

5 Integer Arithmatic Penjumlahan Sign and Magnitude
Untuk proses pengurangan Sign and Magnitude (S-M) Representation dapat menghasilkan perhitungan yang salah

6 Contoh : (+3) + (-3) (+1) + (-6) Untuk S-M perhitungan yang benar relatif komplek, harus dilakukan perbandingan tanda dan magnitude dari dua bilangan yang akan dihitung.

7 1’s Complement Contoh : (+3) + (-3) (+1) + (-6)

8 Pada penjumlahan bilangan 1’s complement jika terjadi carry out harus ditambahkan pada hasil penjumlahan tsb (End-Arround Carry). Contoh : (-2) + (-4) (+7) + (-3)

9 Dari contoh diatas dapat kita lihat bahwa 1’s compl, dapat digunakan untuk operasi penjumlahan baik pada bilangan bertanda maupun tidak, tetapi mempunyai kekurangan yaitu memerlukan End-Arround Carry untuk beberapa kasus penjumlahan

10 2’s Complement Contoh : (-7) + (+5) (-4) + (+4) (+3) + (+4) (-4) + (-1)

11 Pada penjumlahan menggunakan 2’s complement jika hasilnya negatif bisa langsung terlihat, dan jika terjadi carry bit diabaikan. Over Flow Rule Jika hasil penjumlahan bilangan melebihi kapasitas bit yang tersedia maka terjadi over flow. Over flow pada penjumlahan dapat diketahui bila hasilnya mempunyai tanda yang berlawanan dengan yang seharusnya.

12 Contoh : (+5) + (+4) (-7) + (-6)

13 Pengurangan Untuk melakukan pengurangan satu bilangan (subtrahend) dari yang lain (minuend), dilakukan dengan cara 2’s complement dari subtrahend dan tambahkan pada minuend. Contoh :

14 Contoh :

15 7 – 7

16 Untuk penjumlahan dua bilangan dikirimkan ke adder dari 2 register (A & B). Hasilnya disimpan pada salah satu register ini. Tanda Over flow disimpan dalam Over flow Flag (OF). 0 = tidak over flow, 1 = over flow. Untuk Pengurangan maka subtrahend (reg. B) dilewatkan sebuah complementer,sehingga didapatkan harga 2’s complement-nya dan dikirim ke adder.

17 Perkalian Perkalian merupakan proses yang komplek dibandingkan proses penjumlahan atau pengurangan. Perkalian pada Unsign Integer Berikut contoh proses perkalian unsign binary integer menggunakan pensil dan kertas :

18 Contoh perkalian dengan menggunakan kertas

19 Dari cara perkalian di atas, beberapa hal penting yang perlu dicatat :
Perkalian menggunakan partial product untuk setiap digit pada multiplier. Partial product dijumlahkan untuk menghasilkan final product. Bila multiplier bit = 0, partial product = 0. Bila multiplier bit = 1, partial product adalah multiplicantnya sendiri. Untuk penjumlahan partial product. Tiap partial product yang berurutan digeser satu posisi ke kiri terhadap partial product sebelumnya. Perkalian 2 bilangan n-bit binary integer memberikan hasil kali sampai 2n bit

20 Untuk meningkatkan efisiensi :
Penambahan dari partial product tidak perlu menunggu sampai selesai, sehingga tidak diperlukan tempat untuk menyimpan semua partial produk, cukup beberapa register saja. Dapat menghemat waktu untuk menghasilkan partial product Untuk setiap bilangan 1 pada multiplier, diperlukan penambahan dan sihft, tetapi untuk tiap bilangan 0 hanya diperlukan sihft.

21 Gambar Blok Diagram Implementasi Hardware Pengalian Unsigned Binari

22 Gambar Flowchart Perkalian Unsigned Integer

23 Contoh perkalian unsigned integer : 11 x 13 = …… M = 11 Q = 13 M=1011 C A Q Proses Init value Add Shift Right Shift Right Add Shift Add Shift Right Hasil disimpan di A dan Q (8 bit) = = 143

24 Penjelasan proses perkalian di atas : Awalnya multiplicand dan multiplier di load pada register M dan Q. Register ke tiga (A) diinisialisasi dengan 0. Juga register C (1 bit) diisi dengan 0. Register C digunakan untuk menampung carry dari hasil penjumlahan. Control logic membaca bit-bit multiplier satu-persatu mulai dari kanan (LSB). Jika Q0 = 1, maka multiplicand ditambahkan ke register A (hasilnya disimpan di reg. A). Kemudian semua bit dari register C, A, dan Q digeser ke kanan 1 bit, sehingga bit C pindah ke bit An-1, A0 ke Qn-1, dan Q0 hilang.

25 Jika Q0 = 0, tidak ada proses penjumlahan, hanya ada proses pergeseran (sift) ke kanan. Proses ini diulangi untuk setiap bit multiplier. Hasil perkalian (product) terdapat pada register A dan Q.

26 Perkalian 2’s Complement
Penjumlahan dan pengurangan bilangan sign integer dapat dilakukan dengan 2’s complement, tetapi hal ini tidak berlaku untuk perkalian. Misal 1110 (10112) dikalikan 1310 (11012) pada bilangan unsign integer akan dihasilkan ( ). Bila bilangan di atas dianggap sebagai bilangan sign integer 2’s complement maka didapatkan : 1011 x 1101 = x -3 = -113

27 Perkalian tidak berhasil jika multiplicand dan/atau multiplier negatif
Perkalian tidak berhasil jika multiplicand dan/atau multiplier negatif. Unsign binary number dapat dituliskan berupa penjumlahan dari pangkat 2 Contoh : 1101 = 1x23 + 1x22 + 0x21 + 1x20 =

28 Perkalian dengan bilangan biner 2n berarti menggeser bilangan ke kiri sejumlah n bit.
Contoh :

29 Partial product harus dilihat sebagai 2n bit number yang dihasilkan dari n bit multiplicand. Unsign integer 4 bit multiplicand 1011 disimpan berupa 8 bit word Tiap partial product (selain 20) terdiri dari bilangan tersebut yang sudah digeser ke kiri, dan posisi di sebelah kanan diisi 0 (contoh : pergeseran ke kiri dua kali menghasilkan ). Sehingga jika multiplicand bernilai negatif maka perkalian dengan cara di atas jadi tidak berfungsi

30 Contoh :

31 Demikian juga jika multiplier negatif, perkalian dengan cara sebelumnya juga tidak berlaku. Terdapat beberapa cara untuk memecahkan permasalahan di atas, yang pertama adalah dengan mengubah multiplicand dan multiplier menjadi bilangan positif, melakukan perkalian dan hasilnya di-2’s complement jika tanda dari dua bilangan asalnya berbeda. Cara lain adalah dengan Booth’s Algorithm. Algoritma ini lebih cepat dan lebih disukai para ahli karena tidak membutuhkan transformasi 2’s complement.

32 Flowchart algoritma Booth untuk perkalian 2’s Complement

33 Penjelasan flow chart :
Multiplicand dan multiplier ditempatkan di register M dan Q. Digunakan juga register 1 bit yang ditempatkan di sebelah kanan dari register Q dan dinamakan register Q-1. Register A dan Q-1 diinisialisasi (diisi dengan 0). Kemudian control logic menscan bit Q0 dari multiplier dan bit pada register Q-1. Jika bit tersebut sama dengan 11 atau 00, maka semua bit dari register A, Q, dan Q-1 digeser ke kanan 1 bit. Jika bit Q0 dan Q-1 sama dengan 01 maka nilai mutiplicand ditambahkan ke register A. Dan jika nilai bitnya sama dengan 10 maka nilai register A akan dikurangi dengan nilai multiplicand.

34 Contoh penggunaan algoritma Booth : 7 x 3 = 0111 x 0011 M = 0111 A Q Q-1 Proses Inisialisasi A←A-M Sihft Right Sihft Right A←A+M Sihft Right Sihft Right Hasil perkalian di simpan di register A dan Q. Dan hasilnya adalah : = 2110.

35 Contoh : (-7) x 3 = 1001 x 0011 M = 1001 A Q Q-1 Proses Inisialisasi A←A-M Sift Sift A←A+M Sift Sift Hasil perkalian yang disimpan di register A dan Q = = -21

36 Soal Latihan Dengan Aturan Unsigned Integer lakukanlah perkalian berikut : 8 x 3 4 x 7 3 x 9 Dengan Aturan alogoritma Booth lakukanlah perkalian berikut : 12 x -12 12 x 15 10 x 17

37 Terima kasih


Download ppt "ARCHITECTURE COMPUTER"

Presentasi serupa


Iklan oleh Google