The document discusses different methods for performing subtraction using addition of complements in digital logic design. It explains that subtraction by borrowing is difficult for digital computers, so subtraction is instead implemented by taking the complement of the numbers being subtracted and then adding them. Two types of complements are described: r's complement and r-1's complement. Examples of performing subtraction using complements in binary and decimal numbers are provided.
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