0% found this document useful (0 votes)
32 views

Digital Logic and Design Lecture # 4: (AMD X4 Proc Photo: Sc. Am, Jan. 2010)

Digital Logic and Design Lecture #4 covered binary subtraction and the use of complements to perform subtraction in digital circuits. It discussed how to perform subtraction using addition by taking the complement of one of the numbers. Specifically, it covered 1's complement, 2's complement, and r's complement representations and how to use them to subtract binary and decimal numbers through addition of complements. Examples were provided to demonstrate subtracting numbers using complements.

Uploaded by

Abdul Hannan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views

Digital Logic and Design Lecture # 4: (AMD X4 Proc Photo: Sc. Am, Jan. 2010)

Digital Logic and Design Lecture #4 covered binary subtraction and the use of complements to perform subtraction in digital circuits. It discussed how to perform subtraction using addition by taking the complement of one of the numbers. Specifically, it covered 1's complement, 2's complement, and r's complement representations and how to use them to subtract binary and decimal numbers through addition of complements. Examples were provided to demonstrate subtracting numbers using complements.

Uploaded by

Abdul Hannan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Digital Logic and Design

Lecture # 4

(AMD X4 Proc; photo: Sc. Am, Jan. 2010)


Binary Subtraction
• Just like subtraction in any other base
– Minuend 10110
– Subtrahand - 10010
– Difference 00100
• And when a borrow is needed. Note that the
borrow gives us 2 in the current bit position.
And a full example
Consider
• Now do the operation 4 – 6

• Correct difference is -2 or -0010


• Different because 2n was brought in and made
the operation M-N+2n
Desired
• Actual desired magnitude is N-M
• To get this need to do 2n – (M-N+2)= N-M

• Doing the subtraction from 2n gives the


correct result.
Subtraction using addition
• 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, 9 9 9 9 9

•so the 9’s complement of N - Digit


n
Digit
n-1
Next
digit
Next
digit
First
digit
is (10n-1)-N
•99999……. - N
9’s complement Examples

9 9 9 9 9 9
Find the 9’s complement of 546700 and
12389 - 5 4 6 7 0 0

4 5 3 2 9 9
The 9’s complement of 546700 is 999999 -
546700= 453299
9 9 9 9 9

and the 9’s complement of 12389 is - 1 2 3 8 9


99999- 12389 = 87610.
8 7 6 1 0
1’s complement
• For binary numbers, r = 2 and r — 1 = 1,
• r-1’s complement is the 1’s complement.
• The 1’s complement of N is (2n - 1) - N.

Bit n-1 Bit n-2 ……. Bit 1 Bit 0

1 1 1 1 1

- Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
1’s complement

Find r-1 complement for binary number N with four binary digits.
r-1 complement for binary means 2n -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
1’s complement

1 1 1 1 1 1 1

The 1’s complement of


- 1 0 1 1 0 0 1

1011001 is 0100110 0 1 0 0 1 1 0

1 1 1 1 1 1 1

The 1’s complement of


- 0 0 0 1 1 1 1

0001111 is 1110000 1 1 1 0 0 0 0
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,
1 0 0 0 0 0
•so the 10’s complement of N
is 10n-N. - Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit

•100000……. - N
10’s complement Examples

Find the 10’s complement of


546700 and 12389 1 0 0 0 0 0 0

The 10’s complement of 546700 - 5 4 6 7 0 0

is 1000000 - 546700= 453300


4 5 3 3 0 0
and the 10’s complement of
12389 is 1 0 0 0 0 0

100000 - 12389 = 87611. - 1 2 3 8 9

Notice that it is the same as 9’s 8 7 6 1 1


complement + 1.
2’s complement

For binary numbers, r = 2,


r’s complement is the 2’s complement.
The 2’s complement of N is 2n - N.

1 0 0 0 0 0

- Digit
n
Digit
n-1
Next
digit
Next
digit
First
digit
2’s complement Example

1 0 0 0 0 0 0 0

The 2’s complement of


1011001 is 0100111
- 1 0 1 1 0 0 1

0 1 0 0 1 1 1

1 0 0 0 0 0 0 0
The 2’s complement of
0001111 is 1110001
- 0 0 0 1 1 1 1

1 1 1 0 0 0 1
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 =01100101
[N] =10011011
Subtraction of Numbers
using r’s complement
Subtract N from M : M – N

• r’s complement N  (rn – N )

• add M to ( rn – N ) : Sum = M + (rn – 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

You might also like