Arsitektur Komputer Pertemuan ke 2 Arit
Arsitektur Komputer
Pertemuan ke-2
- Aritmatika Komputer
>>> Sistem bilangan & Format Data
- Perkembangan Perangkat Keras Komputer
ARITMATIKA KOMPUTER
Materi :
Englander, bab 2 dan 3
Stallings, bab 8
IEEE 754 pada website IEEE
Komputer sistem biner
Tanya kenapa?
Desain komputer terdahulu : desimal
◦ Mark I and ENIAC
John von Neumann mengusulkan
pemrosesan data biner (1945)
◦ Desain komputer yang lebih sederhana
◦ Digunakan u/ instruksi dan data
Hubungan alami antara
switch on/off dan kalkulasi
menggunakan logika Boolean
Chapter 2 Number Systems
On
Off
True
False
Yes
No
1
0
2-3
Biner : Representasi Integer
Hanya memiliki 1 dan 0 untuk
merepresentasikan semuanya
Angka positif disimpan dalam biner
◦ e.g. 41=00101001
Tidak ada tanda negatif
Two’s compliment
◦ Sign-Magnitude
Sign-Magnitude
Bit paling kiri bit penanda
0 = positif
1 = negatif
+18 = 00010010
-18 = 10010010
Masalah
◦ Perlu mempertimbangkan kedua tanda
dan besaran dalam aritmatika
◦ Dua representasi “nol” (+0 dan -0)
Komplemen Dua
+3 = 00000011
+2 = 00000010
+1 = 00000001
+0 = 00000000
-1 = 11111111
-2 = 11111110
-3 = 11111101
Keuntungan
Satu representasi “nol” (00000000)
Perhitungan aritmatika lebih mudah
Cukup mudah menegatifkan
◦ 3 = 00000011
◦ Boolean complement :
◦ Add 1 to LSB
:
11111100
11111101
Geometric Depiction of Twos
Complement Integers
Negation Special Case 1
0=
00000000
Bitwise not
11111111
Add 1 to LSB
+1
Result
1 00000000
Overflow is ignored, so:
-0=0
Range of Numbers
8 bit 2s compliment
16 bit 2s compliment
◦ +127 = 01111111 = 27 -1
◦ -128 = 10000000 = -(27)
◦ +32767 = 011111111 11111111 = 215 - 1
◦ -32768 = 100000000 00000000 = -215
Aritmatika
Desimal atau basis 10
◦ Asal: perhitungan menggunakan jari
◦ “Digit” berasal dari bahasa Latin digitus yang
artinya “jari”
Base / Basis : angka pada beberapa digit
yang berbeda termasuk nol
◦ Contoh : Basis 10 10 digit, 0 sampai 9
Binary basis 2
Bit (binary digit): 2 digit, 0 dan 1
Octal atau basis 8: 8 digit, 0 sampai 7
Hexadecimal atau basis 16:
16 digits, 0 sampai F
◦ Examples: 1010 = A16; 1110 = B16
Chapter 2 Number Systems
211
“Keeping Track of the Bits”
“Bit” umumnya disimpan dan
dimanipulasi pada suatu grup:
◦ 8 bits = 1 byte
◦ 4 bytes = 1 word
Jumlah bit yang digunakan :
◦ Mempengaruhi akurasi hasil
◦ Membatasi ukuran angka yang bisa
dimanipulasi oleh komputer
Chapter 2 Number Systems
212
Angka : Representasi Fisik
Jumlah jeruk yang sama
dengan angka yang
berbeda
◦ Cave dweller: IIIII
◦ Roman: V
◦ Arabic: 5
Basis berbeda, namun
jumlah sama
◦
510
◦ 1012
◦ 123
Chapter 2 Number Systems
2-13
Number System
Roman: position independent
Modern: based on positional notation
(place value)
◦ Decimal system: system of positional notation
based on powers of 10.
◦ Binary system: system of positional notation
based powers of 2
◦ Octal system: system of positional notation
based on powers of 8
◦ Hexadecimal system: system of positional
notation based powers of 16
Chapter 2 Number Systems
214
Positional Notation: Base 10
43 = 4 x 101 + 3 x 100
10’s place
1’s place
Place
101
100
Value
10
1
4 x 10
3 x1
40
3
Evaluate
Sum
Chapter 2 Number Systems
215
Positional Notation: Base 10
527 = 5 x 102 + 2 x 101 + 7 x 100
100’s place
1’s place
10’s place
Place
102
101
100
Value
100
10
1
5 x 100
2 x 10
7 x1
500
20
7
Evaluate
Sum
Chapter 2 Number Systems
216
Positional Notation: Octal
6248 = 40410
64’s place
8’s place
1’s place
Place
82
81
80
Value
64
8
1
Evaluate
6 x 64
2x8
4x1
Sum for
Base 10
384
16
4
Chapter 2 Number Systems
217
Positional Notation:
Hexadecimal
6,70416 = 26,37210
4,096’s place
256’s place
16’s place
Place
163
162
161
160
Value
4,096
256
16
1
6x
7 x 256
0 x 16
4x1
1,792
0
4
Evaluate
1’s place
4,096
Sum for
Base 10
24,576
Chapter 2 Number Systems
218
Positional Notation: Binary
1101 01102 = 21410
Place
27
26
25
24
23
22
21
20
Value
128
64
32
16
8
4
2
1
0 x 32
1 x16
0x8
1x4
1x2
0x1
0
16
0
4
2
0
Evaluate
Sum for
Base 10
1 x 128 1 x 64
128
Chapter 2 Number Systems
64
2-19
Estimating Magnitude: Binary
1101 01102 = 21410
1101 01102 > 19210 (128 + 64 + additional bits to the right)
Place
27
26
25
24
23
22
21
20
Value
128
64
32
16
8
4
2
1
0 x 32
1 x16
0x8
1x4
1x2
0x1
0
16
0
4
2
0
Evaluate
Sum for
Base 10
1 x 128 1 x 64
128
Chapter 2 Number Systems
64
2-20
Range of Possible Numbers
R = BK where
Example #1: Base 10, 2 digits
Example #2: Base 2, 16 digits
◦ R = range
◦ B = base
◦ K = number of digits
◦ R = 102 = 100 different numbers (0…99)
◦ R = 216 = 65,536 or 64K
◦ 16-bit PC can store 65,536 different number
values
Chapter 2 Number Systems
2-21
Decimal Range for Bit Widths
Bits
Digits
1
0+
4
1+
8
2+
10
3
1,024 (1K)
16
4+
65,536 (64K)
20
6
32
9+
64
19+
Approx. 1.6 x 1019
128
38+
Approx. 2.6 x 1038
Chapter 2 Number Systems
Range
2 (0 and 1)
16 (0 to 15)
256
1,048,576 (1M)
4,294,967,296 (4G)
2-22
Base or Radix
Base:
◦ The number of different symbols required to
represent any given number
The larger the base, the more numerals are
required
◦
◦
◦
◦
Base 10:
Base 2:
Base 8:
Base 16:
0,1, 2,3,4,5,6,7,8,9
0,1
0,1,2, 3,4,5,6,7
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Chapter 2 Number Systems
223
Number of Symbols
vs. Number of Digits
For a given number, the larger the
base
◦ the more symbols required
◦ but the fewer digits needed
Example #1:
◦ 6516
10110 1458
110 01012
Example #2:
◦ 11C16
28410 4348
1 0001 11002
Chapter 2 Number Systems
224
Counting in Base 2
Equivalent
Binary
1’s (20)
Number
0
0 x 20
0
1
1 x 20
1
Number
8’s (23)
4’s (22)
2’s (21)
Decimal
10
1 x 21
0 x 20
2
11
1 x 21
1 x 20
3
100
1 x 22
101
1 x 22
110
1 x 22
1 x 21
111
1 x 22
1 x 21
1000
1 x 23
1001
1 x 23
1010
1 x 23
Chapter 2 Number Systems
4
1 x 20
5
6
1 x 20
7
8
1 x 20
9
1 x 21
10
2-25
Addition
Base
Problem
Largest Single Digit
Decimal
6
+3
9
Octal
6
+1
7
Hexadecimal
6
+9
F
Binary
1
+0
1
Chapter 2 Number Systems
2-26
Addition
Base
Problem
Carry
Answer
Decimal
6
+4
Carry the 10
10
Octal
6
+2
Carry the 8
10
Hexadecimal
6
+A
Carry the 16
10
Binary
1
+1
Carry the 2
10
Chapter 2 Number Systems
2-27
Binary Arithmetic
1
1
1
1
1
+
1
0
Chapter 2 Number Systems
0
1
1
0
1
1
0
1
1
0
1
1
0
0
0
0
1
1
2-28
Binary Arithmetic
Addition
◦ Boolean using
XOR and AND
+
0
1
Multiplication
◦ AND
◦ Shift
Division
x
0
1
0
1
0
1
1
10
0
1
0
00
00
01
Chapter 2 Number Systems
229
Binary Arithmetic: Boolean Logic
Boolean logic without performing arithmetic
◦ EXCLUSIVE-OR
Output is “1” only if either input, but not both inputs, is a “1”
◦ AND (carry bit)
Output is “1” if and only both inputs are a “1”
1
+
1
1
1
1
1
0
0
Chapter 2 Number Systems
1
0
1
0
1
1
0
0
1
1
0
0
1
1
1
0
1
2-30
Binary Multiplication
Boolean logic without performing
arithmetic
◦ AND (carry bit)
Output is “1” if and only both inputs are a “1”
◦ Shift
Shifting a number in any base left one digit multiplies its
value by the base
Shifting a number in any base right one digit divides its
value by the base
Examples:
1010 shift left = 10010
1010 shift right = 110
102 shift left = 1002
102 shift right = 12
Chapter 2 Number Systems
2-31
Binary Multiplication
1
1 1
0
1
1
0
1
1 1
0
1 1’s place
0
2’s place
1
1
0 1
0
0
0 0
Chapter 2 Number Systems
4’s place (bits shifted to line up with 4’s place of multiplier)
0
1 Result (AND)
2-32
Binary Multiplication
1
x
1
1
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1 1
0
1
1
0
1
1
1
0
1 1
0
1
0
0
0
0 0
0
1
2’s place (bits shifted to line
up with 2’s place of multiplier)
4’s place
32’s place
0
1
1
1
0 Result (AND)
Note the 0 at the end, since
the 1’s place is not brought
down.
Note: multiple carries are possible.
Chapter 2 Number Systems
2-33
From Base 10 to Base 2
Base 10 42
Quotient
Remainder
2 ) 42 ( 0 Least significant bit
2 ) 21 ( 1
2 ) 10 ( 0
2)
2)
2)
Base 2
Chapter 2 Number Systems
5 (1
2 (0
1
Most significant bit
101010
2-34
From Base 10 to Base 16
Base 10 5,735
Quotient 16 )
16 )
16 )
16 )
16 )
Base 16
Chapter 2 Number Systems
Remainder
5,735 ( 7 Least significant bit
358 ( 6
22 ( 6
1 ( 1 Most significant bit
0
1667
2-35
From Base 10 to Base 16
Base 10 8,039
Quotient 16 )
16 )
16 )
16 )
16 )
Base 16
Chapter 2 Number Systems
Remainder
8,039 ( 7 Least significant bit
502 ( 6
31 ( 15
1 ( 1 Most significant bit
0
1F67
2-36
From Base 8 to Base 10
72638 = 3,76310
Power
Sum for
Base 10
Chapter 2 Number Systems
83
82
81
80
512
64
8
1
x7
x2
x6
x3
3,584
128
48
3
2-37
From Base 8 to Base 10
72638 = 3,76310
7
x8
56 + 2 =
Chapter 2 Number Systems
58
x8
464 + 6 =
470
x8
3760 + 3 = 3,763
2-38
From Base 16 to Base 2
The nibble approach
◦ Hex easier to read and write than binary
Base 16
1
Base 2 0001
F
6
7
1111
0110
0111
◦ Why hexadecimal?
Modern computer operating systems and networks
present variety of troubleshooting data in hex format
Chapter 2 Number Systems
2-39
Hardware for Addition and
Subtraction
Unsigned Binary Multiplication
Expressible Numbers
IEEE 754
Standard for floating point storage
32 and 64 bit standards
8 and 11 bit exponent respectively
Extended formats (both mantissa and
exponent) for intermediate results
Floating
Point
Multiplication
Floating
Point
Division
Pertemuan ke-2
- Aritmatika Komputer
>>> Sistem bilangan & Format Data
- Perkembangan Perangkat Keras Komputer
ARITMATIKA KOMPUTER
Materi :
Englander, bab 2 dan 3
Stallings, bab 8
IEEE 754 pada website IEEE
Komputer sistem biner
Tanya kenapa?
Desain komputer terdahulu : desimal
◦ Mark I and ENIAC
John von Neumann mengusulkan
pemrosesan data biner (1945)
◦ Desain komputer yang lebih sederhana
◦ Digunakan u/ instruksi dan data
Hubungan alami antara
switch on/off dan kalkulasi
menggunakan logika Boolean
Chapter 2 Number Systems
On
Off
True
False
Yes
No
1
0
2-3
Biner : Representasi Integer
Hanya memiliki 1 dan 0 untuk
merepresentasikan semuanya
Angka positif disimpan dalam biner
◦ e.g. 41=00101001
Tidak ada tanda negatif
Two’s compliment
◦ Sign-Magnitude
Sign-Magnitude
Bit paling kiri bit penanda
0 = positif
1 = negatif
+18 = 00010010
-18 = 10010010
Masalah
◦ Perlu mempertimbangkan kedua tanda
dan besaran dalam aritmatika
◦ Dua representasi “nol” (+0 dan -0)
Komplemen Dua
+3 = 00000011
+2 = 00000010
+1 = 00000001
+0 = 00000000
-1 = 11111111
-2 = 11111110
-3 = 11111101
Keuntungan
Satu representasi “nol” (00000000)
Perhitungan aritmatika lebih mudah
Cukup mudah menegatifkan
◦ 3 = 00000011
◦ Boolean complement :
◦ Add 1 to LSB
:
11111100
11111101
Geometric Depiction of Twos
Complement Integers
Negation Special Case 1
0=
00000000
Bitwise not
11111111
Add 1 to LSB
+1
Result
1 00000000
Overflow is ignored, so:
-0=0
Range of Numbers
8 bit 2s compliment
16 bit 2s compliment
◦ +127 = 01111111 = 27 -1
◦ -128 = 10000000 = -(27)
◦ +32767 = 011111111 11111111 = 215 - 1
◦ -32768 = 100000000 00000000 = -215
Aritmatika
Desimal atau basis 10
◦ Asal: perhitungan menggunakan jari
◦ “Digit” berasal dari bahasa Latin digitus yang
artinya “jari”
Base / Basis : angka pada beberapa digit
yang berbeda termasuk nol
◦ Contoh : Basis 10 10 digit, 0 sampai 9
Binary basis 2
Bit (binary digit): 2 digit, 0 dan 1
Octal atau basis 8: 8 digit, 0 sampai 7
Hexadecimal atau basis 16:
16 digits, 0 sampai F
◦ Examples: 1010 = A16; 1110 = B16
Chapter 2 Number Systems
211
“Keeping Track of the Bits”
“Bit” umumnya disimpan dan
dimanipulasi pada suatu grup:
◦ 8 bits = 1 byte
◦ 4 bytes = 1 word
Jumlah bit yang digunakan :
◦ Mempengaruhi akurasi hasil
◦ Membatasi ukuran angka yang bisa
dimanipulasi oleh komputer
Chapter 2 Number Systems
212
Angka : Representasi Fisik
Jumlah jeruk yang sama
dengan angka yang
berbeda
◦ Cave dweller: IIIII
◦ Roman: V
◦ Arabic: 5
Basis berbeda, namun
jumlah sama
◦
510
◦ 1012
◦ 123
Chapter 2 Number Systems
2-13
Number System
Roman: position independent
Modern: based on positional notation
(place value)
◦ Decimal system: system of positional notation
based on powers of 10.
◦ Binary system: system of positional notation
based powers of 2
◦ Octal system: system of positional notation
based on powers of 8
◦ Hexadecimal system: system of positional
notation based powers of 16
Chapter 2 Number Systems
214
Positional Notation: Base 10
43 = 4 x 101 + 3 x 100
10’s place
1’s place
Place
101
100
Value
10
1
4 x 10
3 x1
40
3
Evaluate
Sum
Chapter 2 Number Systems
215
Positional Notation: Base 10
527 = 5 x 102 + 2 x 101 + 7 x 100
100’s place
1’s place
10’s place
Place
102
101
100
Value
100
10
1
5 x 100
2 x 10
7 x1
500
20
7
Evaluate
Sum
Chapter 2 Number Systems
216
Positional Notation: Octal
6248 = 40410
64’s place
8’s place
1’s place
Place
82
81
80
Value
64
8
1
Evaluate
6 x 64
2x8
4x1
Sum for
Base 10
384
16
4
Chapter 2 Number Systems
217
Positional Notation:
Hexadecimal
6,70416 = 26,37210
4,096’s place
256’s place
16’s place
Place
163
162
161
160
Value
4,096
256
16
1
6x
7 x 256
0 x 16
4x1
1,792
0
4
Evaluate
1’s place
4,096
Sum for
Base 10
24,576
Chapter 2 Number Systems
218
Positional Notation: Binary
1101 01102 = 21410
Place
27
26
25
24
23
22
21
20
Value
128
64
32
16
8
4
2
1
0 x 32
1 x16
0x8
1x4
1x2
0x1
0
16
0
4
2
0
Evaluate
Sum for
Base 10
1 x 128 1 x 64
128
Chapter 2 Number Systems
64
2-19
Estimating Magnitude: Binary
1101 01102 = 21410
1101 01102 > 19210 (128 + 64 + additional bits to the right)
Place
27
26
25
24
23
22
21
20
Value
128
64
32
16
8
4
2
1
0 x 32
1 x16
0x8
1x4
1x2
0x1
0
16
0
4
2
0
Evaluate
Sum for
Base 10
1 x 128 1 x 64
128
Chapter 2 Number Systems
64
2-20
Range of Possible Numbers
R = BK where
Example #1: Base 10, 2 digits
Example #2: Base 2, 16 digits
◦ R = range
◦ B = base
◦ K = number of digits
◦ R = 102 = 100 different numbers (0…99)
◦ R = 216 = 65,536 or 64K
◦ 16-bit PC can store 65,536 different number
values
Chapter 2 Number Systems
2-21
Decimal Range for Bit Widths
Bits
Digits
1
0+
4
1+
8
2+
10
3
1,024 (1K)
16
4+
65,536 (64K)
20
6
32
9+
64
19+
Approx. 1.6 x 1019
128
38+
Approx. 2.6 x 1038
Chapter 2 Number Systems
Range
2 (0 and 1)
16 (0 to 15)
256
1,048,576 (1M)
4,294,967,296 (4G)
2-22
Base or Radix
Base:
◦ The number of different symbols required to
represent any given number
The larger the base, the more numerals are
required
◦
◦
◦
◦
Base 10:
Base 2:
Base 8:
Base 16:
0,1, 2,3,4,5,6,7,8,9
0,1
0,1,2, 3,4,5,6,7
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Chapter 2 Number Systems
223
Number of Symbols
vs. Number of Digits
For a given number, the larger the
base
◦ the more symbols required
◦ but the fewer digits needed
Example #1:
◦ 6516
10110 1458
110 01012
Example #2:
◦ 11C16
28410 4348
1 0001 11002
Chapter 2 Number Systems
224
Counting in Base 2
Equivalent
Binary
1’s (20)
Number
0
0 x 20
0
1
1 x 20
1
Number
8’s (23)
4’s (22)
2’s (21)
Decimal
10
1 x 21
0 x 20
2
11
1 x 21
1 x 20
3
100
1 x 22
101
1 x 22
110
1 x 22
1 x 21
111
1 x 22
1 x 21
1000
1 x 23
1001
1 x 23
1010
1 x 23
Chapter 2 Number Systems
4
1 x 20
5
6
1 x 20
7
8
1 x 20
9
1 x 21
10
2-25
Addition
Base
Problem
Largest Single Digit
Decimal
6
+3
9
Octal
6
+1
7
Hexadecimal
6
+9
F
Binary
1
+0
1
Chapter 2 Number Systems
2-26
Addition
Base
Problem
Carry
Answer
Decimal
6
+4
Carry the 10
10
Octal
6
+2
Carry the 8
10
Hexadecimal
6
+A
Carry the 16
10
Binary
1
+1
Carry the 2
10
Chapter 2 Number Systems
2-27
Binary Arithmetic
1
1
1
1
1
+
1
0
Chapter 2 Number Systems
0
1
1
0
1
1
0
1
1
0
1
1
0
0
0
0
1
1
2-28
Binary Arithmetic
Addition
◦ Boolean using
XOR and AND
+
0
1
Multiplication
◦ AND
◦ Shift
Division
x
0
1
0
1
0
1
1
10
0
1
0
00
00
01
Chapter 2 Number Systems
229
Binary Arithmetic: Boolean Logic
Boolean logic without performing arithmetic
◦ EXCLUSIVE-OR
Output is “1” only if either input, but not both inputs, is a “1”
◦ AND (carry bit)
Output is “1” if and only both inputs are a “1”
1
+
1
1
1
1
1
0
0
Chapter 2 Number Systems
1
0
1
0
1
1
0
0
1
1
0
0
1
1
1
0
1
2-30
Binary Multiplication
Boolean logic without performing
arithmetic
◦ AND (carry bit)
Output is “1” if and only both inputs are a “1”
◦ Shift
Shifting a number in any base left one digit multiplies its
value by the base
Shifting a number in any base right one digit divides its
value by the base
Examples:
1010 shift left = 10010
1010 shift right = 110
102 shift left = 1002
102 shift right = 12
Chapter 2 Number Systems
2-31
Binary Multiplication
1
1 1
0
1
1
0
1
1 1
0
1 1’s place
0
2’s place
1
1
0 1
0
0
0 0
Chapter 2 Number Systems
4’s place (bits shifted to line up with 4’s place of multiplier)
0
1 Result (AND)
2-32
Binary Multiplication
1
x
1
1
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1 1
0
1
1
0
1
1
1
0
1 1
0
1
0
0
0
0 0
0
1
2’s place (bits shifted to line
up with 2’s place of multiplier)
4’s place
32’s place
0
1
1
1
0 Result (AND)
Note the 0 at the end, since
the 1’s place is not brought
down.
Note: multiple carries are possible.
Chapter 2 Number Systems
2-33
From Base 10 to Base 2
Base 10 42
Quotient
Remainder
2 ) 42 ( 0 Least significant bit
2 ) 21 ( 1
2 ) 10 ( 0
2)
2)
2)
Base 2
Chapter 2 Number Systems
5 (1
2 (0
1
Most significant bit
101010
2-34
From Base 10 to Base 16
Base 10 5,735
Quotient 16 )
16 )
16 )
16 )
16 )
Base 16
Chapter 2 Number Systems
Remainder
5,735 ( 7 Least significant bit
358 ( 6
22 ( 6
1 ( 1 Most significant bit
0
1667
2-35
From Base 10 to Base 16
Base 10 8,039
Quotient 16 )
16 )
16 )
16 )
16 )
Base 16
Chapter 2 Number Systems
Remainder
8,039 ( 7 Least significant bit
502 ( 6
31 ( 15
1 ( 1 Most significant bit
0
1F67
2-36
From Base 8 to Base 10
72638 = 3,76310
Power
Sum for
Base 10
Chapter 2 Number Systems
83
82
81
80
512
64
8
1
x7
x2
x6
x3
3,584
128
48
3
2-37
From Base 8 to Base 10
72638 = 3,76310
7
x8
56 + 2 =
Chapter 2 Number Systems
58
x8
464 + 6 =
470
x8
3760 + 3 = 3,763
2-38
From Base 16 to Base 2
The nibble approach
◦ Hex easier to read and write than binary
Base 16
1
Base 2 0001
F
6
7
1111
0110
0111
◦ Why hexadecimal?
Modern computer operating systems and networks
present variety of troubleshooting data in hex format
Chapter 2 Number Systems
2-39
Hardware for Addition and
Subtraction
Unsigned Binary Multiplication
Expressible Numbers
IEEE 754
Standard for floating point storage
32 and 64 bit standards
8 and 11 bit exponent respectively
Extended formats (both mantissa and
exponent) for intermediate results
Floating
Point
Multiplication
Floating
Point
Division