Lecture 10-Half and Full Adder
Lecture 10-Half and Full Adder
Half adder is a combinational logic circuit that is designed to add two binary digits. The half adder
provides the output along with a carry (if any). The half adder circuit can be designed by connecting an
XOR gate and one AND gate.
It has two input terminals and two output terminals for sum (S) and carry (C).
If we assume A and B as the two bits whose addition is to be performed, a truth table for half adder with
A, B as inputs and Sum, Carry as outputs can be tabulated as follows.
If you observe the truth table, the sum output of the binary addition carried out above is similar to that of
an Ex-OR operation, while the carry output is similar to that of an AND operation. The same can be
verified with help of Karnaugh Map.
We can derive the Boolean Expression of Sum as follows:
Sum = A’ B + A B’
Sum = A ⊕ B
If A and B are binary inputs to the half adder, then the logic function to calculate sum S is Ex – OR of A
and B and logic function to calculate carry C is AND of A and B. Combining these two, the logical
circuit to implement the combinational circuit of Half Adder is shown below.
Five NAND gates are required in order to design a half adder. The circuit to realize half adder using
NAND gates is shown below.
Five NOR gates are required in order to design a half adder. The circuit to realize half adder using NOR
gates is shown below
The reason these simple binary adders are called Half Adders is that there is no scope for them to add
the carry bit from previous bit. This is a major limitation of half adders when used as binary adders
especially in real time scenarios which involves addition of multiple bits. To overcome this limitation,
full adders are developed.
A Full Adder is a Combinational Logic Circuit which performs binary addition on two-digit numbers.
Full adders are complex and difficult to implement when compared to half adders.
Full adder is a digital circuit used to calculate the sum of three binary bits, which is the main difference
between this and half adder. Two of the three bits are same as before which are A, the augend bit and B,
the addend bit. The additional third bit is carry bit from the previous stage and is called Carry–in,
generally represented by CIN. It calculates the sum of three bits along including the carry. The output
carry is called Carry–out and is represented by COUT.
The block diagram of a full adder with A, B and CIN as inputs and S, COUT as outputs is shown below
Full Adder Truth Table
Based on the truth table, the Boolean functions for Sum (S) and Carry–out (COUT) can be derived using
K–Map.
The K-Map for Sum output (S) of a Full Adder is shown below:
Using the truth table and the above K-Map, the Boolean Expression of Sum (S) output of a Full Adder
can be derived as:
S=A’(B⊕ C) + A (B ⊕ C)
S=A⊕ B⊕ C
The K-Map for Carry output (COUT) of a Full Adder is shown below:
The simplified Boolean equation for COUT is:
The Block diagram of the full adder using two half adders is shown in Figure 4:
The logic diagram of the full adder using two half adders is shown in Figure-3:
From the logic diagram of the full adder using half adders, it is clear that we require two XOR gates,
two AND gates and one OR gate for the implementation of a full adder circuit using half-adders.
However, the implementation of full adder using half adder has a major disadvantage that is the
increased propagation delay. That means, the input bits must propagate through several gates in
succession that increases the total propagation delay of the full adder circuit
As mentioned earlier, a NAND gate is one of the universal gates and can be used to implement any logic
design. The circuit of full adder using only NAND gates is shown below.
The following table shows the main differences between half adder and full adder circuit.