BCD Adder in Digital Logic (original) (raw)

Last Updated : 26 Nov, 2025

**BCD stands for binary coded decimal. It is used to perform the addition of BCD numbers. A BCD digit can have any of ten possible four-bit representations. Suppose, we have two 4-bit numbers A and B. The value of A and B can vary from 0(0000 in binary) to 9(1001 in binary) because we are considering decimal numbers.

The output will vary from 0 to 18 if we are not considering the carry from the previous sum. But if we are considering the carry, then the maximum value of output will be 19 (i.e. 9+9+1 = 19). When we are simply adding A and B, then we get the binary sum. Here, to get the output in BCD form, we will use BCD Adder.

What is BCD Adder?

A BCD adder is a circuit for the addition of two binary-coded decimal numbers. BCD is another format used in representing numbers where each digit will be represented using a 4-bit binary code. In BCD, it is obvious that the most significant bit (leftmost) is always 0, and therefore each digit will be confined to the range 0-9.

A BCD adder contains four full-adder circuits in cascade. Each full-adder is contrived to consider both the two BCD digits being added and a carry-in from the previous stage. The output of each full-adder produces a sum bit and a carry-out bit, which becomes the input to the following stage.

When adding BCD numbers, if the sum of two BCD digits is greater than 9, the result is greater than 1001 in binary and hence is not valid in BCD. A correction needs to be performed by adding 0110 (6 in BCD) to the sum to get the correct BCD result.

A BCD adder is, overall, a design capable of correctly adding two BCD numbers and making all necessary corrections so that the answer is also a valid BCD number.

Steps to Design a BCD Adder

**Example 1:

Input :
A = 0111 B = 1000
Output :
Y = 1 0101

Explanation: We are adding A(=7) and B(=8).
The value of binary sum will be 1111(=15).
But, the BCD sum will be 1 0101,
where 1 is 0001 in binary and 5 is 0101 in binary.

**Example 2:

Input :
A = 0101 B = 1001
Output :
Y = 1 0100

Explanation: We are adding A(=5) and B(=9).
The value of binary sum will be 1110(=14).
But, the BCD sum will be 1 0100,
where 1 is 0001 in binary and 4 is 0100 in binary.

**Note: If the sum of two numbers is less than or equal to 9, then the value of BCD sum and binary sum will be same otherwise they will differ by 6(0110 in binary). Now, lets move to the table and find out the logic when we are going to add "0110".

We are adding "0110" (=6) only to the second half of the table. **The conditions are:

  1. If C' = 1 (Satisfies 16-19)
  2. If S3'.S2' = 1 (Satisfies 12-15)
  3. If S3'.S1' = 1 (Satisfies 10 and 11)

So, our logic is

**C' + S3'.S2' + S3'.S1' = 1

Advantages of BCD Adder

There are various reasons why a BCD adder is beneficial in digital logic.

These benefits show how critical BCD adders are in processing decimal arithmetic using digital logic well and correctly.

Disadvantages of BCD Adder