1 Number Systems Decimal, Binary, and Hexadecimal.

57
1 Number Systems Decimal, Binary, and Hexadecimal

Transcript of 1 Number Systems Decimal, Binary, and Hexadecimal.

Page 1: 1 Number Systems Decimal, Binary, and Hexadecimal.

1

Number Systems

Decimal, Binary, and Hexadecimal

Page 2: 1 Number Systems Decimal, Binary, and Hexadecimal.

2

Base-N Number System

• Base N• N Digits: 0, 1, 2, 3, 4, 5, …, N-1• Example: 1045N

• Positional Number System •

• Digit do is the least significant digit (LSD).• Digit dn-1 is the most significant digit (MSD).

1 4 3 2 1 0

1 4 3 2 1 0

n

n

N N N N N N

d d d d d d

Page 3: 1 Number Systems Decimal, Binary, and Hexadecimal.

3

Decimal Number System• Base 10• Ten Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9• Example: 104510

• Positional Number System

• Digit d0 is the least significant digit (LSD).• Digit dn-1 is the most significant digit (MSD).

1 4 3 2 1 0

1 4 3 2 1 0

10 10 10 10 10 10n

nd d d d d d

Page 4: 1 Number Systems Decimal, Binary, and Hexadecimal.

4

Binary Number System• Base 2• Two Digits: 0, 1• Example: 10101102

• Positional Number System

• Binary Digits are called Bits• Bit bo is the least significant bit (LSB).• Bit bn-1 is the most significant bit (MSB).

1 4 3 2 1 0

1 4 3 2 1 0

2 2 2 2 2 2n

nb b b b b b

Page 5: 1 Number Systems Decimal, Binary, and Hexadecimal.

5

Definitions• nybble = 4 bits• byte = 8 bits• (short) word = 2 bytes = 16 bits• (double) word = 4 bytes = 32 bits• (long) word = 8 bytes = 64 bits• 1K (kilo or “kibi”) = 1,024• 1M (mega or “mebi”) = (1K)*(1K) = 1,048,576• 1G (giga or “gibi”) = (1K)*(1M) = 1,073,741,824

Page 6: 1 Number Systems Decimal, Binary, and Hexadecimal.

6

Hexadecimal Number System

• Base 16• Sixteen Digits: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F• Example: EF5616

• Positional Number System •

0000 0

0001 1

0010 2

0011 3

0100 4

0101 5

0110 6

0111 7

1000 8

1001 9

1010 A

1011 B

1100 C

1101 D

1110 E

1111 F

1 4 3 2 1 016 16 16 16 16 16n

Page 7: 1 Number Systems Decimal, Binary, and Hexadecimal.

7

Collaborative Learning

Learning methodology in which students are not only responsible for their own learning but for the learning of other members of the group.

Page 8: 1 Number Systems Decimal, Binary, and Hexadecimal.

8

Think - Pair - Share (TPS) Quizzes

• Think – Pair – Share– Think individually for one time units– Pair with partner for two time units– Share with group for one and half time units– Report results

Page 9: 1 Number Systems Decimal, Binary, and Hexadecimal.

9

Quiz 1-A (Practice)

• Assemble in groups of 4

• Question: Convert the following binary number into its decimal equivalent:

110102

Page 10: 1 Number Systems Decimal, Binary, and Hexadecimal.

10

Quiz 1-A (Practice)

THINKOne Unit

(e.g. 30 Seconds)

Page 11: 1 Number Systems Decimal, Binary, and Hexadecimal.

11

Quiz 1-A (Practice)

PAIRTwo Units

(e.g. 60 Seconds)

Page 12: 1 Number Systems Decimal, Binary, and Hexadecimal.

12

Quiz 1-A (Practice)

SHARE1.5 units

(e.g. 45 Seconds)

Page 13: 1 Number Systems Decimal, Binary, and Hexadecimal.

13

Quiz 1-A (Practice)

Report

• Write names of all group members and the consensus answer on one sheet of paper.• All sheets will be collected.• One will be picked at random to read to the class.• All papers will be graded!

Page 14: 1 Number Systems Decimal, Binary, and Hexadecimal.

14

Quiz 1-A Solution

• Convert the following number into base 10 decimal:

4 3 12 1011010 2 2 2 16 8 2 26

Page 15: 1 Number Systems Decimal, Binary, and Hexadecimal.

15

Quiz 1-B

• Convert the following number into base 10 decimal:

1010116

Page 16: 1 Number Systems Decimal, Binary, and Hexadecimal.

16

Collaborative Learning

• Think for 30 seconds

• Pair for 1 minute

• Share for 45 seconds

• Report

Page 17: 1 Number Systems Decimal, Binary, and Hexadecimal.

17

Quiz 1-B Solution

• Convert the following number into base 10 decimal:

1010116 = 1·164 + 0·163 + 1·162 + 0·161 + 1·160

= 164 + 162 + 160

= 65,536 + 256 + 1= 65,793

Page 18: 1 Number Systems Decimal, Binary, and Hexadecimal.

18

TPS Quiz 2

Page 19: 1 Number Systems Decimal, Binary, and Hexadecimal.

19

Binary Addition

•Single Bit Addition Table

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 10 Note “carry”

Page 20: 1 Number Systems Decimal, Binary, and Hexadecimal.

20

Hex Addition

• 4-bit Addition

4 + 4 = 8

4 + 8 = C

8 + 7 = F

F + E = 1D Note “carry”

Page 21: 1 Number Systems Decimal, Binary, and Hexadecimal.

21

Hex Digit Addition Table+ 0 1 2 3 4 5 6 7 8 9 A B C D E F0 0 1 2 3 4 5 6 7 8 9 A B C D E F

1 1 2 3 4 5 6 7 8 9 A B C D E F 10

2 2 3 4 5 6 7 8 9 A B C D E F 10 113 3 4 5 6 7 8 9 A B C D E F 10 11 124 4 5 6 7 8 9 A B C D E F 10 11 12 13

5 5 6 7 8 9 A B C D E F 10 11 12 13 14

6 6 7 8 9 A B C D E F 10 11 12 13 14 157 7 8 9 A B C D E F 10 11 12 13 14 15 168 8 9 A B C D E F 10 11 12 13 14 15 16 17

9 9 A B C D E F 10 11 12 13 14 15 16 17 18

A A B C D E F 10 11 12 13 14 15 16 17 18 19B B C D E F 10 11 12 13 14 15 16 17 18 19 1AC C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B

D D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C

E E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1DF F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E

Page 22: 1 Number Systems Decimal, Binary, and Hexadecimal.

22

TPS Quiz 3

Page 23: 1 Number Systems Decimal, Binary, and Hexadecimal.

23

Complements

• 1’s complement– To calculate the 1’s complement of a binary

number just “flip” each bit of the original binary number.

– E.g. 0 1 , 1 0– 01010100100 10101011011

Page 24: 1 Number Systems Decimal, Binary, and Hexadecimal.

24

Complements

• 2’s complement– To calculate the 2’s complement just calculate

the 1’s complement, then add 1.

01010100100 10101011011 + 1=

10101011100– Handy Trick: Leave all of the least significant

0’s and first 1 unchanged, and then “flip” the bits for all other digits.

• Eg: 01010100100 -> 10101011100

Page 25: 1 Number Systems Decimal, Binary, and Hexadecimal.

25

Complements

• Note the 2’s complement of the 2’s complement is just the original number N– EX: let N = 01010100100– 2’s comp of N = M = 10101011100– 2’s comp of M = 01010100100 = N

Page 26: 1 Number Systems Decimal, Binary, and Hexadecimal.

26

Two’s Complement Representation for Signed Numbers

• Let’s introduce a notation for negative digits:– For any digit d, define d = −d.

• Notice that in binary, where d {0,1}, we have:

• Two’s complement notation:– To encode a negative number, we implicitly

negate the leftmost (most significant) bit:• E.g., 1000 = (−1)000

= −1·23 + 0·22 + 0·21 + 0·20 = −8

101111

011010

1,1

dddd

Page 27: 1 Number Systems Decimal, Binary, and Hexadecimal.

27

Negating in Two’s Complement

• Theorem: To negatea two’s complementnumber, just complement it and add 1.

• Proof (for the case of 3-bit numbers XYZ):

1)( 22 YZXYZX

1

1)1)(1(

111100

)1()(

2

2

222

2222

YZX

ZYX

YZXYZX

YZXYZXYZXYZX

Page 28: 1 Number Systems Decimal, Binary, and Hexadecimal.

28

Signed Binary Numbers

• Two methods: – First method: sign-magnitude

• Use one bit to represent the sign– 0 = positive, 1 = negative

• Remaining bits are used to represent the magnitude

• Range - (2n-1 – 1) to 2n-1 - 1

where n=number of digits• Example: Let n=4: Range is –7 to 7 or • 1111 to 0111

Page 29: 1 Number Systems Decimal, Binary, and Hexadecimal.

29

Signed Binary Numbers

• Second method: Two’s-complement• Use the 2’s complement of N to represent

-N• Note: MSB is 0 if positive and 1 if negative• Range - 2n-1 to 2n-1 -1

where n=number of digits

• Example: Let n=4: Range is –8 to 7Or 1000 to 0111

Page 30: 1 Number Systems Decimal, Binary, and Hexadecimal.

30

Signed Numbers – 4-bit example

Decimal 2’s comp Sign-Mag 7 0111 0111 6 0110 0110 5 0101 0101 4 0100 0100 3 0011 0011 2 0010 0010 1 0001 0001 0 0000 0000 Pos 0

Page 31: 1 Number Systems Decimal, Binary, and Hexadecimal.

31

Signed Numbers-4 bit example

Decimal 2’s comp Sign-Mag -8 1000 N/A -7 1001 1111 -6 1010 1110 -5 1011 1101 -4 1100 1100 -3 1101 1011 -2 1110 1010 -1 1111 1001 -0 0000 (= +0) 1000

Page 32: 1 Number Systems Decimal, Binary, and Hexadecimal.

32

Notes:

• “Humans” normally use sign-magnitude representation for signed numbers– Eg: Positive numbers: +N or N– Negative numbers: -N

• Computers generally use two’s-complement representation for signed numbers– First bit still indicates positive or negative.– If the number is negative, take 2’s complement to

determine its magnitude• Or, just add up the values of bits at their positions,

remembering that the first bit is implicitly negative.

Page 33: 1 Number Systems Decimal, Binary, and Hexadecimal.

33

Example

• Let N=4: two’s-complement• What is the decimal equivalent of

01012

Since msb is 0, number is positive

01012 = 4+1 = +510

• What is the decimal equivalent of11012 =

• Since MSB is one, number is negative• Must calculate its 2’s complement• 11012 = −(0010+1)= − 00112 or −310

Page 34: 1 Number Systems Decimal, Binary, and Hexadecimal.

34

Very Important!!! – Unless otherwise stated, assume two’s-complement numbers for all problems, quizzes, HW’s, etc.

The first digit will not necessarily be explicitly underlined.

Page 35: 1 Number Systems Decimal, Binary, and Hexadecimal.

35

TPS Quizzes 5-7

Page 36: 1 Number Systems Decimal, Binary, and Hexadecimal.

36

Arithmetic Subtraction

• Borrow Method– This is the technique you learned in grade

school– For binary numbers, we have–

0 - 0 = 0

1 - 0 = 1

1 - 1 = 0

0 - 1 = 1 with a “borrow”1

Page 37: 1 Number Systems Decimal, Binary, and Hexadecimal.

37

Binary Subtraction

• Note:– A – (+B) = A + (-B)– A – (-B) = A + (-(-B))= A + (+B)– In other words, we can “subtract” B from A by

“adding” –B to A.– However, -B is just the 2’s complement of B,

so to perform subtraction, we• 1. Calculate the 2’s complement of B• 2. Add A + (-B)

Page 38: 1 Number Systems Decimal, Binary, and Hexadecimal.

38

Binary Subtraction - Example

• Let n=4, A=01002 (410), and

B=00102 (210)

• Let’s find A+B, A-B and B-A

0 1 0 0+ 0 0 1 0

(4)10 (2)10

0 11 0 6

A+B

Page 39: 1 Number Systems Decimal, Binary, and Hexadecimal.

39

Binary Subtraction - Example

0 1 0 0- 0 0 1 0

(4)10 (2)10

10 0 1 0 2

A-B

0 1 0 0+ 1 1 1 0

(4)10 (-2)10

A+ (-B)

“Throw this bit” away since n=4

Page 40: 1 Number Systems Decimal, Binary, and Hexadecimal.

40

Binary Subtraction - Example

0 0 1 0- 0 1 0 0

(2)10 (4)10

1 1 1 0 -2

B-A

0 0 1 0+ 1 1 0 0

(2)10 (-4)10

B + (-A)

1 1 1 02 = - 0 0 1 02 = -210

Page 41: 1 Number Systems Decimal, Binary, and Hexadecimal.

41

“16’s Complement” method

• The 16’s complement of a 16 bit Hexadecimal number is just:

• =1000016 – N16

• Q: What is the decimal equivalent of B2CE16 ?

Page 42: 1 Number Systems Decimal, Binary, and Hexadecimal.

42

16’s Complement

• Since sign bit is one, number is negative. Must calculate the 16’s complement to find magnitude.

• =1000016 – B2CE16 = ?????

• We have

10000

- B2CE

Page 43: 1 Number Systems Decimal, Binary, and Hexadecimal.

43

16’s Complement

FFF10

- B2CE

23D4

Page 44: 1 Number Systems Decimal, Binary, and Hexadecimal.

44

16’s Complement

• So,

1000016 – B2CE16 = 4D3216

= 4×4,096 + 13×256 + 3×16 + 2

= 19,76210

• Thus, B2CE16 (in signed-magnitude)represents -19,76210.

Page 45: 1 Number Systems Decimal, Binary, and Hexadecimal.

45

Sign Extension

Page 46: 1 Number Systems Decimal, Binary, and Hexadecimal.

46

Sign Extension

• Assume a signed binary system

• Let A = 0101 (4 bits) and B = 010 (3 bits)

• What is A+B?– To add these two values we need A and B to

be of the same bit width.– Do we truncate A to 3 bits or add an

additional bit to B?

Page 47: 1 Number Systems Decimal, Binary, and Hexadecimal.

47

Sign Extension

• A = 0101 and B=010

• Can’t truncate A!! Why?– A: 0101 -> 101– But 0101 <> 101 in a signed system– 0101 = +5– 101 = -3

Page 48: 1 Number Systems Decimal, Binary, and Hexadecimal.

48

Sign Extension

• Must “sign extend” B,

• so B becomes 010 -> 0010

• Note: Value of B remains the same

So 0101 (5)

+0010 (2)

--------

0111 (7)

Sign bit is extended

Page 49: 1 Number Systems Decimal, Binary, and Hexadecimal.

49

Sign Extension

• What about negative numbers?

• Let A=0101 and B=100

• Now B = 100 1100

Sign bit is extended 0101 (5)+1100 (-4)------- 10001 (1)

Throw away

Page 50: 1 Number Systems Decimal, Binary, and Hexadecimal.

50

Why does sign extension work?• Note that:

(−1) = 1 = 11 = 111 = 1111 = 111…1– Thus, any number of leading 1’s is equivalent, so long

as the leftmost one of them is implicitly negative.

• Proof:111…1 = −(111…1) =

= −(100…0 − 11…1) = −(1) • So, the combined value of any sequence of

leading ones is always just −1 times the position value of the rightmost 1 in the sequence.

111…100…0 = (−1)·2n

n

Page 51: 1 Number Systems Decimal, Binary, and Hexadecimal.

51

Number Conversions

Page 52: 1 Number Systems Decimal, Binary, and Hexadecimal.

52

Decimal to Binary Conversion

Method I: Use repeated subtraction.

Subtract largest power of 2, then next largest, etc.

Powers of 2: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2n

Exponent: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 , n

210 2n292820 2721 22 23 2624 25

Page 53: 1 Number Systems Decimal, Binary, and Hexadecimal.

53

Decimal to Binary Conversion

Suppose x = 156410 Subtract 1024: 1564-1024 (210) = 540 n=10 or 1 in the (210)’s position

Thus:156410 = (1 1 0 0 0 0 1 1 1 0 0)2

Subtract 512: 540-512 (29) = 28 n=9 or 1 in the (29)’s position

Subtract 16: 28-16 (24) = 12 n=4 or 1 in (24)’s position

Subtract 8: 12 – 8 (23) = 4 n=3 or 1 in (23)’s position

Subtract 4: 4 – 4 (22) = 0 n=2 or 1 in (22)’s position

28=256, 27=128, 26=64, 25=32 > 28, so we have 0 in all of these positions

Page 54: 1 Number Systems Decimal, Binary, and Hexadecimal.

54

Decimal to Binary Conversion

Method II: Use repeated division by radix.

2 | 1564 782 R = 02|_____ 391 R = 02|_____ 195 R = 12|_____ 97 R = 12|_____

48 R = 12|_____ 24 R = 0

2|__24_ 12 R = 02|_____ 6 R = 02|_____

3 R = 02|_____ 1 R = 12|_____ 0 R = 1

Collect remainders in reverse order

1 1 0 0 0 0 1 1 1 0 0

Page 55: 1 Number Systems Decimal, Binary, and Hexadecimal.

55

Binary to Hex Conversion

1. Divide binary number into 4-bit groups

2. Substitute hex digit for each group

1 1 0 0 0 0 1 1 1 0 00Pad with 0’sIf unsigned number

61C16

Pad with sign bitif signed number

Page 56: 1 Number Systems Decimal, Binary, and Hexadecimal.

56

Hexadecimal to Binary ConversionExample

1. Convert each hex digit to equivalent binary

(1 E 9 C)16

(0001 1110 1001 1100)2

Page 57: 1 Number Systems Decimal, Binary, and Hexadecimal.

57

Decimal to Hex Conversion

Method II: Use repeated division by radix.

16 | 1564 97 R = 12 = C16|_____ 6 R = 116|_____ 0 R = 6

N = 61C 16