37
REPRESENTING INFORMATION: BINARY, HEX, ASCII CORRESPONDING READING: UDC CHAPTER 2 CMSC 150: Lecture 2

REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Embed Size (px)

Citation preview

Page 1: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

REPRESENTING INFORMATION:

BINARY, HEX, ASCII

CORRESPONDING READING:UDC CHAPTER 2

CMSC 150: Lecture 2

Page 2: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Controlling Information

Watch Newman on YouTube

Page 3: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Inside the Computer: Gates

AND Gate

Input Wires

Output Wire

0

1

0

0's & 1's represent low & high voltage, respectively, on the wires

Page 4: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Inside the Computer: Gates

Page 5: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Representing Information

We need to understand how the 0's and 1's can be used to "control information"

Page 6: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

The Decimal Number System Deci- (ten)

Base is ten first (rightmost) place: ones (i.e., 100) second place: tens (i.e., 101) third place: hundreds (i.e., 102) …

Digits available: 0, 1, 2, …, 9 (ten total)

Page 7: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Example: your favorite number…8,675,309

Page 8: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

The Binary Number System

Bi- (two) bicycle, bicentennial, biphenyl

Base two first (rightmost) place: ones (i.e., 20) second place: twos (i.e., 21) third place: fours (i.e., 22) …

Digits available: 0, 1 (two total)

Page 9: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Representing Decimal in Binary Moving right to left, include a "slot" for

every power of two <= your decimal number

Moving left to right: Put 1 in the slot if that power of two can be

subtracted from your total remaining Put 0 in the slot if not Continue until all slots are filled

filling to the right with 0's as necessary

Page 10: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Example

8,675,30910

=

1000010001011111111011012

Fewer available digits in binary: more space required for representation

Page 11: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Converting Binary to Decimal For each 1, add the corresponding power

of two

10100101111012

Page 12: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Converting Binary to Decimal For each 1, add the corresponding power

of two

10100101111012 = 530910

Page 13: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Now You Get The Joke

THERE ARE 10 TYPES OF PEOPLE IN THE WORLD:

THOSE WHO CAN COUNT IN BINARY

AND THOSE WHO CAN'T

Page 14: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Too Much Information?

Page 15: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Too Much Information?

Page 16: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Too Much Information?

Page 17: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

An Alternative to Binary?

1000010001011111111011012 = 8,675,30910

1000001001011111111011012 = 8,544,23710

Page 18: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

An Alternative to Binary?

1000010001011111111011012 = 8,675,30910

1000001001011111111011012 = 8,544,23710

Page 19: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

An Alternative to Binary?

What if this was km to landing?

Page 20: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

The Hexadecimal Number System Hex- (six) Deci- (ten) Base sixteen

first (rightmost) place: ones (i.e., 160) second place: sixteens (i.e., 161) third place: two-hundred-fifty-sixes

(i.e., 162) …

Digits available: sixteen total 0, 1, 2, …, 9, A, B, C, D, E, F

Page 21: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Using Hex

Can convert decimal to hex and vice-versa process is similar, but using base 16 and 0-

9, A-F

Most commonly used as a shorthand for binary

Avoid this

Page 22: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

More About Binary

How many different things can you represent using binary:

with only one slot (i.e., one bit)? with two slots (i.e., two bits)? with three bits? with n bits?

Page 23: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

More About Binary

How many different things can you represent using binary:

with only one slot (i.e., one bit)? 2 with two slots (i.e., two bits)? 22 = 4 with three bits? 23 = 8 with n bits? 2n

Page 24: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Binary vs. Hex

One slot in hex can be one of 16 values 0, 1, 2, …, 9, A, B, C, D, E, F

How many bits do you need to represent one hex digit?

Page 25: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Binary vs. Hex

One slot in hex can be one of 16 values 0, 1, 2, …, 9, A, B, C, D, E, F

How many bits do you need to represent one hex digit?

4 bits can represent 24 = 16 different values

Page 26: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Binary vs. Hex

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

A 1010

B 1011

C 1100

D 1101

E 1110

F 1111

Page 27: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Converting Binary to Hex

Moving right to left, group into bits of four

Convert each four-group to corresponding hex digit

1000010001011111111011012

Page 28: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Converting Hex to Binary

Simply convert each hex digit to four-bit binary equivalent

BEEF16 = 1011 1110 1110 11112

Page 29: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Representing Different Information So far, everything has been a number

What about characters? Punctuation?

Idea: put all the characters, punctuation in order assign a unique number to each done! (we know how to represent

numbers)

Page 30: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

Our Idea

A: 0 B: 1 C: 2 … Z: 25 a: 26 b: 27 … z: 51

, : 52 . : 53 [space] : 54 …

Page 31: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

ASCII: American Standard Code for Information Interchange

Page 32: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

ASCII: American Standard Code for Information Interchange

'A' = 6510 = ???2

'q' = 9010 = ???2

'8' = 5610 = ???2

Page 33: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

ASCII: American Standard Code for Information Interchange

256 total characters…

How many bits needed?

Page 34: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

The Problem with ASCII

What about Greek characters? Chinese?

UNICODE: use 16 bits

How many characters can we represent?

Page 35: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

The Problem with ASCII

What about Greek characters? Chinese?

UNICODE: use 16 bits

How many characters can we represent?

216 = 65,536

Page 36: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

You Control The Information

What is this? 01001101

Page 37: REPRESENTING INFORMATION: BINARY, HEX, ASCII C ORRESPONDING R EADING : UDC C HAPTER 2 CMSC 150: Lecture 2

You Control The Information

What is this? 01001101

Depends on how you interpret it:

010011012 = 7710

010011012 = 'M' 0100110110 = one million one thousand one

hundred and one

You must be clear on representation and interpretation