Contents

Digital Electronics
Number Systems
Logic Gates
Boolean Algebra
Combinational Circuits
Sequential Circuits
Memory & PLDs
Digital System Design
Other Topics
Other Subjects
Section Progress9%

2 of 23 articles

Full Adder

Three input adder, carry in, truth table, implementation.

Darshan N
Updated: 19 March 2026
6 min read

A full adder extends the half adder by accepting a third input: the carry input (Cin) from a previous addition stage. This makes the full adder capable of performing binary addition at any bit position in a multi-bit number, including intermediate and most significant bit positions. It is the fundamental building block of all multi-bit adders used in ALUs and arithmetic circuits.

Full Adder: Truth Table and Block DiagramTruth Table (3 inputs)ABCinSumCout0000000110010100110110010101011100111111Block DiagramFullAdderABCinSumCout3 inputs: A, B, Cin2 outputs: Sum, CoutCan be cascaded for multi-bit additionSum = A XOR B XOR Cin | Cout = AB + BCin + ACin
Figure 1: Full adder truth table and block diagram with three inputs and two outputs

Core Concept: Three-Input Binary Addition

A full adder adds three binary inputs: the two data bits A and B, and a carry input Cin from the previous less significant bit stage. It produces a 2-bit result: Sum and Carry out (Cout). The eight possible input combinations (2^3 = 8) cover all cases of three-bit binary addition. The maximum sum is 1+1+1 = 11 in binary (decimal 3), which gives Sum=1 and Cout=1.

The Sum output of a full adder is 1 when an odd number of inputs are 1. This is the behavior of a three-input XOR gate. The Cout output is 1 whenever at least two of the three inputs are 1. This corresponds to the majority function of three variables.

Mathematical Expression

From the truth table, the two output Boolean expressions for a full adder are derived as follows. The Sum output is:

S = A XOR B XOR Cin

The Carry output expression is obtained by identifying the minterms where Cout=1 (rows 3, 5, 6, 7 in the truth table) and simplifying using K-Map. The minimized expression is: Cout = AB + B.Cin + A.Cin. This is the majority function — the output is 1 when a majority (2 or more) of the three inputs are 1. An alternative equivalent form is: Cout = AB + Cin(A XOR B).

The Cout expression Cout = AB + Cin(A XOR B) reveals the internal structure when the full adder is implemented using two half adders. The first half adder computes (A XOR B) as an intermediate sum and AB as the first partial carry. The second half adder adds Cin to (A XOR B) to get the final Sum, and produces a second partial carry Cin(A XOR B). The final Cout is the OR of the two partial carries: AB + Cin(A XOR B).

Practical Understanding: Full Adder from Two Half Adders

A full adder can be constructed using two half adders and one OR gate. The first half adder takes A and B as inputs and produces an intermediate sum S1 = A XOR B and an intermediate carry C1 = AB. The second half adder takes S1 and Cin as inputs, producing the final Sum = S1 XOR Cin = A XOR B XOR Cin and an intermediate carry C2 = S1.Cin = Cin(A XOR B). The final Cout = C1 OR C2 = AB + Cin(A XOR B).

In terms of gate count, a full adder requires 2 XOR gates, 2 AND gates, and 1 OR gate when built from two half adders. Using NAND gates only, a full adder requires 9 NAND gates. This is an important value for GATE questions on universal gate implementations.

Solved Numerical Example

A full adder receives inputs A=1, B=1, and Cin=1 (as would happen at bit position 1 during binary addition of 11 + 11). Compute the Sum and Cout using the full adder equations.

Example
Given:
A = 1, B = 1, Cin = 1
This represents addition at an intermediate bit position with carry-in = 1.

Why this formula applies:
Full adder handles three inputs; half adder cannot process Cin.

Formula:
Sum  = A XOR B XOR Cin
Cout = AB + B·Cin + A·Cin

Substitution:
Sum  = 1 XOR 1 XOR 1
Cout = (1·1) + (1·1) + (1·1)

Calculation:
Step 1: 1 XOR 1 = 0
Step 2: 0 XOR 1 = 1   → Sum = 1
Step 3: Cout = 1 + 1 + 1 = 1 (Boolean OR)   → Cout = 1

Result: Sum = 1, Cout = 1
Binary result at this bit: 11 (decimal 3)
Meaning: 1 + 1 + 1 = 3 = binary 11 → Sum bit = 1, Carry bit = 1 ✓

Final Answer:
Sum = 1, Cout = 1
This correctly represents 1+1+1 = 3 in decimal = 11 in binary.
Exam Tip: In GATE, a common question is: how many full adders are needed to add two n-bit numbers? The answer is n full adders for a ripple carry adder (since each stage needs to process Cin). If one half adder is used at the LSB, then (n-1) full adders are needed. Also remember: Cout = AB + Cin(A XOR B) is equivalent to Cout = AB + BCin + ACin. Both are valid and equally correct.

Loading lab...

Quick Revision

  • Full adder has 3 inputs (A, B, Cin) and 2 outputs (Sum, Cout). Truth table has 8 rows.
  • Sum = A XOR B XOR Cin. Cout = AB + BCin + ACin (majority function).
  • Cout = 1 when 2 or more of the 3 inputs are 1.
  • Full adder = 2 Half Adders + 1 OR gate. Gate count: 2 XOR + 2 AND + 1 OR.
  • NAND-only implementation of full adder: 9 NAND gates.
  • For n-bit ripple carry adder: n full adders needed (or 1 half adder + (n-1) full adders).
  • GATE trap: Do not confuse Cout = AB + Cin(A XOR B) with Cout = AB + Cin(A XNOR B). The correct term is A XOR B, not XNOR B.

Full Adder Quiz

Test your understanding of full adder truth tables, Boolean expressions, and carry logic.

Question 1 of 3

Q1.For a full adder with A=1, B=1, Cin=1, what are the Sum and Cout outputs?