Full Adder
A full adder adds three bits — A, B and a carry in from the column before — and gives a Sum and a Carry out. Chain one per bit, the carry out of each into the next, and you can add numbers of any width.
Try it live
This is the Circuit Simulator itself, running in the page — it is LogicsBench's own example design, read-only. Open it full size, and sign in to make your own copy to change.
- Step through all eight combinations with − and + under the switches.
- Check that Cout follows the majority: any two inputs at 1 carry.
- Fork it and chain a second one to make a 2-bit adder.
Full adder truth table
| A | B | Cin | Sum | Cout |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
How it works
Sum = A ⊕ B ⊕ CinCout = AB + B·Cin + A·Cin
Sum is 1 when an odd number of the three inputs are 1: two XOR gates in a row.
Carry out is 1 when at least two of the three are 1 — the majority function, three ANDs into an OR.
Four full adders in one package, with the carries chained inside, is a 74LS283 (or the older 74LS83, the same circuit with the power on pins 5 and 12).