ARSITEKTUR DAN
ORGANISASI KOMPUTER
PRIO HANDOKO, S.KOM., M.T.I.
PART 3:
THE CENTRAL
PROCESSING UNIT
CHAPTER 9
: COMPUTER ARITHMETIC
Kompetensi Dasar
CHAPTER 9:
COMPUTER ARITHMETIC
Mahasiswa memiliki pengetahuan mengenai proses aritmatika sistem komputer
Agenda
• The Arithmetic and Logic Unit • Integer Representation • Integer Arithmetic
• Floating-Point Representation • Floating-Point Arithmetic
9.2 Integer Representation
5
Arsitektur dan Organisasi Komputer
• Dalam sistem biner, angka dapat
direpresentasikan oleh digit 1 dan 0, tanda minus (-), titik (.), atau radix point (binary point).
• Penggunaan tanda minus (-) dan titik (.) tidak memliki manfaat dalam
penyimpanan dan pengolahan komputer. • Hanya digit biner (0 dan 1) saja yang
digunakan untuk merepresentasikannya.
9.2 Integer Representation (cont…)
6
Arsitektur dan Organisasi Komputer
Sign-Magnitude Representation
• Menggunakan bit yang terkiri dari sebuah untai biner untuk dapat menentukan sebuah bilangan memiliki nilai negatif atau positif (nilai tanda).
• Jika bit terkiri bernilai 1 negatif • Jika bit terkiri bernilai 0 positif
9.2 Integer Representation (cont…)
7
Arsitektur dan Organisasi Komputer
Kekurangan Sign-Magnitude
Representation
• Penambahan dan pengurangan memerlukan pertimbangan, baik tanda bilangan maupun nilainya agar dapat berjalan pada operasi yang diperlukan.
• Terdapat 2 representasi bilangan 0 sehingga akan menyulitkan pemeriksaan bilangan 0.
9.2 Integer Representation (cont…)
8
Arsitektur dan Organisasi Komputer
Two’s Complement Representation
• Two’s Complement, representasi yang digunakan untuk mengatasi 2 kelemahan pada representasi sign-magnitude.
9.2 Integer Representation (cont…)
9
Arsitektur dan Organisasi Komputer
Converting between Different Bit
Lengths
• Terkadang dibutuhkan merepresentasikan biner dengan jumlah bit (m) > dari jumlah bit asal (n)
• Pengubahan jumlah bit ini sangat mudah dilakukan menggunakan sign-magnitude.
9.2 Integer Representation (cont…)
10
Arsitektur dan Organisasi Komputer
• Caranya dengan menambahkan bit biner 0 pada posisi paling kiri dan seterusnya sejumlah yang dibutuhkan (dan) diakhiri dengan bit biner 1 jika nilai yang diinginkan adalah negatif.
• Bagaimana dengan bilangan two’s
complement?
9.2 Integer Representation (cont…)
Binary Point Representation
• Binary point adalah konsep yang digunakan untuk merepresentasikan bilangan pecahan • Binary point sama halnya dengan decimal
point pada bilangan desimal
• Binary point bertindak sebagai pemisah antara bilangan integer dan bagian pecahan
dari bilangan. integer part binary point fractial part
9.2 Integer Representation (cont…)
• Konsepnya pembobotannya memiliki9.2 Integer Representation (cont…)
13
Arsitektur dan Organisasi Komputer
Fixed Point Representation
• Konsep shifting merupakan kunci untuk memahami representasi fixed point • Dapat didefinisikan secara sederhana
dengan menempatkan binary point pada lokasi yang tetap/tidak berubah/ fixed dalam untai bilangan biner
Sumber: http://inst.eecs.berkeley.edu/~cs61c/sp06/handout/fixedpt.html
9.2 Integer Representation (cont…)
14
Arsitektur dan Organisasi Komputer
• Untuk mendefinisikan tipe bilangan fixed point, dibutuhkan 2 parameter:
1. panjang bilangan biner yang akan direpresentasikan (w), dan
2. posisi binary point(b) dalam bilangan biner tersebut.
3. Dinotasikan dengan fixed<w,b>
Sumber: http://inst.eecs.berkeley.edu/~cs61c/sp06/handout/fixedpt.html
9.3 Integer Arithmetic
15
Arsitektur dan Organisasi Komputer
Fungsi-fungsi aritmatika bilangan two’s complement:
• Negasi, aturan pembentukkan bilangan negatif (negation) bilangan integer. • Penjumlahan dan Pengurangan:
1. Aturan Overflow 2. Aturan Pengurangan
9.3 Integer Arithmetic (cont…)
16
Arsitektur dan Organisasi Komputer
Aturan Overflow
Bila dua buah bilangan ditambahkan, dan keduanya positif atau keduanya negatif, maka overflow akan terjadi bila dan hanya
9.3 Integer Arithmetic (cont…)
17
Arsitektur dan Organisasi Komputer
Aturan Pengurangan
Untuk mengurangkan sebuah bilangan(subtrahend - S) dari bilangan lainnya (minuend - M), anggaplah two’s complement
- S dan tambahkan hasilnya ke M.
9.3 Integer Arithmetic (cont…)
18
Arsitektur dan Organisasi Komputer
Multiplication
• Pengalian bilangan integer sebagai: • unsigned integer
9.3 Integer Arithmetic (cont…)
• two’s complement, terdapat 2 buah
aturanpengalian bilangan two’s complement
1. Aturan pengalian 2. Booth’s Algorithm
9.3 Integer Arithmetic (cont…)
Cara 1: Aturan Pengalian
9.3 Integer Arithmetic (cont…)
22
Arsitektur dan Organisasi Komputer
Cara 2:
Booth’s Algorithm
Cara ini memiliki keuntungan dalammeningkatakan kecepatan proses perkalian. 1. Unsigned integers
2. Two’scomplement integers
(cont…)
23
Arsitektur dan Organisasi Komputer
Produk perkalian bersama dengan Q (A,Q)
Register yang menyimpan bit carry hasil penjumlahan
Bit terkanan dari untai biner multiplier (Q) least significant bit
9.3 Integer Arithmetic (cont…)
24
Arsitektur dan Organisasi Komputer
Unsigned integers
Booth’s Algorithm
9.3 Integer
Arithmetic
(cont…)
25
Arsitektur dan Organisasi Komputer
Two’s complement integers booth’s algorithm
Bit terkanan dari untai biner multiplier (Q) least significant bit
9.3 Integer Arithmetic (cont…)
26
Arsitektur dan Organisasi Komputer
Two’s Complement Integers Booth’s
Algorithm
9.3 Integer Arithmetic (cont…)
27
Arsitektur dan Organisasi Komputer
Division
1. Unsigned binary integer division
Unsigned binary integer division
9.3 Integer
Arithmetic
(cont
…)
9.3 Integer Arithmetic (cont…)
30
Arsitektur dan Organisasi Komputer
Floating Point Representation
Sebuah mode yang merepresentasikan bilangan sebagai dua urutan bit, satu mewakili angka dalam angka dan yang lainnya eksponen yang
menentukan posisi radix point.
Sumber: http://homepage.cs.uiowa.edu/~atkinson/m170.dir/overton.pdf
9.3 Integer Arithmetic (cont…)
31
Arsitektur dan Organisasi Komputer
Parts of Floating Point Number
-0.9876 x 10
-3sign of mantissa
location of decimal point
mantissa base
exponent
9.3 Integer Arithmetic (cont…)
32
Arsitektur dan Organisasi Komputer
Exponential Notation
Sumber:
http://www.iro.umontreal.ca/~aboulham/F1214/Session%206Arithm/Floating_ Point_Numbers.pdf
9.3 Integer Arithmetic (cont…)
33
Arsitektur dan Organisasi Komputer
IEEE 754 Standard
• Standar yang digunakan untuk representasi bilangan floating point
•
Single precision
: 32 bit, terdiri dari:
• Sign bit (1 bit)
• Exponent (8 bits)
• Mantissa (23 bits)
• Double precision: 64 bit, terdiri dari:
• Sign bit (1 bit)
• Exponent (11 bits)
• Mantissa (52 bits)
Sumber:
9.3 Integer Arithmetic (cont…)
34
Arsitektur dan Organisasi Komputer
Single Precision Format
Sumber:
http://www.iro.umontreal.ca/~aboulham/F1214/Session%206Arithm/Floating_ Point_Numbers.pdf
9.3 Integer Arithmetic (cont…)
35
Arsitektur dan Organisasi Komputer
Double Precision Format
Sumber:
http://www.iro.umontreal.ca/~aboulham/F1214/Session%206Arithm/Floating_ Point_Numbers.pdf
9.3 Integer Arithmetic (cont…)
Excess Notation
• Notasi excess digunakan untuk menentukan nilai eksponen
• Notasi excess yang digunakan,adalah: • Single precision: excess 127
• Double precision: excess 1023 • Contoh: Excess 127
Eksponen: 10000111 Representasi: 135 - 127 = 8
9.3 Integer Arithmetic (cont…)
Normalization
• Bagian yang dinormalkan mantissa • Menempatkan lokasi desimal di sebelah kiri
dan menambahkan bit “1” pada posisi di sebelah kiri lokasi desimal. Contoh: Sebuah untai biner disajikan sebagai berikut:
9.3 Integer Arithmetic (cont…)
38
Arsitektur dan Organisasi Komputer
Floating Point Arithmetic Addition and Substraction
• Memastikan bahwa kedua operand memiliki nilai eksponen yang sama
• Hal ini membutuhkan proses radix point shifting
• Terdapat 4 tahapan dasar:
1. Check for zeros.
2. Align the significands.
3. Add or subtract the significands.
4. Normalize the result.
9.3 Integer Arithmetic (cont…)
39
Arsitektur dan Organisasi Komputer
Sumber:
http://www.iro.umontreal.ca/~aboulham/F1214/Session%206Arithm/Floating_ Point_Numbers.pdf
9.3 Integer Arithmetic (cont…)
40
Arsitektur dan Organisasi Komputer
Multiplication and Division
- THANK YOU -