sims-201 representing information in binary (continued)

29
SIMS-201 Representing Information in Binary (Continued)

Upload: polly-nichols

Post on 23-Dec-2015

227 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: SIMS-201 Representing Information in Binary (Continued)

SIMS-201

Representing Information in Binary (Continued)

Page 2: SIMS-201 Representing Information in Binary (Continued)

2

Overview Chapter 3 continued:

Binary Coded Decimal (BCD) Representing alphanumeric characters in binary form Bits, Bytes, and Beyond Representing real numbers in binary form Octal numbering system Hexadecimal numbering system Conversion between different numbering systems

Page 3: SIMS-201 Representing Information in Binary (Continued)

3

Binary Coded Decimal (BCD)

Representing one decimal number at a time How can we represent the ten decimal numbers (0-9) in binary code?

NumeralNumeral00112233445566778899

BCD RepresentationBCD Representation00000000000100010010001000110011010001000101010101100110011101111000100010011001

We can represent any integer by a string of binary digits. For example, 749 can be represented in binary as: 011101001001

Page 4: SIMS-201 Representing Information in Binary (Continued)

4

How Many Bits Are Necessary to Represent Something?

1 bit can represent two (21) symbols either a 0 or a 1

2 bits can represent four (22) symbols 00 or 01 or 10 or 11

3 bits can represent eight (23) symbols 000 or 001 or 011 or 111 or 100 or 110 or 101 or 010

4 bits can represent sixteen (24) symbols 5 bits can represent 32 (25) symbols 6 bits can represent 64 (26) symbols 7 bits can represent 128 (27) symbols 8 bits (a byte) can represent 256 (28) symbols n bits can represent (2n) symbols! So…how many bits are necessary for all of us in class to have a

unique binary ID? Are two bits enough? Three? Four? Five? Six? Seven?

Page 5: SIMS-201 Representing Information in Binary (Continued)

5

To think about.. Can 64 bits represent twice as many symbols as 32 bits?

32 bit = 232 = 4,294,967,296 symbols 64 bit = 264 = 1.8 x 1019 symbols 128 bit = 2128 = 3.4 x 1038 symbols

Can 8 bits represent twice as many symbols as 4 bits? 8 bit = 28 = 256 symbols 4 bit = 24 = 16 symbols

Remember that we’re dealing with exponents! 8 bit is twice as big as __________? 7 bit! 7 bits can represent 27 possible symbols or 2x2x2x2x2x2x2 =

128 8 bits can represent 28 possible symbols or 2x2x2x2x2x2x2x2 =

256

Page 6: SIMS-201 Representing Information in Binary (Continued)

6

Representing Alphanumeric Characters in Binary form (ASCII)

It is important to be able to represent text in binary form as information is entered into a computer via a keyboard

Text may be encoded using ASCII ASCII can represent:

Numerals Letters in both upper and lower cases Special “printing” symbols such as @, $, %, etc. Commands that are used by computers to

represent carriage returns, line feeds, etc.

Page 7: SIMS-201 Representing Information in Binary (Continued)

7

ASCII is an acronym for American Standard Code for Information Interchange

Its structure is a 7 bit code (plus a parity bit or an “extended” bit in some implementations

–ASCII can represent 128 symbols (27 symbols)

–INFT 101 is: 73 78 70 84 32 49 48 49 (decimal) or

–1001001 1001110 1000110 1010100 0100000 0110001 0110000 0110001 in binary (using Appendix A from the textbook)

–A complete ASCII chart may be found in appendix A in your book

–How do you spell Lecture in ASCII?

Page 8: SIMS-201 Representing Information in Binary (Continued)

8

Extended ASCII Chart

This ASCII chart illustrates Decimal and Hex (Hexadecimal) representation of numbers, text and special characters

Hex can be easily converted to binary

Upper case D is 4416

416 is 01002

Upper case D is then 0100 0100 in binary

Page 9: SIMS-201 Representing Information in Binary (Continued)

9

ASCII conversion example

Let us convert You & I, to decimal, hex and binary using the ASCII code table :

Y: 8910 5916 10110012

o: 11110 6F16 11011112

u: 11710 7516 11101012

Space: 3210 2016 01000002

&: 3810 2616 01001102

Space: 3210 2016 01000002

I: 7310 4916 10010012

,: 4410 2C16 01011002

Page 10: SIMS-201 Representing Information in Binary (Continued)

10

You & I, in Hex: 59 6F 75 20 26 20 49 2C

You & I, in decimal: 89 111 117 32 38 32 73 44

You & I, in binary: 1011001 1101111 1110101 0100000

0100110 0100000 1001001 0101100

Page 11: SIMS-201 Representing Information in Binary (Continued)

11

Other Text Codes

Extended Binary Coded Decimal Interchange Code (EBCDIC) used by IBM-- 8 bit (28 bits) 256 symbols

Unicode is 16 bit (216) 65,536 symbols

languages with accents (French, German)

nonLatin alphabets (e.g. Hebrew, Russian)

languages withough alphabets (e.g. Chinese, Japanese)

www.unicode.org

Page 12: SIMS-201 Representing Information in Binary (Continued)

12

Representing Real Numbers in Binary Form

Previously, we learned how to represent integers in binary form

Real numbers can be represented in binary form as well We will illustrate this with a thermometer example:

A Mercury thermometer reflects temperature that can continuously vary over its range of measurement (an analog device) – temperature can take any value between say 60 and 70 degrees F. There is an infinite number of such possible temperatures.

In order to perfectly represent that, a digital thermometer will need an infinite number of bits (which we can neither generate, store, nor transmit an infinite stream)

So: if we are building a digital thermometer, we must make some choices to determine certain parameters:

Precision (number of bits we will use) vs. the cost Accuracy (how true is our measurement against a given

standard)

Page 13: SIMS-201 Representing Information in Binary (Continued)

13

What is the range we wish to measure? How many bits are we willing to use?

Suppose we want to measure the temperature range: -40º F to 140º F Total measurement range = 180º F

If our thermometer needs to measure in 0.01º increments in order to be considered accurate, then we need to be able to represent 18,000 steps. (There are 180 degrees between -40º to 140º F. Since each degree can have 100 different values (with the 0.01º increments), then the number of possible values that the thermometer can measure is: 180x100=18,000)

We can accomplish this with a 15 bit code (A 15 bit code can represent 215=32,768 different values-since we have 18,000 different values we have to represent, a code with 14 bits will not suffice, as a 14-bit code can only represent 214=16,384 values)

Page 14: SIMS-201 Representing Information in Binary (Continued)

14

Thermometer Coding (One solution)

140.00º F 100011001010000 139.99º F 100011001001111 139.98º F 100011001001110 139.97º F

100011001001101

0.00º F

000111110100000

-39.98º F 000000000000010 -39.99º F 000000000000001 -40.00º F 000000000000000

15 bit code

Page 15: SIMS-201 Representing Information in Binary (Continued)

15

Thermometer Coding (Another solution)

0.04º F 0000000000001000.03º F 0000000000000110.02º F 0000000000000100.01º F 0000000000000010.00º F 000000000000000-0.01º F 111111111111111-0.02º F 111111111111110-0.03º F 111111111111101

Page 16: SIMS-201 Representing Information in Binary (Continued)

16

Convenient Forms for Binary Codes

Bits, Bytes, and Beyond

Page 17: SIMS-201 Representing Information in Binary (Continued)

17

Bits vs. Bytes

“Bits” are often used in terms of a data rate, or speed of information flow:

56 Kilobit per second modem (56 Kbps) A T-1 is 1.544 Megabits per second (1.544 Mbps or 1544

Kbps)

“Bytes” are often used in terms of storage or capacity--computer memories are organized in terms of 8 bits

256 Megabyte (MB) RAM 40 Gigabyte (GB) Hard disk

Page 18: SIMS-201 Representing Information in Binary (Continued)

18

Practical Use

Everyday things measured in bits: 32-bit sound card 64-bit video accelerator card 128-bit encryption in your

browser

Page 19: SIMS-201 Representing Information in Binary (Continued)

19

Note! The Multipliers for Bits and Bytes are Slightly Different.

When Referring to Bytes (as in computer memory) Kilobyte (KB) 210 = 1,024 bytes Megabyte (MB) 220 = 1,048,576 bytes Gigabyte (GB) 230 = 1,073,741,824 bytes Terabyte (TB) 240 = 1,099,511,627,776 bytes

When Referring to Bits Per Second (as in transmission rates) Kilobit per second (Kbps) = 1000 bps (thousand) Megabit per second (Mbps) = 1,000,000 bps (million) Gigabit per second (Gbps) = 1,000,000,000 bps (billion) Terabit per second (Tbps) = 1,000,000,000,000 bps (trillion)

““Kilo” or “Mega” have slightly different values when used with bits Kilo” or “Mega” have slightly different values when used with bits per second or with bytes.per second or with bytes.

Page 20: SIMS-201 Representing Information in Binary (Continued)

20

More Multipliers for Measuring Bytes

Kilobyte (K) 210 = 1,024 bytes

Megabyte (M) 220 = 1,048,576 bytes

Gigabyte (G) 230 = 1,073,741,824 bytes

Terabytes (T) 240 = 1,099,511,627,776 bytes

Petabytes (P) 250 = 1,125,899,906,842,624 bytes

Exabytes (E) 260 = 1,152,921,504,606,846,976 bytes

Zettabytes (Z) 270 = 1,180,591,620,717,411,303,424 bytes

Yottabytes (Y) 280 = 1,208,925,819,614,629,174,706,176 bytes

Page 21: SIMS-201 Representing Information in Binary (Continued)

21

Octal Numbering system There are other ways to “count ” besides the

decimal and binary systems. One example is the octal numbering system (base 8).

The Octal numbering system uses the first 8 numerals starting from 0

The first 20 numbers in the octal system are: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16,

17 ,20, 21, 22, 23 Because there are 8 numerals and 8 patterns

that can be formed by 3 bits, a single octal number may be used to represent a group of 3 bits

Page 22: SIMS-201 Representing Information in Binary (Continued)

22

Octal numeral

Bit pattern

0 000

1 001

2 010

3 011

4 100

5 101

6 110

7 111

Page 23: SIMS-201 Representing Information in Binary (Continued)

23

For example, the number 1010010101112 may be converted to octal form by grouping the bits into 3, and looking at the table. Starting from the right, count 3 digits to the left. The first 3-bits are: 111, corresponding to 7. The next 3-bits are: 010, corresponding to 2. The next are 001, corresponding to 1 and the last 3-bits are 101, corresponding to 5

Hence, the above binary number may be represented by: 51278 in octal form

Start here

Page 24: SIMS-201 Representing Information in Binary (Continued)

24

Hexadecimal Numbering system The hex system uses 16 numerals,

starting with zero The standard decimal system only

provides 10 different symbols So, the letters A-F are used to fill

out a set of 16 different numerals We can use hex to represent a

grouping of 4 bits

Page 25: SIMS-201 Representing Information in Binary (Continued)

25

Decimal Hex Binary

0 0 0000

1 1 0001

2 2 0010

3 3 0011

4 4 0100

5 5 0101

6 6 0110

7 7 0111

8 8 1000

9 9 1001

10 A 1010

11 B 1011

12 C 1100

13 D 1101

14 E 1110

15 F 1111

Page 26: SIMS-201 Representing Information in Binary (Continued)

26

For example, the number 1010110101112 may be converted to hexadecimal form by grouping the bits into 4, and looking at the table. Starting from the right, count 4 digits to the left. The first 4-bits are: 0111, corresponding to 716. The next 4-bits are: 1101, corresponding to D16. The last bits are: 1010, corresponding to A16

Hence, the above binary number may be represented by: AD716 in hexadecimal form

Start here

Page 27: SIMS-201 Representing Information in Binary (Continued)

27

Conversion between different numbering systems

Conversions are possible between different numbering systems:

1 - Binary to Decimal and vice versa2 - Binary to Octal and vice versa3 - Binary to Hex and vice versa4 - Octal to Decimal and vice versa5 - Hex to Decimal and vice versa6 - Octal to Hex and vice versa

Page 28: SIMS-201 Representing Information in Binary (Continued)

28

We learned how to do # 1 in detail in the previous lecture

We learned how to do # 2 and 3 in this lecture

We will learn how to do # 4, 5 and 6 next

Page 29: SIMS-201 Representing Information in Binary (Continued)

29

To convert octal and hex to decimal, we apply the same technique as converting binary to decimal. We recall that, in order to to convert from binary to decimal, we summed together the weights of the positions of the binary number that contained a “1”. Similarly, we sum the weights of the positions in the octal or hex numbers (depending on the base being used).

Binary is base 2, octal is base 8 and hex is base 16

Two examples of octal to decimal conversion: 778 converted to decimal form: 7x81 + 7x80 = 6310 26358 converted to decimal form: 2x83 + 6x82 + 3x81 + 5x80 = 143710

Two examples of hex to decimal conversion: A516 is converted to decimal form by: 10x161 + 5x160 = 16510 F8C16 is converted to decimal form by: 15x162 + 8x161 + 12x160 = 398010

In order to convert from octal to hex (or vice versa), we first convert octal to binary, and then convert binary to hex.