Skip to content
BetterDL

Carry-in

Also called: carry in, Cin, input carry, incoming carry

The carry that enters a column of an addition from the column to its right. A full adder has a carry-in input; a half adder doesn't.

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.

ABCSCout

Worked example

Example

Why C0 = 1 matters in subtraction

Compute 0110 − 0011 (6 − 3) on an adder with B inverted to 1100.

  1. 1.

    With C0 = 1: 6 + 12 + 1 = 19 = 1 0011. Keep 4 bits: 3. Correct.

  2. 2.

    With C0 = 0: 6 + 12 = 18 = 1 0010. Keep 4 bits: 2. One too small.

  3. 3.

    The carry-in is the +1 that turns the one's complement into the two's complement.

Common mistakes

  • Using a half adder in bit 0 of an adder/subtractor.

  • Leaving C0 = 0 when subtracting.

  • Confusing a stage's carry-in with the adder's final carry-out.

Practice Carry-in

Interactive questions with instant feedback and a worked solution for every wrong answer.

Learn it step by step

Carry-in is taught in Adders and ALUs.