The Full Adder
A half adder can only add two bits.
A full adder adds three:
A + B + Carry-In
This is how computers add larger binary numbers one column at a time.
Step 1
First half adder
The first XOR calculates a temporary sum from A and B.
The first AND calculates a carry if both A and B are 1.
How it works:
1. XOR(A,B) creates a temporary sum.
2. That temporary sum is added to Carry-In using another XOR.
3. Two AND gates detect carry conditions.
4. An OR gate combines the carry outputs into one final Carry-Out.
| A |
B |
Cin |
SUM |
CARRY |
Decimal |
| 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 0 | 1 | 0 | 1 |
| 0 | 1 | 1 | 0 | 1 | 2 |
| 1 | 0 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 1 | 2 |
| 1 | 1 | 0 | 0 | 1 | 2 |
| 1 | 1 | 1 | 1 | 1 | 3 |
Worked examples
Following the signals
A full adder works by combining two half adders and an OR gate.
Here are some real examples showing every intermediate step.
Reminder:
Temporary Sum = A XOR B
Carry₁ = A AND B
Final Sum = Temporary Sum XOR Cin
Carry₂ = Temporary Sum AND Cin
Final Carry = Carry₁ OR Carry₂
Example 1 — 1 + 0 + 0
| Step | Result |
| A XOR B |
1 XOR 0 = 1 |
| A AND B |
1 AND 0 = 0 |
| Temporary Sum XOR Cin |
1 XOR 0 = 1 |
| Temporary Sum AND Cin |
1 AND 0 = 0 |
| Final Carry |
0 OR 0 = 0 |
| Answer |
SUM = 1, CARRY = 0 |
Binary result:
1 + 0 + 0 = 1
Example 2 — 1 + 1 + 0
| Step | Result |
| A XOR B |
1 XOR 1 = 0 |
| A AND B |
1 AND 1 = 1 |
| Temporary Sum XOR Cin |
0 XOR 0 = 0 |
| Temporary Sum AND Cin |
0 AND 0 = 0 |
| Final Carry |
1 OR 0 = 1 |
| Answer |
SUM = 0, CARRY = 1 |
Binary result:
10₂ = decimal 2
Example 3 — 1 + 1 + 1
| Step | Result |
| A XOR B |
1 XOR 1 = 0 |
| A AND B |
1 AND 1 = 1 |
| Temporary Sum XOR Cin |
0 XOR 1 = 1 |
| Temporary Sum AND Cin |
0 AND 1 = 0 |
| Final Carry |
1 OR 0 = 1 |
| Answer |
SUM = 1, CARRY = 1 |
Binary result:
11₂ = decimal 3