Digital Arithmetic
57
3.4 BCD Addition and Subtraction in Excess-3 Code
Below, we will see how the excess-3 code can be used to perform addition and subtraction operations
on BCD numbers.
3.4.1 Addition
The excess-3 code can be very effectively used to perform the addition of BCD numbers. The steps to
be followed for excess-3 addition of BCD numbers are as follows:
1. The given BCD numbers are written in excess-3 form by adding ‘0011’ to each of the four-bit
groups.
2. The two numbers are then added using the basic laws of binary addition.
3. Add ‘0011’ to all those four-bit groups that produce a carry, and subtract ‘0011’ from all those
four-bit groups that do not produce a carry during addition.
4. The result thus obtained is in excess-3 form.
3.4.2 Subtraction
Subtraction of BCD numbers using the excess-3 code is similar to the addition process discussed
above. The steps to be followed for excess-3 substraction of BCD numbers are as follows:
1. Express both minuend and subtrahend in excess-3 code.
2. Perform subtraction following the basic laws of binary subtraction.
3. Subtract ‘0011’ from each invalid BCD four-bit group in the answer.
4. Subtract ‘0011’ from each BCD four-bit group in the answer if the subtraction operation of the
relevant four-bit groups required a borrow from the next higher adjacent four-bit group.
5. Add ‘0011’ to the remaining four-bit groups, if any, in the result.
6. This gives the result in excess-3 code.
The process of addition and subtraction can be best illustrated with the help of following examples.
Example 3.6
Add (0011 0101 0110) BCD and (0101 0111 1001) BCD using the excess-3 addition method and verify the
result using equivalent decimal addition.
Solution
The excess-3 equivalents of 0011 0101 0110 and 0101 0111 1001 are 0110 1000 1001 and 1000 1010
1100 respectively. The addition of the two excess-3 numbers is given as follows:
0110 1000 1001
1000 1010 1100
1111 0011 0101
After adding 0011 to the groups that produced a carry and subtracting 0011 from the groups that did
not produce a carry, we obtain the result of the above addition as 1100 0110 1000. Therefore, 1100
57
3.4 BCD Addition and Subtraction in Excess-3 Code
Below, we will see how the excess-3 code can be used to perform addition and subtraction operations
on BCD numbers.
3.4.1 Addition
The excess-3 code can be very effectively used to perform the addition of BCD numbers. The steps to
be followed for excess-3 addition of BCD numbers are as follows:
1. The given BCD numbers are written in excess-3 form by adding ‘0011’ to each of the four-bit
groups.
2. The two numbers are then added using the basic laws of binary addition.
3. Add ‘0011’ to all those four-bit groups that produce a carry, and subtract ‘0011’ from all those
four-bit groups that do not produce a carry during addition.
4. The result thus obtained is in excess-3 form.
3.4.2 Subtraction
Subtraction of BCD numbers using the excess-3 code is similar to the addition process discussed
above. The steps to be followed for excess-3 substraction of BCD numbers are as follows:
1. Express both minuend and subtrahend in excess-3 code.
2. Perform subtraction following the basic laws of binary subtraction.
3. Subtract ‘0011’ from each invalid BCD four-bit group in the answer.
4. Subtract ‘0011’ from each BCD four-bit group in the answer if the subtraction operation of the
relevant four-bit groups required a borrow from the next higher adjacent four-bit group.
5. Add ‘0011’ to the remaining four-bit groups, if any, in the result.
6. This gives the result in excess-3 code.
The process of addition and subtraction can be best illustrated with the help of following examples.
Example 3.6
Add (0011 0101 0110) BCD and (0101 0111 1001) BCD using the excess-3 addition method and verify the
result using equivalent decimal addition.
Solution
The excess-3 equivalents of 0011 0101 0110 and 0101 0111 1001 are 0110 1000 1001 and 1000 1010
1100 respectively. The addition of the two excess-3 numbers is given as follows:
0110 1000 1001
1000 1010 1100
1111 0011 0101
After adding 0011 to the groups that produced a carry and subtracting 0011 from the groups that did
not produce a carry, we obtain the result of the above addition as 1100 0110 1000. Therefore, 1100
