2s Complement Another system that lets us represent

  • Slides: 21
Download presentation
2’s Complement • • Another system that lets us represent negative numbers MSB is

2’s Complement • • Another system that lets us represent negative numbers MSB is STILL the sign bit, but there is no negative zero Negative numbers count backwards and wrap around Calculating 2’s complement (Pos Neg) 1. Flip the bits ( 0 1 and 1 0 ) 2. Add 1

Example ( Pos Neg ) 110 00012 -110 11112 1. Flip bits: 1110 2.

Example ( Pos Neg ) 110 00012 -110 11112 1. Flip bits: 1110 2. Add 1: 1110 +0001 1111

Another Example ( Pos Neg ) 2510 000110012 -2510 11100111 2 1. Flip bits:

Another Example ( Pos Neg ) 2510 000110012 -2510 11100111 2 1. Flip bits: 11100110 2. Add 1: 11100110 +00000001 11100111

Your Turn • Assuming an 8 -bit restriction, what is -2110 in 2’s complement?

Your Turn • Assuming an 8 -bit restriction, what is -2110 in 2’s complement? 1. Flip bits 2. Add 1 Answer: 111010112

Your Turn • Assuming an 8 -bit restriction, what is -3010 in 2’s complement?

Your Turn • Assuming an 8 -bit restriction, what is -3010 in 2’s complement? 1. Flip bits 2. Add 1 Answer: 111000102

Example ( Neg Pos ) -410 11002 410 01002 1. Flip bits: 0011 2.

Example ( Neg Pos ) -410 11002 410 01002 1. Flip bits: 0011 2. Add 1: 0011 +0001 0100

Another Example ( Neg Pos ) -2910 111000112 2910 000111012 1. Flip bits: 00011100

Another Example ( Neg Pos ) -2910 111000112 2910 000111012 1. Flip bits: 00011100 2. Add 1: 00011100 +000000011101

Your Turn • Assuming 2’s complement, what is the decimal value of 111110012? 1.

Your Turn • Assuming 2’s complement, what is the decimal value of 111110012? 1. Flip bits 2. Add 1 Answer: -710

Your Turn • Assuming 2’s complement, what is the decimal value of 111010102? 1.

Your Turn • Assuming 2’s complement, what is the decimal value of 111010102? 1. Flip bits 2. Add 1 Answer: 22

2’s Complement Chart Binary Decimal 0111 7 00000111 7 0110 6 00000110 6 0101

2’s Complement Chart Binary Decimal 0111 7 00000111 7 0110 6 00000110 6 0101 5 00000101 5 0100 4 00000100 4 0011 3 00000011 3 0010 2 00000010 2 0001 1 0000 0 1111 -1 1110 -2 11111110 -2 1101 -3 11111101 -3 1100 -4 11111100 -4 1011 -5 11111011 -5 1010 -6 11111010 -6 1001 -7 11111001 -7 1000 -8 11111000 -8

SHORTCUT! 1. Find the 1 on the farthest right 2. Flip all the bits

SHORTCUT! 1. Find the 1 on the farthest right 2. Flip all the bits to the left of the 1 (DO NOT FLIP THE 1) Example: 4210 001010102 -4210 110101102

Awesomeness of 2’s Complement • No more negative zero • Lower minimum value: -(2

Awesomeness of 2’s Complement • No more negative zero • Lower minimum value: -(2 N-1) • So what’s the big deal? – Everything is addition – No need for special hardware to do subtraction

2’s Complement Addition • Just like normal positive binary addition • You MUST restrict

2’s Complement Addition • Just like normal positive binary addition • You MUST restrict the number of bits • IGNORE any overflow bits – maintain bit-size restriction

Positive Addition Example 1210 + 410 = 1610 Assuming 2’s complement 000010102 +000000102 000011002

Positive Addition Example 1210 + 410 = 1610 Assuming 2’s complement 000010102 +000000102 000011002 1210 + 410 1610

Negative Addition Example -1210 + -410 = -1610 111101002 +111111002 111100002 NOTE: -1210 +

Negative Addition Example -1210 + -410 = -1610 111101002 +111111002 111100002 NOTE: -1210 + -410 -1610 We ignored the last overflow bit on the left!

Your Turn • Show the binary addition of -14 + -3 = -17

Your Turn • Show the binary addition of -14 + -3 = -17

Subtraction Example 1610 – 410 = 1610 + -410 = 1210 000100002 +111111002 000011002

Subtraction Example 1610 – 410 = 1610 + -410 = 1210 000100002 +111111002 000011002 NOTE: We ignored the last overflow bit on the left!

Your Turn • Show the binary subtraction of 23 – 10 = 13

Your Turn • Show the binary subtraction of 23 – 10 = 13

Overflow / Underflow Problem • Addition and bit-size restriction allow for possible overflow /

Overflow / Underflow Problem • Addition and bit-size restriction allow for possible overflow / underflow • Overflow – when the addition of two binary numbers yields a result that is greater than the maximum possible value • Underflow – when the addition/subtraction of two binary numbers yields a result that is less than the minimum possible value

Overflow Example • Assume 4 -bit restriction and 2’s complement • Maximum possible value:

Overflow Example • Assume 4 -bit restriction and 2’s complement • Maximum possible value: 24 -1 – 1 = 7 610 + 310 = 910 01102 +00112 10012 610 +310 -710 not good!

Underflow Example • Assume 4 -bit restriction and 2’s complement • Minimum possible value:

Underflow Example • Assume 4 -bit restriction and 2’s complement • Minimum possible value: -(24 -1) = -8 -510 + -510 = -1010 10112 +10112 01102 -510 +-510 610 not good!