Complements
digital electronics - 13IDP1413IDP14
Subtraction using addition
 Conventional addition (using carry) is easily
 implemented in digital computers.
 However; subtraction by borrowing is difficult
and inefficient for digital computers.
 Much more efficient to implement subtraction
using ADDITION OF the COMPLEMENTS of
numbers.
Complements of numbers
(r-1 )’s Complement
•Given a number N in base r having n digits,
•the (r- 1)’s complement of N is defined as
(rn
- 1) - N
•For decimal numbers the
base or r = 10 and r- 1= 9,
•so the 9’s complement of N is
(10n
-1)-N
•99999……. - N
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
9 9 9 9 9
-
2- Find the 9’s complement of 546700 and 12389
The 9’s complement of 546700 is 999999 - 546700=
453299
and the 9’s complement of 12389 is
99999- 12389 = 87610.
9’s complement Examples
5 4 6 7 0- 0
9 9 9 9 9 9
4 5 3 2 9 9
1 2 3 8- 9
9 9 9 9 9
8 7 6 1 0
l’s complement
 For binary numbers, r = 2 and r — 1 =
1,
 r-1’s complement is the l’s complement.
 The l’s complement of N is (2n - 1) - N.
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
1 1 1 1 1
Bit n-1 Bit n-2 ……. Bit 1 Bit 0
-
l’s complement
Find r-1 complement for binary number N with four binary digits.
r-1 complement for binary means 2-1 complement or 1’s complement.
n = 4, we have 24
= (10000)2
and 24
- 1 = (1111)2
.
The l’s complement of N is (24
- 1) - N. = (1111) - N
The complement 1’s of
1011001 is 0100110
0 1 1 0 0- 1
1 1 1 1 1 1
1 0 0 1 1 0
0 0 1 1 1- 1
1 1 1 1 1 1
1 1 0 0 0 0
1
1
0
The 1’s complement of
0001111 is 1110000
0
1
1
l’s complement
r’s Complement
•Given a number N in base r having n digits,
•the r’s complement of N is defined as
rn
- N.
•For decimal numbers the
base or r = 10,
•so the 10’s complement of N
is 10n
-N.
•100000……. - N
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
0 0 0 0 0
-
1
10’s complement Examples
Find the 10’s complement of
546700 and 12389
The 10’s complement of 546700
is 1000000 - 546700= 453300
and the 10’s complement of
12389 is
100000 - 12389 = 87611.
Notice that it is the same as 9’s
complement + 1.
5 4 6 7 0- 0
0 0 0 0 0 0
4 5 3 3 0 0
1 2 3 8- 9
1 0 0 0 0 0
8 7 6 1 1
1
For binary numbers, r = 2,
r’s complement is the 2’s complement.
The 2’s complement of N is 2n
- N.
2’s complement
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
0 0 0 0 0
-
1
2’s complement Example
The 2’s complement of
1011001 is 0100111
The 2’s complement of
0001111 is 1110001
0 1 1 0 0- 1
0 0 0 0 0 0
1 0 0 1 1 1
0 0 1 1 1- 1
1 1 0 0 0 1
1
0
0
0
1
1
0 0 0 0 0 001
Fast Methods for 2’s
Complement
Method 1:
The 2’s complement of binary number is obtained by adding 1 to the
l’s complement value.
Example:
1’s complement of 101100 is 010011 (invert the 0’s and 1’s)
2’s complement of 101100 is 010011 + 1 = 010100
Fast Methods for 2’s
Complement
Method 2:
The 2’s complement can be formed by leaving all least significant 0’s
and the first 1 unchanged, and then replacing l’s by 0’s and 0’s by l’s
in all other higher significant bits.
Example:
The 2’s complement of 1101100 is
0010100
Leave the two low-order 0’s and the first 1 unchanged, and then
replacing 1’s by 0’s and 0’s by 1’s in the four most significant bits.
Examples
– Finding the 2’s complement of (01100101)2
• Method 1 – Simply complement each bit and then
add 1 to the result.
(01100101)2
[N] = 2’s complement = 1’s complement (10011010)2 +1
=(10011011)2
• Method 2 – Starting with the least significant bit,
copy all the bits up to and including the first 1 bit
and then complement the remaining bits.
N = 0 1 1 0 0 1 0 1
[N] = 1 0 0 1 1 0 1 1
Subtraction of Unsigned
Numbers
using r’s complement
Subtract N from M : M – N
 r’s complement N  (rn – N )
 add M to ( rn – N ) : Sum = M + ( r n – N)
  take r’s complement (If M ≥ N, the negative
sign will produce an end carry  rn we need
to take the r’s complement again.)
Subtraction of Unsigned
Numbers
using r’s complement
 (1) if M ≥ N, ignore the carry without
taking complement of sum.
 (2) if M < N, take the r’s complement of
sum and place negative sign in front of
sum. The answer is negative.
Example 1 (Decimal unsigned numbers),
perform the subtraction 72532 - 13250 = 59282.
M > N : “Case 1” “Do not take complement of sum
and discard carry”
The 10’s complement of 13250 is 86750.
Therefore:
M = 72532
10’s complement of N =+86750
Sum= 159282
Discard end carry 105
= - 100000
Answer = 59282 no complement
Example 2;
Now consider an example with M <N.
The subtraction 13250 - 72532 produces negative 59282. Using
the procedure with complements, we have
M = 13250
10’s complement of N = +27468
Sum = 40718
Take 10’s complement of Sum = 100000
-40718
The number is : 59282
Place negative sign in front of the number: -59282

Complements

  • 1.
  • 2.
    Subtraction using addition Conventional addition (using carry) is easily  implemented in digital computers.  However; subtraction by borrowing is difficult and inefficient for digital computers.  Much more efficient to implement subtraction using ADDITION OF the COMPLEMENTS of numbers.
  • 3.
    Complements of numbers (r-1)’s Complement •Given a number N in base r having n digits, •the (r- 1)’s complement of N is defined as (rn - 1) - N •For decimal numbers the base or r = 10 and r- 1= 9, •so the 9’s complement of N is (10n -1)-N •99999……. - N Digit n Digit n-1 Next digit Next digit First digit 9 9 9 9 9 -
  • 4.
    2- Find the9’s complement of 546700 and 12389 The 9’s complement of 546700 is 999999 - 546700= 453299 and the 9’s complement of 12389 is 99999- 12389 = 87610. 9’s complement Examples 5 4 6 7 0- 0 9 9 9 9 9 9 4 5 3 2 9 9 1 2 3 8- 9 9 9 9 9 9 8 7 6 1 0
  • 5.
    l’s complement  Forbinary numbers, r = 2 and r — 1 = 1,  r-1’s complement is the l’s complement.  The l’s complement of N is (2n - 1) - N. Digit n Digit n-1 Next digit Next digit First digit 1 1 1 1 1 Bit n-1 Bit n-2 ……. Bit 1 Bit 0 -
  • 6.
    l’s complement Find r-1complement for binary number N with four binary digits. r-1 complement for binary means 2-1 complement or 1’s complement. n = 4, we have 24 = (10000)2 and 24 - 1 = (1111)2 . The l’s complement of N is (24 - 1) - N. = (1111) - N
  • 7.
    The complement 1’sof 1011001 is 0100110 0 1 1 0 0- 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 1 1 1- 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 The 1’s complement of 0001111 is 1110000 0 1 1 l’s complement
  • 8.
    r’s Complement •Given anumber N in base r having n digits, •the r’s complement of N is defined as rn - N. •For decimal numbers the base or r = 10, •so the 10’s complement of N is 10n -N. •100000……. - N Digit n Digit n-1 Next digit Next digit First digit 0 0 0 0 0 - 1
  • 9.
    10’s complement Examples Findthe 10’s complement of 546700 and 12389 The 10’s complement of 546700 is 1000000 - 546700= 453300 and the 10’s complement of 12389 is 100000 - 12389 = 87611. Notice that it is the same as 9’s complement + 1. 5 4 6 7 0- 0 0 0 0 0 0 0 4 5 3 3 0 0 1 2 3 8- 9 1 0 0 0 0 0 8 7 6 1 1 1
  • 10.
    For binary numbers,r = 2, r’s complement is the 2’s complement. The 2’s complement of N is 2n - N. 2’s complement Digit n Digit n-1 Next digit Next digit First digit 0 0 0 0 0 - 1
  • 11.
    2’s complement Example The2’s complement of 1011001 is 0100111 The 2’s complement of 0001111 is 1110001 0 1 1 0 0- 1 0 0 0 0 0 0 1 0 0 1 1 1 0 0 1 1 1- 1 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 0 0 001
  • 12.
    Fast Methods for2’s Complement Method 1: The 2’s complement of binary number is obtained by adding 1 to the l’s complement value. Example: 1’s complement of 101100 is 010011 (invert the 0’s and 1’s) 2’s complement of 101100 is 010011 + 1 = 010100
  • 13.
    Fast Methods for2’s Complement Method 2: The 2’s complement can be formed by leaving all least significant 0’s and the first 1 unchanged, and then replacing l’s by 0’s and 0’s by l’s in all other higher significant bits. Example: The 2’s complement of 1101100 is 0010100 Leave the two low-order 0’s and the first 1 unchanged, and then replacing 1’s by 0’s and 0’s by 1’s in the four most significant bits.
  • 14.
    Examples – Finding the2’s complement of (01100101)2 • Method 1 – Simply complement each bit and then add 1 to the result. (01100101)2 [N] = 2’s complement = 1’s complement (10011010)2 +1 =(10011011)2 • Method 2 – Starting with the least significant bit, copy all the bits up to and including the first 1 bit and then complement the remaining bits. N = 0 1 1 0 0 1 0 1 [N] = 1 0 0 1 1 0 1 1
  • 15.
    Subtraction of Unsigned Numbers usingr’s complement Subtract N from M : M – N  r’s complement N  (rn – N )  add M to ( rn – N ) : Sum = M + ( r n – N)   take r’s complement (If M ≥ N, the negative sign will produce an end carry  rn we need to take the r’s complement again.)
  • 16.
    Subtraction of Unsigned Numbers usingr’s complement  (1) if M ≥ N, ignore the carry without taking complement of sum.  (2) if M < N, take the r’s complement of sum and place negative sign in front of sum. The answer is negative.
  • 17.
    Example 1 (Decimalunsigned numbers), perform the subtraction 72532 - 13250 = 59282. M > N : “Case 1” “Do not take complement of sum and discard carry” The 10’s complement of 13250 is 86750. Therefore: M = 72532 10’s complement of N =+86750 Sum= 159282 Discard end carry 105 = - 100000 Answer = 59282 no complement
  • 18.
    Example 2; Now consideran example with M <N. The subtraction 13250 - 72532 produces negative 59282. Using the procedure with complements, we have M = 13250 10’s complement of N = +27468 Sum = 40718 Take 10’s complement of Sum = 100000 -40718 The number is : 59282 Place negative sign in front of the number: -59282