Number Systems
Types of number systems
Number bases
Range of possible numbers
Conversion between number bases
Common powers
Arithmetic in different number bases
Shifting a number
1. 1
Lecture 2
Number Systems
ITEC 1000 “Introduction to Information Technology”
Prof. Peter Khaiter
Hexadecimal
Decimal Octal
Binary
2. 2
Lecture Outline:
Types of number systems
Number bases
Range of possible numbers
Conversion between number bases
Common powers
Arithmetic in different number bases
Shifting a number
3. 3
Types of Number Systems
Additive: Numbers have intrinsic value:
e.g.: Roman Numerals: LVIII = 50 + 5 + 1 + 1
+ 1 = 58
Positional: Value depends on position: e.g.:
Decimal system: 55 = 5 x 10 + 5 x 1
Additive Number Systems are not used
much any more:
Awkward to use.
Prone to errors.
4. 4
Definitions
The Base of a number system – how
many different digits (incl. zero) are
used in the system.
Base 2: 0, 1
Base 5: 0, 1, 2, 3, 4
Base 8: 0, 1, 2, 3, 4, 5, 6, 7
Base 10: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Base 16: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
5. 5
Definitions
Bit – a cell holding a single binary
number (0 or 1)
Byte = 8 bits (can hold 28 = 256
different patterns/values)
Word – a fixed-sized group of bits
that the computer handles together.
Typical word sizes: 4, 8, 16, 32, 64,
128 bits
1K = 1024 bytes
7. 7
Common Number Systems
System Base Symbols
Used by
humans?
Used in
computers?
Decimal 10 0, 1, … 9 Yes No
Binary 2 0, 1 No Yes
Octal 8 0, 1, … 7 No Yes
Hexa-
decimal
16 0, 1, … 9,
A, B, … F
No Yes
8. 8
Positional decimal system
The number 125 means:
1 group of 100 (100 = 102)
2 groups of 10 (10 = 101)
5 groups of 1 (1 = 100)
9. 9
Place values (1 of 2)
In our usual positional number system, the
meaning of a digit depends on where it is
located in the number
3 groups of 1000
7 groups of 100
3 groups of 10
2 groups of 1
Example: 3 7 3 2
10. 10
Place values (2 of 2)
12510 => 5 x 100 = 5
2 x 101 = 20
1 x 102 = 100
125
Base
Weight
11. 11
Representing in bases: 10, 2, 8, 16
86510 = 8 x 102 + 6 x 101 + 5 x 100 = 800
+ 60 + 5
10112 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20
= 8 + 2 + 1 = 1110
258 = 2 x 81 + 5 x 80 = 16 + 5 = 2110
A716 = 10 x 161 + 7 x 160 = 160 + 7 =
16710
Note: The subscript naming the base is
itself given in base ten (10), by
convention.
Base
15. 15
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
Evaluate 1 x 128 1 x 64 0 x 32 1 x16 0 x 8 1 x 4 1 x 2 0 x 1
Sum for
Base 10
128 64 0 16 0 4 2 0
16. 16
Range of possible numbers
R = BK where
R = range
B = base
K = number of digits
Example #1: Base 10, 2 digits
R = 102 = 100 different numbers (0…99)
Example #2: Base 2, 16 digits
R = 216 = 65,536 or 64K
16-bit PC can store 65,536 different number
values
17. 17
Decimal Range for Bit Widths
Bits Digits Range
1 0+ 2 (0 and 1)
4 1+ 16 (0 to 15)
8 2+ 256
10 3+ 1,024 (1K)
16 4+ 65,536 (64K)
20 6+ 1,048,576 (1M)
32 9+ 4,294,967,296 (4G)
64 19+ Approx. 1.6 x 1019
128 38+ Approx. 2.6 x 1038
20. 20
Binary to Decimal (2 of 3)
Technique
Multiply each bit by 2n, where n is the
“weight” of the bit
The weight is the position of the bit, starting
from 0 on the right
Add the results
21. 21
Binary to Decimal (3 of 3)
1010112 => 1 x 20 = 1
1 x 21 = 2
0 x 22 = 0
1 x 23 = 8
0 x 24 = 0
1 x 25 = 32
4310
Bit “0”
23. 23
Octal to Decimal (2 of 3)
Technique
Multiply each bit by 8n, where n is the
“weight” of the bit
The weight is the position of the bit,
starting from 0 on the right
Add the results together
Note: 80 = 1, 81 = 8,
82 = 64 83 = 512, Etc.
24. 24
Octal to Decimal (3 of 3)
7248 => 4 x 80 = 4 x 1 = 4
2 x 81 = 2 x 8 = 16
7 x 82 = 7 x 64 = 448
46810
26. 26
Hexadecimal to Decimal (2 of 3)
Technique
Multiply each bit by 16n, where n is the
“weight” of the bit
The weight is the position of the bit, starting
from 0 on the right
Add the results
Note: 160 = 1, 161 = 16,
162 = 256 163 = 4096, Etc.
27. 27
Hexadecimal to Decimal (3 of 3)
ABC16 => C x 160 = 12 x 1 = 12
B x 161 = 11 x 16 = 176
A x 162 = 10 x 256 = 2560
274810
29. 29
Decimal to Binary (2 of 3)
Technique
Divide by two, keep track of the remainder
First remainder is bit 0 (LSB, least-significant
bit)
Second remainder is bit 1
Etc.
57. 57
Common Powers (1 of 2)
Base 10
Power Preface Symbol
10-12 pico p
10-9 nano n
10-6 micro
10-3 milli m
103 kilo k
106 mega M
109 giga G
1012 tera T
Value
.000000000001
.000000001
.000001
.001
1000
1000000
1000000000
1000000000000
58. 58
Common Powers (2 of 2)
Base 2 Power Preface Symbol
210 kilo k
220 mega M
230 Giga G
Value
1024
1048576
1073741824
What is the value of “k”, “M”, and “G”?
In computing, particularly w.r.t. memory,
the base-2 interpretation generally applies
59. 59
Example
/ 230 =
1. Double click on My Computer
2. Right click on C:
3. Click on Properties
60. 60
Multiplying powers
For common bases, add powers
26 210 = 216 = 65,536
or…
26 210 = 64 210 = 64k
ab ac = ab+c
62. 62
Fractions
Number point or radix point
Decimal point in base 10
Binary point in base 2
No exact relationship between
fractional numbers in different
number bases
Exact conversion may be impossible
63. 63
Decimal fractions
Move the number point one place to the
right
Effect: multiplies the number by the base
number
Example: 139.010 139010
Move the number point one place to the
left
Effect: divides the number by the base
number
Example: 139.010 13.910
64. 64
Fractions: Base 10
Place 10-1 10-2 10-3 10-4
Value 1/10 1/100 1/1000 1/10000
Evaluate 2 x 1/10 5 x 1/100 8 x 1/1000 9 x1/10000
Sum .2 .05 .008 .0009
.258910
10-1 10-2 10-3 10-4
65. 65
Fractions: Base 2
.1010112 = 0.67187510
Place 2-1 2-2 2-3 2-4 2-5 2-6
Value 1/2 1/4 1/8 1/16 1/32 1/64
Evaluate 1 x 1/2 0 x 1/4 1x 1/8 0 x 1/16 1 x 1/32 1 x 1/64
Sum .5 0.125 0.03125 0.015625
2-1 2-2 2-3 2-4 2-5 2-6
66. 66
Fractions: Base 10 and Base 2
No general relationship between fractions
of types 1/10k and 1/2k
Therefore a number representable in base 10
may not be representable in base 2
But: the converse is true: all fractions of the
form 1/2k can be represented in base 10
Fractional conversions from one base to
another are stopped
If there is a rational solution, or
When the desired accuracy is attained
67. 67
Fractions: From Base B To Base 10
Determine the appropriate weight for
each fractional digit as a negative power
of the base
Multiply each digit by its weight
Add the values
Example:
.A116 = 10x16-1 + 1x16-2 = 10x0.0625 +
1x0.00390625 = 0.6289062510
68. 68
Fractions: From Base 10 To Base B
Multiply the fraction by the base
value B (i.e., 2, 8 or 16)
Record the values that move to the
left of the radix point and drop them
Repeat the process until
the value being multiplied is zero, or
the desired number of digits of
accuracy is attained
69. 69
Fractions: From Base 10 To Base B
0.67312510 = ?2 0.673125
x 2
1.346250
x 2
0.692500
x 2
1.385000
x 2
0.770000
x 2
0.1010112 1.540000
x 2
1.080000
70. 70
Fractions: From Base 2 To Base 8, 16
Group digits from left to right in
groups of 3 (base 8) or 4 (base 16)
Supplement the right-most group
with 0’s, if necessary
Convert each group to the desired
base.
See Table, Slides 12-14
71. 71
Fractions: From Base 8, 16 To Base 2
Convert each octal (base 8) or
hexadecimal (base 16) digit to its 3-
bit or 4-bit representation
See Table, Slides 12-14
72. 72
Fractions: between Base 8 and
Base 16
Use binary conversion as an
intermediary
Example:
0.C816 = ?8
1100 10002
6 2 0 0.C816 = 0.628
74. 74
Arithmetic operations (1 of 14)
Binary Addition
Two 1-bit values
A B A + B
0 0 0
0 1 1
1 0 1
1 1 10
0 and carry 1 to the
next more
significant bit, i.e.
“two”
75. 75
Arithmetic operations (2 of 14)
Two n-bit values
Add individual bits (see Table)
Propagate carries
10101 21
+ 11001 + 25
101110 46
11
Note: superscripts are carried amounts.
76. 76
Addition (different bases) (3 of 14)
Base Problem Largest Single Digit
Decimal
6
+3
9
Octal
6
+1
7
Hexadecimal
6
+9
F
Binary
1
+0
1
77. 77
Addition (different bases) (4 of 14)
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
80. 80
Arithmetic operations (7 of 14)
Binary Subtraction
Two 1-bit values
A B A - B
0 0 0
0 1 1
1 0 1
1 1 0
and borrow 1 from
the next more
significant bit
81. 81
Arithmetic operations (8 of 14)
Two n-bit values
Subtract individual bits (see Table)
Keep track of the borrowings
00100101 – 00010001 = 00010100
00100101 3710
- 00010001 - 1710
00010100 2010
0 10
87. 87
Arithmetic operations (14 of 14)
Binary division, two n-bit values
As with decimal values
100001/11 = 1011 11 ) 100001
1011
11
00100
11
11
11
0
divisor
dividend
quotient
88. 88
Shifting a number
Shifting a decimal number to the left
by one position is equivalent to
multiplying by 10
Shifting a binary number to the left by
one position is equivalent to multiplying
by 2
General rule: shifting a number in any
base left one digit multiplies its value
by the base; shifting one digit right
divides its value by the base