Number Systems - University of California, Irvine

Download Report

Transcript Number Systems - University of California, Irvine

Introduction to Number Systems
Storyline …
•
•
•
•
•
•
•
Different number systems
Why use different ones?
Binary / Octal / Hexadecimal
Conversions
Negative number representation
Binary arithmetic
Overflow / Underflow
Number Systems
Four number system





Decimal (10)
Binary (2)
Octal
(8)
Hexadecimal (16)
............
Binary numbers?
• Computers work only on two states
– On
– Off
• Basic memory elements hold only two states
– Zero / One
• Thus a number system with two elements
{0,1}
• A binary digit – bit !
Decimal numbers
1439 = 1 x 103 + 4 x 102 + 3 x 101 + 9 x 100
Thousands
• Radix = 10
Hundreds
Tens
Ones
Binary Decimal
1101 = 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20
=1x8+1x4+0x2+1x1
=8+4+0+1
(1101)2 = (13)10
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, ….
Decimal
Binary
2
2
2
13
6
3
1
0
1
LSB
2
1
0
1
MSB
(13)10 = (1101)2
Octal Decimal
137 = 1 x 82 + 3 x 81 + 7 x 80
= 1 x 64 + 3 x 8 + 7 x 1
= 64 + 24 + 7
(137)8 = (95)10
• Digits used in Octal number system – 0 to 7
Decimal
8
8
8
95
11
1
Octal
7
3
1
0
(95)10 = (137)8
LSP
MSP
Hex Decimal
BAD = 11 x 162 + 10 x 161 + 13 x 160
= 11 x 256 + 10 x 16 + 13 x 1
= 2816 + 160 + 13
(BAD)16 = (2989)10
A = 10, B = 11, C = 12, D = 13, E = 14, F = 15
Decimal Hex
16 2989
16 186
16 11
13
10
11
0
(2989)10 = (BAD)16
LSP
MSP
Why octal or hex?
• Ease of use and conversion
• Three bits make one octal digit
111 010 110 101
7 2 6
5
=> 7265 in octal
• Four bits make one hexadecimal digit
4 bits = nibble
1110 1011 0101
E B
5
=> EB5 in hex
Negative numbers
Three representations
• Signed magnitude
• 1’s complement
• 2’s complement
Sign magnitude
•
•
•
•
Make MSB represent sign
Positive = 0
Negative = 1
E.g. for a 3 bit set Sign
– “-2”
1
MSB
Bit
Bit
1
0
LSB
1’s complement
• MSB as in sign magnitude
• Complement all the other bits
• Given a positive number complement all
bits to get negative equivalent
• E.g. for a 3 bit set
– “-2”
Sign
Bit
Bit
1
0
1
0
1
0
2’s complement
• 1’s complement plus one
• E.g. for a 3 bit set
– “-2”
Sign
Bit
Bit
1
1
0
0
1
0
2’s complement 1’s complement
Decimal Signed
number magnitude
3
011
011
011
2
010
010
010
1
001
001
001
0
000
000
000
-0
100
--111
-1
101
111
110
-2
110
110
101
-3
111
101
100
-4
100
No matter which scheme is used we get an even set of numbers but we need one less
(odd: as we have a unique zero)
Binary Arithmetic
• Addition / subtraction
• Unsigned
• Signed
– Using negative numbers
Unsigned: Addition
Like normal decimal addition
B
+
A
0
1
0101 (5)
0
0
1
+ 1001 (9)
1
1
10
1110 (14)
The carry out of the MSB is neglected
Unsigned: Subtraction
Like normal decimal subtraction
B
A
-
0
1
1001 (9)
0
0
11
- 0101 (5)
1
1
0
0100 (4)
A borrow (shown in red) from the MSB implies a
negative
Signed arithmetic
• Use a negative number representation
scheme
• Reduces subtraction to addition
2’s complement
Negative numbers in 2’s complement
001 ( 1)10
101 (-3)10
110 (-2)10
The carry out of the MSB is lost
Overflow / Underflow
• Maximum value N bits can hold : 2n –1
• When addition result is bigger than the biggest
number of bits can hold.
– Overflow
• When addition result is smaller than the smallest
number the bits can hold.
– Underflow
• Addition of a positive and a negative number
cannot give an overflow or underflow.
Overflow example
011 (+3)10
011 (+3)10
110 (+6)10
????
1’s complement computer interprets it as –1 !!
(+6)10 = (0110)2 requires four bits !
Underflow examples
Two’s complement addition
101 (-3)10
101 (-3)10
Carry
1 010 (-6)10 ????
The computer sees it as +2.
(-6)10 = (1010)2 again requires four bits !