230 likes | 395 Views
SIMS-201. Representing Information in Binary. Overview. Chapter 3: The search for an appropriate code Bits as building blocks of information Binary to decimal conversion Decimal to binary conversion. Representing information in binary form.
E N D
SIMS-201 Representing Information in Binary
Overview • Chapter 3: • The search for an appropriate code • Bits as building blocks of information • Binary to decimal conversion • Decimal to binary conversion
Representing information in binary form • In order to efficiently store, transmit, process and retrieve information, we need a process for encoding the information • The encoding process is a method of representing information using a finite number of basic elements, called an alphabet • Examples of written alphabets are: • The English alphabet: 26 lower case, 26 upper case, 10 numbers and 32 special characters=94 characters • The Chinese alphabet (Mandarin): 40, 000 characters • A comparison between these alphabets shows us that the Chinese alphabet is a more powerful code as it can convey more information with a single complex character (symbol). Fewer characters are required to communicate an idea • However, this code is very complex and the task of distinguishing one character from the other at the receiving end is highly challenging
We therefore would require a more robust scheme since reliable manipulation of information depends upon resistance to errors • The fewer symbols the code has, the easier it is to distinguish the symbols from each other • The code with the minimum number of symbols (2) is called the binary code • It consists of two distinct symbols: 0 and 1 • Any information can be coded using only these two symbols called bits:Binary digits
Why Use a Code with Only Two Values? • A binary system is more resistant to errors • The two symbols are highly distinguishable from one another. • Consider a compact laser disc for music or computer storage: • A CD is comprised of an enormous number of domains, each of which stores one bit. • Each domain either has a smooth surface that reflects the laser or a “pit” which doesn’t reflect the laser. It’s very clear which of the two values is held by each domain. • If, instead of 2 values, each domain held 3 values (domains of zero, partial, and high reflectivity) a simple fingerprint might create errors. • The 2 clear values make the system simple and reliable. • Two values correspond well to the “on” and “off” states of electronic switches that comprise digital computers.
Bits in the physical world • Generation • Varying the voltage in a circuit • Varying the light intensity (ex: switch light on or off) • Storage • Magnetic disk: Magnetized in one of two directions: “up” or “down” • Compact disc: Constructed to reflect or not reflect light using a reflective surface or pit • Transmission media • Electrical cables (wires) • Optical fibers • Air
Representing Information in Binary Form • BInary digiTal symbols (BITs) form a universal language for any: • Numbers • Text • Sound • Images • Video • Anything else you can imagine… • How is this possible???? 011010100101 How can numbers and text be represented in binary code???? Today's Topic:
How Do We Normally Represent Numbers? • We normally don’t use Binary Digits (Bits) (in which a single placeholder can hold only 0 or 1) in everyday life. • We use Decimal Digits - a single placeholder can hold one of ten numerical values between 0 and 9. • Digits are combined together into larger numbers. • For example: 8,234 is made up of 4 digits. The 4 holds the “1s place,” the 3 holds the “10s place,” the 2 holds the “100s place” and the 8 holds the “1000s place.” Before we discuss binary code, let’s think about the number system we use every day. The Decimal System
The Decimal System • Decimal digits are combined to create larger numbers4,567 => (4 x 103)+ (5 x 102) + (6 x 101) + (7 x 100) • 10 raised to the power of … • 100 =1 • 101 =10 • 102 =10x10=100 • 103 =10x10x10=1,000 • 104 =10x10x10x10=10,000 • and so on • Also called Base-10 system • There are other ways of representing numbers other than using the digits 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. We have ten fingers and use ten digits! Coincidence?
Comparing the Decimal Number System to the Binary Number System • While people routinely use decimal digits, computers use binary digits. • The decimal system uses ten numbers (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) to represent all values. The binary system uses two numbers (0 and 1) to represent all values. • In other words, computers use the “base-2” system rather than the “base-10” system. • Counting in binary is simple (different, but simple) because you use powers of two instead of ten. Example follows.
Binary to Decimal Conversion The same as calculating the value of a decimal system number except use powers of two instead of powers of ten. • The binary number 1101 can be converted to decimal as follows: (1x23) + (1x22) + (0x21) + (1x20) = 8 + 4 + 0 + 1 = 13 • For understanding binary, it’s helpful to have a good command of powers of 2: • 20 = 1 • 21 = 2 • 22 = 2x2 = 4 • 23 = 2x2x2 = 8 • 24 = 2x2x2x2 = 16 • 25 = 2x2x2x2x2 = 32 • 26 = 2x2x2x2x2x2 = 64 • 27 = 2x2x2x2x2x2x2 = 128 • 28 = 2x2x2x2x2x2x2x2 = 256 • 29 = 2x2x2x2x2x2x2x2x2 = 512 • 210 = 2x2x2x2x2x2x2x2x2x2 = 1024 • and so on...
Binary versus Decimal Numbers Another Way to Think About It. Decimal Number Binary Number 10,000s place 1,000s place 100s place 10s place 16s place 1s place 8s place 4s place 2s place 1s place 9 5, 1 0 7 1 0 1 0 1 9 x 10,000 = 90,000 + 5 x 1,000 = 5,000 + 1 x 100 = 100 + 0 x 10 = 0 + 7 x 1 = 7 _______________ = 95,107 (10) 1 x 16 = 16 + 0 x 8 = 0 + 1 x 4 = 4 + 0 x 2 = 0 + 1 x 1 = 1 _______________ = 21 (10)
Another Example: Converting Binary to Decimal • A computer generates the following sequence of bits: 110101(2) • How do we convert 110101(2) into decimal? (1x25) + (1x24) + (0x23) + (1x22) + (0x21) + (1x20) = 32 + 16 + 0 + 4 + 0 + 1 = 53(10) 110101(2) = 53(10)
Real World Example: The Internet Address Converting a 32-bit Internet address into dotted decimal format • An Internet address, known as an IP address for “Internet Protocol” is comprised of four binary octets, making it a 32-bit address. • IP addresses, difficult for humans to read in binary format, are often converted to “dotted decimal format.” • To convert the 32-bit binary address to dotted decimal format, divide the address into four 8-bit octets and then convert each octet to a decimal number. • Each octet will have one of 256 values (0 through 255) 192.48.29.253 (IP address in dotted decimal form)
Real World Example: The Internet Address Convert the following 32-bit Internet address into dotted decimal format: 01011110000101001100001111011100 1) Divide the IP address into four octets 01011110 00010100 11000011 11011100 2) Convert each binary octet into a decimal number 01011110 = 64+16+8+4+2 = 94 00010100 = 16+4 = 20 11000011 = 128+64+2+1 = 195 11011100 = 128+64+16+8+4 = 220 3) Write out the decimal values separated by periods 94.20.195.220
Decimal to Binary Conversion • Sometimes it can be done intuitively. • For example: • The decimal number 1 represented in 8-bit binary is: • 00000001. • The decimal number 128 represented in 8-bit binary is: • 10000000. • The decimal number 129 represented in 8-bit binary is: • 10000001. • The decimal number 2 represented in 8-bit binary is: • 00000010. • The decimal number 4 represented in 8-bit binary is: • 00000100. • The decimal number 6 represented in 8-bit binary is: • 00000110. But what are we really doing mathematically?
Convert the Decimal Number 174 to a binary octet ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 1: Compare 174 to 128. 174>128 so place a 1 in the 128s place and subtract 174-128 = 46 1 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 2: Compare 46 to 64. 46<64 so place a 0 in the 64s place and continue with 46. 0 1 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place
Reversing the Process: Converting a Decimal Number to Binary 1 0 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 3: Compare 46 to 32. 46>32 so place a 1 in the 32s place and subtract 46-32 = 14 1 0 1 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 4: Compare 14 to 16. 14<16 so place a 0 in the 16s place and continue with 14. 1 0 1 0 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 5: Compare 14 to 8. 14>8 so place a 1 in the 8s place and subtract 14-8=6.
1 0 1 0 1 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 6: Compare 6 to 4. 6>4 so place a 1 in the 4s place and subtract 6-4=2. 1 0 1 0 1 1 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place Step 7: Compare 2 to 2. 2=2 so place a 1 in the 2s place and subtract 2-2=0. There is no remainder left to convert, so also place a 0 in the 1s place. 1 0 1 0 1 1 1 0 ____ ____ ____ ____ ____ ____ ____ ____ 128s place 64s place 32s place 16s place 8s place 4s place 2s place 1s place The decimal number 174 has been converted to the binary number 10101110
Binary Conventions • Most Significant Bit (MSB) and Least Significant Bit (LSB) • Decimal Example: 64 • 6 is the Most Significant Digit • 4 is the Least Significant Digit • Binary: 1000000 • 1 is the MSB • 0 on the right is the LSB • Subscripts: Note that the subscript “2” makes it clear a number is in binary format and the subscript “10” makes it clear a number is in decimal format. • This avoids confusion between a number like 110101 which can either be binary, written as 110101(2) or decimal, written as 110,101(10)
If there is a “1” in the LSB of a binary number, then its decimal equivalent is an odd number • If there is a “0” in the LSB of a binary number, then its decimal equivalent is an even number
In-Class Examples • Convert 12(10) to binary representation • Convert 1010101(2) to decimal • Convert 256(10) to binary representation • Convert 10001110(2) to decimal
Exercises • Convert the following to binary form: • 810 • 4010 • 10110 • Convert the following to decimal form: • 11002 • 001100102 • 011112