Lecture 2
Number Systems
McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved.
How Computers Represent Data
• Number systems
– A manner of counting
– Several different number systems exist
• Decimal number system
– Used by humans to count
– Contains ten distinct digits
– Digits combine to make larger numbers
5A-2
How Computers Represent Data
• Binary number system
– Used by computers to count
– Two distinct digits, 0 and 1
– 0 and 1 combine to make numbers
5A-3
How Computers Represent Data
• Bits and bytes
– Binary numbers are made of bits
– Bit represents a switch
– A byte is 8 bits
– Byte represents one character
5A-4
How Computers Represent Data
• Text codes
– Converts letters into binary
– Standard codes necessary for data transfer
– ASCII
• American English symbols
– Extended ASCII
• Graphics and other symbols
– Unicode
• All languages on the planet
5A-5
What Computers Do
Four basic operations:
• Receive input: Accept information from outside
world
• Process information: Perform arithmetic or
logical operations on information
• Produce output: Communicate information to
outside world
• Store information: Store and retrieve
information from memory and storage devices
6
What Computers Do (cont.)
Hardware components
• Input devices
• Output devices
• Microprocessor (CPU)
• Memory and storage
devices
– Primary storage
– Secondary storage
• Peripherals
7
A Bit About Bits
• Information: Communication that has
value because it informs
or
• Information: Anything that can be
communicated, whether it has value or
not
8
Bit Basics
• Bit: From Binary digit
– Smallest unit of information computer can
process
– Can have one of two values: 0 or 1
• Byte
– Collection of 8 bits
– Can represent 256
different messages
(256 = 28)
9
Bits as Numbers
• Denotes all numbers with combinations
of 0s and 1s
• Decimal numbers automatically
converted to binary
• Binary number processing hidden from
user
Decimal Binary Decimal Binary
0 0000 5 0101
1 0001 6 0110
2 0010 7 0111
3 0011 8 1000
4 0100 9 1001
10
Bits as Codes
• Codes represent each letter,
digit, and special character
• ASCII: Most widely used
– Each character is a unique 8--
bit code
– 256 unique codes for 26
letters, 10 digits, special
characters
• Unicode: Supports more
than 100,000 unique
characters
11
The World’s Languages
• ASCII character set was originally designed to
include only English-language characters from
0 to 127
• Unicode’s international standard character set
allows for more than 100,000 distinct codes to
include Chinese, Korean, Japanese, and
Arabic characters
12
Bits, Bytes, and Buzzwords
Byte = 8 bits or one character in ASCII
• Kilobyte (KB, K) ≈ 1,000 bytes
• Megabyte (meg, ≈ 1,000 KB or 1 million bytes
MB) ≈ 1,000 MB or 1 billion bytes
• Gigabyte (gig, GB) ≈ 1 million MB or 1 trillion
• Terabyte (TB) bytes
• Petabyte (PB) ≈ 1 quadrillion bytes
13
Common Number Systems
Used by Used in
System Base Symbols humans? computers?
Decimal 10 0, 1, … 9 Yes No
Binary 2 0, 1 No Yes
Octal 8 0, 1, … 7 No No
Hexa- 16 0, 1, … 9, No No
decimal A, B, … F
Quantities/Counting (1 of 3)
Hexa-
Decimal Binary Octal decimal
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
p. 33
Quantities/Counting (2 of 3)
Hexa-
Decimal Binary Octal decimal
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
Quantities/Counting (3 of 3)
Hexa-
Decimal Binary Octal decimal
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
20 10100 24 14
21 10101 25 15
22 10110 26 16
Etc.
23 10111 27 17
Conversion Among Bases
• The possibilities:
Decimal Octal
Binary Hexadecimal
pp. 40-
46
Quick Example
2510 = 110012 = 318 =
1916
Base
Binary to Decimal
Decimal Octal
Binary Hexadecimal
Binary to Decimal
• 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
Example
Bit “0”
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
Octal to Decimal
Decimal Octal
Binary Hexadecimal
Octal to Decimal
• 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
Example
7248 => 4 x 80 = 4
2 x 81 = 16
7 x 82 = 448
46810
Hexadecimal to Decimal
Decimal Octal
Binary Hexadecimal
Hexadecimal to Decimal
• 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
Example
ABC16 => C x 160 = 12 x 1 = 12
B x 161 = 11 x 16 = 176
A x 162 = 10 x 256 = 2560
274810
Decimal to Binary
Decimal Octal
Binary Hexadecimal
Decimal to Binary
• Technique
– Divide by two, keep track of the remainder
– First remainder is bit 0 (LSB, least-
significant bit)
– Second remainder is bit 1
– Etc.
Example
12510 = ?2 2 125
2 62 1
2 31 0
15 1
2
7 1
2
2 3 1
2 1 1
0 1
12510 = 11111012
Octal to Binary
Decimal Octal
Binary Hexadecimal
Octal to Binary
• Technique
– Convert each octal digit to a 3-bit
equivalent binary representation
Example
7058 = ?2
7 0 5
111 000 101
7058 = 1110001012
Hexadecimal to Binary
Decimal Octal
Binary Hexadecimal
Hexadecimal to Binary
• Technique
– Convert each hexadecimal digit to a 4-bit
equivalent binary representation
Example
10AF16 = ?2
1 0 A F
0001 0000 1010 1111
10AF16 = 00010000101011112
Decimal to Octal
Decimal Octal
Binary Hexadecimal
Decimal to Octal
• Technique
– Divide by 8
– Keep track of the remainder
Example
123410 = ?8
8 1234
8 154 2
8 19 2
8 2 3
0 2
123410 = 23228
Decimal to Hexadecimal
Decimal Octal
Binary Hexadecimal
Decimal to Hexadecimal
• Technique
– Divide by 16
– Keep track of the remainder
Example
123410 = ?16
16 1234
16 77 2
16 4 13 = D
0 4
123410 = 4D216
Binary to Octal
Decimal Octal
Binary Hexadecimal
Binary to Octal
• Technique
– Group bits in threes, starting on right
– Convert to octal digits
Example
10110101112 = ?8
1 011 010 111
1 3 2 7
10110101112 = 13278
Binary to Hexadecimal
Decimal Octal
Binary Hexadecimal
Binary to Hexadecimal
• Technique
– Group bits in fours, starting on right
– Convert to hexadecimal digits
Example
10101110112 = ?16
10 1011 1011
2 B B
10101110112 = 2BB16
Octal to Hexadecimal
Decimal Octal
Binary Hexadecimal
Octal to Hexadecimal
• Technique
– Use binary as an intermediary
Example
10768 = ?16
1 0 7 6
001 000 111 110
2 3 E
10768 = 23E16
Hexadecimal to Octal
Decimal Octal
Binary Hexadecimal
Hexadecimal to Octal
• Technique
– Use binary as an intermediary
Example
1F0C16 = ?8
1 F 0 C
0001 1111 0000 1100
1 7 4 1 4
1F0C16 = 174148
Exercise – Convert ...
Hexa-
Decimal Binary Octal decimal
33
1110101
703
1AF
Don’t use a calculator!
Skip answer Answer
Exercise – Convert …
Answer
Hexa-
Decimal Binary Octal decimal
33 100001 41 21
117 1110101 165 75
451 111000011 703 1C3
431 110101111 657 1AF
Common Powers (1 of 2)
• Base 10
Power Preface Symbol Value
10-12 pico p .000000000001
10-9 nano n .000000001
10-6 micro .000001
10-3 milli m .001
103 kilo k 1000
106 mega M 1000000
109 giga G 1000000000
1012 tera T 1000000000000
Common Powers (2 of 2)
• Base 2
Power Preface Symbol Value
210 kilo k 1024
220 mega M 1048576
230 Giga G 1073741824
• What is the value of “k”, “M”, and “G”?
• In computing, particularly w.r.t. memory,
the base-2 interpretation generally applies
Example
In the lab…
1. Double click on My Computer
2. Right click on C:
3. Click on Properties
/ 230 =
Exercise – Free Space
• Determine the “free space” on all drives
on a machine in the lab
Free space
Drive Bytes GB
A:
C:
D:
E:
etc.
Review – multiplying powers
• For common bases, add powers
ab ac = ab+c
26 210 = 216 = 65,536
or…
26 210 = 64 210 = 64k
Binary Addition (1 of 2)
• Two 1-bit values
A B A+B
0 0 0
0 1 1
1 0 1
1 1 10
“two”
pp. 36-
38
Binary Addition (2 of 2)
• Two n-bit values
– Add individual bits
– Propagate carries
– E.g.,
1 1
10101 21
+ 11001 + 25
101110 46
Multiplication (1 of 3)
• Decimal (just for fun)
35
x 105
175
000
35
3675
Multiplication (2 of 3)
• Binary, two 1-bit values
A B AB
0 0 0
0 1 0
1 0 0
1 1 1
Multiplication (3 of 3)
• Binary, two n-bit values
– As with decimal values
– E.g.,
1110
x 1011
1110
1110
0000
1110
10011010
Fractions
• Decimal to decimal (just for fun)
3.14 => 4 x 10-2 = 0.04
1 x 10-1 = 0.1
3 x 100 = 3
3.14
Fractions
• Binary to decimal
10.1011 => 1 x 2-4 = 0.0625
1 x 2-3 = 0.125
0 x 2-2 = 0.0
1 x 2-1 = 0.5
0 x 20 = 0.0
1 x 21 = 2.0
2.6875
Fractions
• Decimal to binary .14579
x 2
3.14579 0.29158
x 2
0.58316
x 2
1.16632
x 2
0.33264
x 2
0.66528
x 2
1.33056
11.001001...
etc.
Exercise – Convert ...
Hexa-
Decimal Binary Octal decimal
29.8
101.1101
3.07
C.82
Don’t use a calculator!
Skip answer Answer
Exercise – Convert …
Answer
Hexa-
Decimal Binary Octal decimal
29.8 11101.110011… 35.63… [Link]…
5.8125 101.1101 5.64 5.D
3.109375 11.000111 3.07 3.1C
12.5078125 1100.10000010 14.404 C.82