The carry-in of a column is the carry arriving from the column to its right. Every column except the rightmost may receive one, which is why each needs a full adder (three inputs: A, B and carry-in) rather than a half adder (two inputs).
In a ripple carry adder, the carry-in of bit i is Cᵢ, which is the carry out of bit i − 1. In Boolean expressions this course writes a full adder's carry-in as C.
The carry-in of bit 0, C0, is special: nothing feeds it from below, so the designer decides what drives it.
- For plain addition, C0 = 0.
- For subtraction, C0 = 1 provides the +1 of A + + 1. In an adder subtractor, the mode line M drives C0 directly.
- For numbers wider than the adder, C0 can take the carry-out of a previous addition (add-with-carry), so a 32-bit adder can add 64-bit numbers in two steps.
If C0 is permanently 0, bit 0 can use a half adder to save gates. If it can ever be 1, bit 0 needs a full adder.