Full Adder: Implementation and Truth Table

A full adder adds three bits: two operand bits and a carry from the previous column. It is the building block every multi-bit adder is made of.

Why three inputs

When you add binary numbers column by column, every column except the rightmost can receive a carry. A half adder has no input for that, so it can only handle the first column. The full adder adds a CIN input to fix exactly that.

Truth table

ABCINSUMCOUT
00000
01010
10010
11001
00110
01101
10101
11111

Building it from two half adders

First half adder

Add A and B. This gives a partial sum and a first carry.

Second half adder

Add that partial sum to CIN. This produces the final SUM and a second carry.

OR the two carries

A carry out happens if either half adder generated one. They can never both be 1, so a single OR gate combines them: COUT = C1 OR C2.

The boolean expressions

SUM = A XOR B XOR CIN and COUT = (A AND B) OR (CIN AND (A XOR B))

Chaining full adders

Wire each adder's COUT into the next one's CIN and you have a ripple-carry adder, the simplest way to add multi-bit numbers. The name comes from the carry having to ripple through every stage before the answer is final, which is what limits its speed.

Build it yourself

Start from two half adders rather than trying to wire all five gates at once.

Loading circuit…