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