際際滷

際際滷Share a Scribd company logo
Complements
Digital Logic Design
BY SHEHZAD ALI
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.
Types of Complement
There are two types of complements:
Rs complement
e.g. 2s complement for base 2 and 10s
complement for base 10
R-1s complement
e.g. 1s complement for base 2 and 9s
complement for base 10
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
( r n - 1 ) - N
For decimal numbers the
base or r = 10 and r- 1= 9,
so the 9s 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 9s complement of 546700 and
12389
The 9s complement of 546700 is 999999 -
546700=
453299
and the 9s complement of
12389 is 99999- 12389 =
87610.
9s 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
ls complement
 For binary numbers, r = 2 and r  1 =
1,
 r-1s complement is the ls complement.
 The ls 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
-
ls complement
Find r-1 complement for binary number N with four
binary digits.
r-1 complement for binary means 2-1 complement or 1s
complement.
n = 4, we have 24 = (10000)2 and 24 - 1 = (1111)2.
The ls complement of N is (24 - 1) - N. = (1111) - N
The complement 1s of
1011001 is 0100110
-
-
1 0 1 1 0 0 1
1 1 1 1 1 1 1
0 1 0 0 1 1 0
The 1s complement of
0001111 is 1110000
0 0 0 1 1 1 1
1 1 1 1 1 1 1
1 1 1 0 0 0 0
ls complement
rs Complement
Given a number N in base r having n digits,
the rs complement of N is defined as
rn
- N.
For decimal numbers the
base or r = 10,
so the 10s complement of N
is 10n-N.
100000. - N
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit-
1 0 0 0 0 0
10s complement Examples
Find the 10s complement of
546700 and 12389
The 10s complement of 546700
is 1000000 - 546700= 453300
and the 10s complement of
12389 is
100000 - 12389 = 87611.
Notice that it is the same as 9s
complement + 1.
- 5 4 6 7 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 0 0 0 0 0 0
For binary numbers, r = 2,
rs complement is the 2s complement.
The 2s complement of N is 2n - N.
2s complement
Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit-
1 0 0 0 0 0
2s complement Example
The 2s complement of
1011001 is 0100111
The 2s complement of
0001111 is 1110001
-
-
1 0 1 1 0 0 1
0 1 0 0 1 1 1
0 0 0 1 1 1 1
1 1 1 0 0 0 1
1 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0
Fast Methods for 2s Complement
Method 1:
The 2s complement of binary number is obtained by adding 1 to the
ls complement value.
Example:
1s complement of 101100 is 010011 (invert the 0s and 1s)
2s complement of 101100 is 010011 + 1 = 010100
Fast Methods for 2s Complement
Method 2:
The 2s complement can be formed by leaving all least significant 0s
and the first 1 unchanged, and then replacing ls by 0s and 0s by ls
in all other higher significant bits.
Example:
The 2s complement of 1101100 is
0010100
Leave the two low-order 0s and the first 1 unchanged, and then
replacing 1s by 0s and 0s by 1s in the four most significant bits.
Examples
Finding the 2s complement of(01100101)2
 Method 1  Simply complement each bit and then add
1 to the result.
(01100101)2
[N] = 2s complement = 1s 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
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 10s complement of 13250 is 86750.
Therefore:
M = 72532
10s 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
10s complement of N = +27468
Sum = 40718
Take 10s complement of Sum = 100000
-40718
The number is : 59282
Place negative sign in front of the number: -59282

More Related Content

Complement in DLD

  • 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. Types of Complement There are two types of complements: Rs complement e.g. 2s complement for base 2 and 10s complement for base 10 R-1s complement e.g. 1s complement for base 2 and 9s complement for base 10
  • 4. 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 ( r n - 1 ) - N For decimal numbers the base or r = 10 and r- 1= 9, so the 9s 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 -
  • 5. 2- Find the 9s complement of 546700 and 12389 The 9s complement of 546700 is 999999 - 546700= 453299 and the 9s complement of 12389 is 99999- 12389 = 87610. 9s 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
  • 6. ls complement For binary numbers, r = 2 and r 1 = 1, r-1s complement is the ls complement. The ls 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 -
  • 7. ls complement Find r-1 complement for binary number N with four binary digits. r-1 complement for binary means 2-1 complement or 1s complement. n = 4, we have 24 = (10000)2 and 24 - 1 = (1111)2. The ls complement of N is (24 - 1) - N. = (1111) - N
  • 8. The complement 1s of 1011001 is 0100110 - - 1 0 1 1 0 0 1 1 1 1 1 1 1 1 0 1 0 0 1 1 0 The 1s complement of 0001111 is 1110000 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 ls complement
  • 9. rs Complement Given a number N in base r having n digits, the rs complement of N is defined as rn - N. For decimal numbers the base or r = 10, so the 10s complement of N is 10n-N. 100000. - N Digit n Digit n-1 Next digit Next digit First digit- 1 0 0 0 0 0
  • 10. 10s complement Examples Find the 10s complement of 546700 and 12389 The 10s complement of 546700 is 1000000 - 546700= 453300 and the 10s complement of 12389 is 100000 - 12389 = 87611. Notice that it is the same as 9s complement + 1. - 5 4 6 7 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 0 0 0 0 0 0
  • 11. For binary numbers, r = 2, rs complement is the 2s complement. The 2s complement of N is 2n - N. 2s complement Digit n Digit n-1 Next digit Next digit First digit- 1 0 0 0 0 0
  • 12. 2s complement Example The 2s complement of 1011001 is 0100111 The 2s complement of 0001111 is 1110001 - - 1 0 1 1 0 0 1 0 1 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
  • 13. Fast Methods for 2s Complement Method 1: The 2s complement of binary number is obtained by adding 1 to the ls complement value. Example: 1s complement of 101100 is 010011 (invert the 0s and 1s) 2s complement of 101100 is 010011 + 1 = 010100
  • 14. Fast Methods for 2s Complement Method 2: The 2s complement can be formed by leaving all least significant 0s and the first 1 unchanged, and then replacing ls by 0s and 0s by ls in all other higher significant bits. Example: The 2s complement of 1101100 is 0010100 Leave the two low-order 0s and the first 1 unchanged, and then replacing 1s by 0s and 0s by 1s in the four most significant bits.
  • 15. Examples Finding the 2s complement of(01100101)2 Method 1 Simply complement each bit and then add 1 to the result. (01100101)2 [N] = 2s complement = 1s 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
  • 16. 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 10s complement of 13250 is 86750. Therefore: M = 72532 10s complement of N =+86750 Sum= 159282 Discard end carry 105= - 100000 Answer = 59282 no complement
  • 17. 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 10s complement of N = +27468 Sum = 40718 Take 10s complement of Sum = 100000 -40718 The number is : 59282 Place negative sign in front of the number: -59282