Pert.10 aritmatika

21
PENDAHULUAN Operasi dasar dalam semua komputer digital adalah penambahan atau pengurangandua bilangan. Operasi aritmatika berlangsung di level instruksi mesin. Operasi tersebut diterapkan dengan fungsi logika dasar seperti AND, OR, NOT dan EXCLUSIVE-OR (XOR), dalam subsistem unit aritmatika dan logika (ALU) processor. Pada makalah ini, akan menampilkan sirkuit logika yang digunakan untuk mengimplementasikan operasi aritmatika. Waktu yang dipeerlukan untuk melakukan operasi penambahan mempengaruhi performa prosesor. Operasi perkalian dan pembagian yang memerlukan sirkuit lebih kompleks daripada operasi penambahan atau pengurangan, juga mempengaruhu performa. 1 Group 4 PTIK 09

Transcript of Pert.10 aritmatika

Page 1: Pert.10 aritmatika

PENDAHULUANOperasi dasar dalam semua komputer digital adalah

penambahan atau pengurangandua bilangan. Operasiaritmatika berlangsung di level instruksi mesin. Operasitersebut diterapkan dengan fungsi logika dasar seperti AND,OR, NOT dan EXCLUSIVE-OR (XOR), dalam subsistem unitaritmatika dan logika (ALU) processor. Pada makalah ini, akanmenampilkan sirkuit logika yang digunakan untukmengimplementasikan operasi aritmatika. Waktu yangdipeerlukan untuk melakukan operasi penambahanmempengaruhi performa prosesor. Operasi perkalian danpembagian yang memerlukan sirkuit lebih kompleks daripadaoperasi penambahan atau pengurangan, juga mempengaruhuperforma.

1Group 4 PTIK 09

Page 2: Pert.10 aritmatika

xi yi Carry-in ci Sum si Carry-out ci+1

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Gambar diatas menunjukkan tabel kebenaran logika untuk fungsi sumdan carry-out untuk penambahan weighted bit xi dan yi yang setara dalamdua bilangan X dan Y.

2Group 4 PTIK 09

Page 3: Pert.10 aritmatika

Gambar 6.1 diatas menunjukkan tabel kebenaran logikauntuk fungsi sum dan carry-out untuk penambahan weighted bitxi dan yi yang setara dalam dua bilangan X dan Y. Selain itu, tabeldiatas juga menunjukkan ekspresi logika untuk fungsi tersebut,bersama dengan contoh penambahan bilangan tidak bertanda 4-bit 7 dan 6. Perhatikanlah bahwa tiap tingkat proses penambahanharus mengakomodasi bit carry in. Kita menggunakan ci untukmenyatakan carry inke tingkat ke-i, yang sama dengan carry outdari tingkat ke-(i-1).

Ekspresi logika untuk si pada tabel diatas dapat diimplementasikan dengan 3-input gerbang XOR, yang digunakanpada Gambar 6.2a sebagai bagian ligika yang diperlukan untuktingkatan tunggal penamabahan biner. Fungsi carry out, ci+1 ,dapat diterapkan dengan sirkuit logika AND-OR dual-level.Simbol mudah bagi sirkuit lengkap untuk satu tingkatpenambahan, yang disebut full adder (FA) juga ditunjukkan padagambar tersebut.

3Group 4 PTIK 09

Page 4: Pert.10 aritmatika

Adder n-bit pada Gambar 6.2b dapatdigunakan untuk menambahkan bilangan 2`s-complement X dan Y, dimana bit Xn-1 dan yn-1 adalahbit bertanda.

Untuk melakukan operasi pengurangn X-Ypada bilangan 2`s-complement X dan Y, kitamembentuk 2`s-complement Y danpenambahankannya ke X. Jaringan sirkuit logikayang ditunjukkan pada Gambar 6.3 dapatdigunakan untuk menjalankan penambahan ataupengurangan berdasarkan pada nilai yangditerapkan pada jalur kontrol input add/sub.

4Group 4 PTIK 09

Page 5: Pert.10 aritmatika

5Group 4 PTIK 09

Page 6: Pert.10 aritmatika

6Group 4 PTIK 09

Page 7: Pert.10 aritmatika

7Group 4 PTIK 09

Page 8: Pert.10 aritmatika

Dua pendekatan dapat dilakukan untukmengurangi jada dalam adder.Pendekatan pertamaripple-carry atau variasinya.Pendekatan kedua denganmenggunakan stuktur jaringan gerbang logika yangdiperbesar yaitu lebih besar dari yang ditunjukkan padagambar A2b.Kita akan mendeskripsikan versi yangdapat dipahami dengan mudah dari pendekatan keduapada bagian berikutnya.Dalam praktek sejumlahtekhnik desain telah digunakan untukmengimplementasikan adder kecepatan-tinggi.Tekniktersebut menyertakan desain sirkuit elektronik untukpropagasi cepat sinyal carry dan variasi pada strukturjaringan dasar pada bagian berikutnya.

8Group 4 PTIK 09

Page 9: Pert.10 aritmatika

Sirkuit fast adder harus meningkatkan kecepatanpembangkitan sinyal carry. Ekspresi logika untuk si(sum) dan ci+1 (carry out) tingkat i (lihat Gambar 1adalah

si = xi yi cidanci+1 = xi yi + xi ci + yi cimemfaktorkan persamaan kedua menjadi

ci+1 = xi yi + (xi yi) cikita dapat menuliskan

ci+1 = Gi + Pi + Cidimana

Gi = xi yi dan Pi = xi + yi

9Group 4 PTIK 09

Page 10: Pert.10 aritmatika

Algoritma biasa untuk mengalikan integersecara manual diilustrasikan pada gambar berikutuntuk sistem biner . Algoritma ini di terapkan kebilangan tidak bertanda dan kebilangan positifbertanda . Hasil kali bilangan n-digit dapatdiakomodasi dalam 2n-digit, sehingga hasil kali duabilangan 4-bit dalam contoh ini masuk dalam 8 bit,sebagaimana yang ditunjukkan. Dalam sistem binerperkalian multiplicand di masukkan ke dalam posisiyang tepat untuk ditambahkan ke hasil kali parsial.Jika bit multiplier adalah 0, maka o dimasukkan ,seperti pada contoh

10Group 4 PTIK 09

Page 11: Pert.10 aritmatika

Pada saat kita menambahkan multiplicandnegatif ke produk parsial, kita harus memperluasnilai bit bertanda multiplicand tersebut kekiri sejauhproduk tersebut dapat diperluas.

Untuk multiplier negatif, solusi langsungnyaadalah memebentuk 2`s-complement pada keduamultiplier dan multiplicand dan berlanjut sepertidalam hal multiplier positif. Hal ini dapat dilakukankarena komplementasi kedua operand tidakmengubah nilai atau tanda produk. Teknik yangbekerja sama baiknya untuk kedua multiplier negatifdan positif, disebut algoritma booth.

11Group 4 PTIK 09

Page 12: Pert.10 aritmatika

Perkalian algoritma Booth adalah algoritmaperkalian yang menggandakan dua masukan binerangka dalam notasi 2’s-complement. Algoritma inidiciptakan oleh Andrew Donald Booth pada tahun1951 saat melakukan penelitiantentangKristalografi di Birkbeck CollegediBloomsbury, London. Booth menggunakankalkulator meja yang lebih cepat pada pergeserandari menambah dan menciptakan algoritma untukmeningkatkan kecepatan mereka. Algoritma boothadalah kepentingan dalam studi arsitekturkomputer.

12Group 4 PTIK 09

Page 13: Pert.10 aritmatika

Ada dua teknik untuk mempercepat operasiperkalian. Teknik yang pertama, menjamin bahwajumlah maksiun summand (versi multiplicand) yangharus ditambahkan adalah n/2 untuk n-bit operand.Teknik kedua, mengutangi waktu yang diperlukanuntuk menambahkan summand tersebut.

13Group 4 PTIK 09

Page 14: Pert.10 aritmatika

Suatu teknik yang disebut bit-pair recodingmembagi dua jumlah summand maksimun. Teknikini di peroleh secara langsung dari algoritma Booth.

14Group 4 PTIK 09

Page 15: Pert.10 aritmatika

15Group 4 PTIK 09

Page 16: Pert.10 aritmatika

Perkalian memerlukan penambahan beberapasummand. Suatu teknik yang disebut carry-saveaddition (CSA) mempercepat proses penambahan.Perhatikan suatu array untuk perkalian 4 X. 4 yangditunjukkan pada gambar 6.16a. struktur ini adalaharray umum yang ditunjukkan pada gambar6.6, dengan baris pertama hanya terdiri dari gerbangAND yang mengimplementasikan produk bitm3q0, m1q0 dan m0q0.

16Group 4 PTIK 09

Page 17: Pert.10 aritmatika

Suatu sirkuit yang menerapkan pembagiandengan metode longhand ini beroperasi sebagaiberikut : menentukan posisi dividsor sesuai dengandividend dan melakukan pengurangan. Jika sisanyanol atau positif, maka bit hasil bagi 1 ditentukan, dansisanya diperluas dengan bit lain dari dividend, divisorditempatkan ulang, dan dilakukan pengurangan yanglain. Sebaliknya jika negatif, maka ditetapkan bit hasilbagi 0, dividend dipulihkan dengan menambahkankembali dividsor tersebut, dan dividsor ditempatkanulang untuk pengurangan lain.

17Group 4 PTIK 09

Page 18: Pert.10 aritmatika

18Group 4 PTIK 09

Page 19: Pert.10 aritmatika

Floating-point atau bilangan titik mengambang,adalah sebuah format bilangan yang dapat digunakanuntuk merepresentasikan sebuah nilai yang sangat besaratau sangat kecil. Bilangan ini direpresentasikanmenjadi dua bagian, yakni bagian mantisa dan bagianeksponen (E). Bagian mantisa menentukan digit dalamangka tersebut, sementara eksponen menentukan nilaiberapa besar pangkat pada bagian mantisa tersebut(pada posisi titik desimal). Sebagai contoh, bilangan314600000 dan bilangan 0.0000451 dapatdirepresentasikan dalam bentuk bilangan floatingpoint: 3146E5 dan 451E-7 (artinya 3146 * 10 pangkat 5,dan 451 * 10 pangkat -7).

19Group 4 PTIK 09

Page 20: Pert.10 aritmatika

± X1X2X3X4X5X6X7x10±Y1Y2

Dimana XiYiadalah digit desimal. Kedua bilangan tersebut adalahdigit signifikan (7) dan rentang eksponen (±99) cukup untuk rentanglebar perhitungan ilmiah. Dimungkinkan untuk memperkirakan presisimantissa dan rentang faktor skala ini dalam representasi biner yangmemiliki 32 bit, yang merupakan word length komputer standar. 24-bitmantissa dapat secara perkiraan menyatakan bilangan desimal 7-digit,dan eksponen 8-bit untuk basis 2 yang menyediakan faktor skaladengan rentang yang masuk akal. Satu bit diperlukan untuk tandabilangan. Karena bit bukan nol pertama dari mantissa binerternormalisasi harus 1, maka tidak perlu disertakan secara eksplisitdalam representasi. Oleh karena itu diperlukan total 32 bit.

Ini disebut format excess-27. Nilai akhir rentang ini, 0 dan 255.

20Group 4 PTIK 09

Page 21: Pert.10 aritmatika

IEEE (Institute of Engineers Electrical dan Electronics)telah menghasilkan standar untuk aritmatika floatingpoint.. Standar ini menetapkan cara tunggal presisi (32 bit)dan presisi ganda (64 bit) bilangan floating point untukdiwakili, serta bagaimana aritmatika harus dilakukan padamereka.

S E’ M

32 bits

Tandabilangan 0menandakan +dan 1menanakan -

8 –bit signed exponent dalamrepresentasiexcess-127

23-bit mantisa fractions

Value reppresented= ± .M x 2E’-127

0 00101000 001010

Nilai yang direpresentasikan = 1.001010….0 x 2-87

21Group 4 PTIK 09