240 likes | 423 Views
Numeration Systems. Introduction to Binary, Octal, and Hexadecimal. 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.
E N D
Numeration Systems Introduction to Binary, Octal, and Hexadecimal
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 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
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)
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 System • Place-weighted, like Decimal, but Base 2 • Bit = binary digit • Group of 8 bits is a byte • 210 (1024) bytes = 1 Kilobyte (KB) • 210 KB = 1 Megabyte (MB) Decision of early computer makers. Place values are powers of 2 instead of 10
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 Again Binary needs more “places” to represent the same numbers
Binary to Decimal conversions • Multiply each bit by its place value and add • Example: 1001 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 Digit Binary Chart 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 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: 1011101 Extra zero added on end
Decimal-To Conversions View this slide in a slide show to see the animation • 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: Try a 1 in the 32s place gives us a total of 96 That’s >87 so it must be a 0 We’d start by noticing that a ‘1’ in the 128s place is too much Try a ‘1’ in the 64s place to get a total of 64 Trying a 1 in the 16s place gives a total of 80 1 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
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 Binary 137÷ 2 = 68 r1 68 ÷ 2 = 34 r0 34 ÷ 2 = 17 r0 17 ÷ 2 = 8 r1 8 ÷ 2 = 4 r0 4 ÷ 2 = 2 r0 2 ÷ 2 = 1 r0 1 ÷ 2 = 0 r1 1 0 0 0 1 0 0 1 The LAST remainder you get becomes the FIRST bit of your answer.
Example • 137Hex 137 ÷ 16 = 8 r9 8 ÷ 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.
Why Hex? • You’ve seen that the Hex Binary conversions are very simple. • Hex is often used as shorthand for binary, since two hex digits easily represents a byte. • Computer Forensics – when you look at “raw” computer data, it’s usually Hex. • Hex-editing lets you “hack” and cheat at video games.