Pert.11 Aritmatika

Download Report

Transcript Pert.11 Aritmatika

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.
Group 4 PTIK 09
1
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 sum
dan carry-out untuk penambahan weighted bit xi dan yi yang setara dalam
dua bilangan X dan Y.
Group 4 PTIK 09
2
Gambar 6.1 diatas menunjukkan tabel kebenaran logika
untuk fungsi sum dan carry-out untuk penambahan weighted bit
xi dan yi yang setara dalam dua bilangan X dan Y. Selain itu, tabel
diatas juga menunjukkan ekspresi logika untuk fungsi tersebut,
bersama dengan contoh penambahan bilangan tidak bertanda 4bit 7 dan 6. Perhatikanlah bahwa tiap tingkat proses penambahan
harus mengakomodasi bit carry in. Kita menggunakan ci untuk
menyatakan carry inke tingkat ke-i, yang sama dengan carry out
dari tingkat ke-(i-1).
Ekspresi logika untuk si pada tabel diatas dapat di
implementasikan dengan 3-input gerbang XOR, yang digunakan
pada Gambar 6.2a sebagai bagian ligika yang diperlukan untuk
tingkatan tunggal penamabahan biner. Fungsi carry out, ci+1 ,
dapat diterapkan dengan sirkuit logika AND-OR dual-level.
Simbol mudah bagi sirkuit lengkap untuk satu tingkat
penambahan, yang disebut full adder (FA) juga ditunjukkan pada
gambar tersebut.
Group 4 PTIK 09
3
Adder n-bit pada Gambar 6.2b dapat
digunakan untuk menambahkan bilangan 2`scomplement X dan Y, dimana bit Xn-1 dan yn-1 adalah
bit bertanda.
Untuk melakukan operasi pengurangn X-Y
pada bilangan 2`s-complement X dan Y, kita
membentuk
2`s-complement
Y
dan
penambahankannya ke X. Jaringan sirkuit logika
yang ditunjukkan pada Gambar 6.3 dapat
digunakan untuk menjalankan penambahan atau
pengurangan berdasarkan pada nilai yang
diterapkan pada jalur kontrol input add/sub.
Group 4 PTIK 09
4
Group 4 PTIK 09
5
Group 4 PTIK 09
6
Group 4 PTIK 09
7
Dua pendekatan dapat dilakukan untuk
mengurangi jada dalam adder.Pendekatan pertama
ripple-carry atau variasinya.Pendekatan kedua dengan
menggunakan stuktur jaringan gerbang logika yang
diperbesar yaitu lebih besar dari yang ditunjukkan pada
gambar A2b.Kita akan mendeskripsikan versi yang
dapat dipahami dengan mudah dari pendekatan kedua
pada bagian berikutnya.Dalam praktek sejumlah
tekhnik
desain
telah
digunakan
untuk
mengimplementasikan adder kecepatan-tinggi.Teknik
tersebut menyertakan desain sirkuit elektronik untuk
propagasi cepat sinyal carry dan variasi pada struktur
jaringan dasar pada bagian berikutnya.
Group 4 PTIK 09
8
Sirkuit fast adder harus meningkatkan kecepatan
pembangkitan sinyal carry. Ekspresi logika untuk si
(sum) dan ci+1 (carry out) tingkat i (lihat Gambar 1
adalah
si = xi yi ci
dan
ci+1 = xi yi + xi ci + yi ci
memfaktorkan persamaan kedua menjadi
ci+1 = xi yi + (xi yi) ci
kita dapat menuliskan
ci+1 = Gi + Pi + Ci
dimana
Gi = xi yi dan Pi = xi + yi
Group 4 PTIK 09
9
Algoritma biasa untuk mengalikan integer
secara manual diilustrasikan pada gambar berikut
untuk sistem biner . Algoritma ini di terapkan ke
bilangan tidak bertanda dan kebilangan positif
bertanda . Hasil kali bilangan n-digit dapat
diakomodasi dalam 2n-digit, sehingga hasil kali dua
bilangan 4-bit dalam contoh ini masuk dalam 8 bit,
sebagaimana yang ditunjukkan. Dalam sistem biner
perkalian multiplicand di masukkan ke dalam posisi
yang tepat untuk ditambahkan ke hasil kali parsial.
Jika bit multiplier adalah 0, maka o dimasukkan ,
seperti pada contoh
Group 4 PTIK 09
10
Pada saat kita menambahkan multiplicand
negatif ke produk parsial, kita harus memperluas
nilai bit bertanda multiplicand tersebut kekiri sejauh
produk tersebut dapat diperluas.
Untuk multiplier negatif, solusi langsungnya
adalah memebentuk 2`s-complement pada kedua
multiplier dan multiplicand dan berlanjut seperti
dalam hal multiplier positif. Hal ini dapat dilakukan
karena komplementasi kedua operand tidak
mengubah nilai atau tanda produk. Teknik yang
bekerja sama baiknya untuk kedua multiplier negatif
dan positif, disebut algoritma booth.
Group 4 PTIK 09
11
Perkalian algoritma Booth adalah algoritma
perkalian yang menggandakan dua masukan biner
angka dalam notasi 2’s-complement. Algoritma ini
diciptakan oleh Andrew Donald Booth pada tahun
1951
saat
melakukan
penelitian
tentangKristalografi
di
Birkbeck
College
diBloomsbury, London. Booth menggunakan
kalkulator meja yang lebih cepat pada pergeseran
dari menambah dan menciptakan algoritma untuk
meningkatkan kecepatan mereka. Algoritma booth
adalah kepentingan dalam studi arsitektur
komputer.
Group 4 PTIK 09
12
Ada dua teknik untuk mempercepat operasi
perkalian. Teknik yang pertama, menjamin bahwa
jumlah maksiun summand (versi multiplicand) yang
harus ditambahkan adalah n/2 untuk n-bit operand.
Teknik kedua, mengutangi waktu yang diperlukan
untuk menambahkan summand tersebut.
Group 4 PTIK 09
13
Suatu teknik yang disebut bit-pair recoding
membagi dua jumlah summand maksimun. Teknik
ini di peroleh secara langsung dari algoritma Booth.
Group 4 PTIK 09
14
Group 4 PTIK 09
15
Perkalian memerlukan penambahan beberapa
summand. Suatu teknik yang disebut carry-save
addition (CSA) mempercepat proses penambahan.
Perhatikan suatu array untuk perkalian 4 X. 4 yang
ditunjukkan pada gambar 6.16a. struktur ini adalah
array umum yang ditunjukkan pada gambar 6.6,
dengan baris pertama hanya terdiri dari gerbang
AND yang mengimplementasikan produk bit m3q0,
m1q0 dan m0q0.
Group 4 PTIK 09
16
Suatu sirkuit yang menerapkan pembagian
dengan metode longhand ini beroperasi sebagai
berikut : menentukan posisi dividsor sesuai dengan
dividend dan melakukan pengurangan. Jika sisanya
nol atau positif, maka bit hasil bagi 1 ditentukan, dan
sisanya diperluas dengan bit lain dari dividend, divisor
ditempatkan ulang, dan dilakukan pengurangan yang
lain. Sebaliknya jika negatif, maka ditetapkan bit hasil
bagi 0, dividend dipulihkan dengan menambahkan
kembali dividsor tersebut, dan dividsor ditempatkan
ulang untuk pengurangan lain.
Group 4 PTIK 09
17
Group 4 PTIK 09
18
Floating-point atau bilangan titik mengambang,
adalah sebuah format bilangan yang dapat digunakan
untuk merepresentasikan sebuah nilai yang sangat besar
atau sangat kecil. Bilangan ini direpresentasikan
menjadi dua bagian, yakni bagian mantisa dan bagian
eksponen (E). Bagian mantisa menentukan digit dalam
angka tersebut, sementara eksponen menentukan nilai
berapa besar pangkat pada bagian mantisa tersebut
(pada posisi titik desimal). Sebagai contoh, bilangan
314600000
dan
bilangan
0.0000451
dapat
direpresentasikan dalam bentuk bilangan floating
point: 3146E5 dan 451E-7 (artinya 3146 * 10 pangkat 5,
dan 451 * 10 pangkat -7).
Group 4 PTIK 09
19
± X1X2X3X4X5X6X7x10±Y1Y2
Dimana XiYiadalah digit desimal. Kedua bilangan tersebut adalah
digit signifikan (7) dan rentang eksponen (±99) cukup untuk rentang
lebar perhitungan ilmiah. Dimungkinkan untuk memperkirakan presisi
mantissa dan rentang faktor skala ini dalam representasi biner yang
memiliki 32 bit, yang merupakan word length komputer standar. 24-bit
mantissa dapat secara perkiraan menyatakan bilangan desimal 7-digit,
dan eksponen 8-bit untuk basis 2 yang menyediakan faktor skala
dengan rentang yang masuk akal. Satu bit diperlukan untuk tanda
bilangan. Karena bit bukan nol pertama dari mantissa biner
ternormalisasi harus 1, maka tidak perlu disertakan secara eksplisit
dalam representasi. Oleh karena itu diperlukan total 32 bit.
Ini disebut format excess-27. Nilai akhir rentang ini, 0 dan 255.
Group 4 PTIK 09
20
IEEE (Institute of Engineers Electrical dan Electronics)
telah menghasilkan standar untuk aritmatika floating
point.. Standar ini menetapkan cara tunggal presisi (32 bit)
dan presisi ganda (64 bit) bilangan floating point untuk
diwakili, serta bagaimana aritmatika harus dilakukan pada
mereka.
32 bits
S
Tanda
bilangan
0
menandakan +
dan
1
menanakan -
E’
M
8 –bit signed
23-bit
exponent dalam
mantisa fractions
representasi
excess-127
Value reppresented= ± .M x 2E’-127
0
00101000
001010
-87
Nilai yang direpresentasikan
Group 4 PTIK 09 = 1.001010….0 x 2
21