Before There Were Numbers• Quantities
represented by metaphors
• Analog• Easy to Understand• Comparisons to
Real World• Imprecise – can’t
really count
http://www.allaboutcircuits.com/vol_4/chpt_1/1.html
Let’s Count to 10
Words Counting Lines
Roman Numerals Decimal
Zero ? ? 0
One | I 1
Two || II 2
Three ||| III 3
Four |||| IV 4
Five ||||| V 5
Six ||||| | VI 6
Seven ||||| || VII 7
Eight ||||| ||| VIII 8
Nine ||||| |||| IX 9
Ten ||||| ||||| X 10
Numbers are digital: finite, precise and countable.
Why we use numbers
• Ancient number systems are pretty bad• Decimal System is place-weighted• Tens place, Hundreds place, etc.• Or, if you want to use math notations
Thousands
Hundreds
Tens Ones . Tenths Hundredths
103 102 101 100 . 10-1 10-2
How the decimal system works
• Let’s take a number: 2074
• Final Value for each column: Place value times digit value
• Final numerical value: add the column values (2000 + 70 + 4)
Digits 2 0 7 4
Place Value 103 (1000) 102 (100) 101 (10) 100 (1)
Column Value 2 x 103 0 x 102 7 x 101 4 x 100
About digits
• For decimal, we need ten digits: 0 – 9• It because it’s a Base 10 system• each “place” needs 10 possible
values (including 0)
Binary Number SystemPlace-weighted, like Decimal, but Base 2Bit = binary digitGroup of 8 bits is a byte210 (1024) bytes = 1 Kilobyte (KB)210 KB = 1 Megabyte (MB)
Sixty-Fours
Thirty-Twos
Sixteens Eights Fours Twos Ones
26 25 24 23 22 21 20
Place values are powers of 2 instead of
10
Decision of early computer
makers.
Why Binary?
• Modern Computers store information as bits, and perform all their calculations on binary numbers.
• Modern computers are basically millions of tiny switches (called transistors) that can be on or off (1 or 0)
• They work most efficiently in binary• Less errors
Let’s Count AgainWords Counting
LinesRoman Numerals
Decimal Binary
Zero ? ? 0 0
One | I 1 1
Two || II 2 10
Three ||| III 3 11
Four |||| IV 4 100
Five ||||| V 5 101
Six ||||| | VI 6 110
Seven ||||| || VII 7 111
Eight ||||| ||| VIII 8 1000
Nine ||||| |||| IX 9 1001
Ten ||||| ||||| X 10 1010
Binary needs more “places” torepresent the same numbers
Binary to Decimal conversions
• Multiply each bit by its place value and add
• Example: 1001Binary 1 0 0 1
Place Values 8 4 2 1Column Values
8 0 0 1
8 + 1 = 9
Octal and Hexadecimal
• Base 8 (Octal) and Base 16 (Hex)• Hex – need 16 digits in one “place”• Hex Digits: 0123456789ABCDEF• 1 Hex Digit = 4 bits• It works because 16 is a powers of 2• Hex is most used, since a byte is
represented nicely by 2 Hex Digits
Notes on Notation
• Octal numbers use the digits 0-7• Octal numbers are preceded by oct• Hex Digits use CAPITAL LETTERS A-F• If we mix hex and decimal, hex
numbers will have a lower-case ‘h’ after them
• Examples: 29h, A7h, 10h• Generic math notation uses subscripts:• 11010112, 7338, AE16
Hex Decimal
• Base 16 place values• Let’s try 1B9
• 1 x 256 + 11 x 16 + 9 = 441
Hex Number
1 B(11) 9
Place Values
162 (256) 161 (16) 160 (1)
Hex Digit Binary ChartHex Digit Binary Hex Digit Binary
0 0000 8 1000
1 0001 9 1001
2 0010 A 1010
3 0011 B 1011
4 0100 C 1100
5 0101 D 1101
6 0110 E 1110
7 0111 F 1111
Notice that one Hex digit can represent every possible binary number for 4 bits. (Decimal numbers 0 – 15)
Hex to Binary is easy!
• Convert single hex digit to binary using the chart or by counting
• String the binary digits in order• Example: F5
• Answer: 11110101
F 5
1111 0101
Don’t forget that zero!
Binary to Hex is easy!
• Reverse what we did for Hex to Binary
• Divide the Binary number in groups of four bits from right to left
• Example: 10111010101 1101
5 D
Extra zero added on end
Decimal-To Conversions• Trial and Fit method:• Keep finding the highest digit that can
“fit” into the decimal number, then subtract from the original #
• Prob: Convert 87 into Binary:
We’d start by noticing that a ‘1’ in the 128s place is too muchTry a ‘1’ in the 64s place to get a total of 64Try a 1 in the 32s place gives us a total of 96That’s >87 so it must be a 0Trying a 1 in the 16s place gives a total of 801 in the 8s place gives 88. It’s too much, so 0
1 in 4s place, 1 in 2s place,1 in 1s place, you get 87
View this slide in a slide show to see the
animation
Decimal-To Conversions• Is there an easier way?• Yes! Division Remainder Method• Take your number, divide by 2 for
binary, 8 for octal, 16 for hex• The Remainder of the division is a digit
in your answer• Repeat process using the Quotient, until
the Quotient is zero• Put the remainders together backwards
for your answer
Examples• 137 Binary137 ÷ 2 = 68 r168 ÷ 2 = 34 r034 ÷ 2 = 17 r017 ÷ 2 = 8 r18 ÷ 2 = 4 r04 ÷ 2 = 2 r02 ÷ 2 = 1 r01 ÷ 2 = 0 r1
1 0 0 0 1 0 0 1
The LAST remainder you get becomes the FIRST bit of your answer.
Example
• 137Hex137 ÷ 16 = 8 r98 ÷ 16 = 0 r8
8 9
Watch out! Hex numbers can look like decimal numbers. In this case, 137 decimal is equal to 89 hex. If this idea confuses you, just remember that the place values are different. In this example, the ‘8’ from the answer is in the “sixteens” place, NOT the ‘tens’ place like it would be normally.
Top Related