Each column of a binary addition produces two things: a sum bit that stays in the column, and a carry that moves left. The sum bit is the low bit of the column's total.
- Half adder (two inputs): S = . The total is 0, 1 or 2, and only a total of 1 leaves a 1 in the column.
- Full adder (three inputs): S = , with C the carry-in. The total is 0 to 3, and S = 1 when it's odd (1 or 3).
So the sum bit is the odd-parity function of the column's inputs. That's why adders build S from XOR gates: the K-map of a 3-input XOR is a checkerboard, with no two 1s adjacent, so no AND-OR grouping helps.
In a ripple carry adder, Sᵢ = Pᵢ ⊕ Cᵢ, where Pᵢ = Aᵢ ⊕ Bᵢ is the propagate signal. So a sum bit can't be final until the carry into its column is final, which is why higher sum bits settle later.
| A\BC | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 0m0 | 1m1 | 0m3 | 1m2 |
| 1 | 1m4 | 0m5 | 1m7 | 0m6 |