3.3.2 · D1Combinational Circuits

Foundations — Ripple-carry adder

2,793 words13 min readBack to topic

Before you can read the parent note, you must own every symbol it uses without apology. This page builds each one from absolute zero: what it means, what it looks like, and why the topic needs it. Nothing here assumes you have seen a logic gate before.


1. A bit — the smallest thing there is

The picture: a light switch. Down = (off), up = (on). Every wire in the adder carries exactly one of these two states at any moment.

Why the topic needs it: the whole adder is made of wires, and each wire holds exactly one bit. Later, when we give those wires names, each name will point at one specific switch.

Figure — Ripple-carry adder

2. A binary number — bits lined up in columns

So the four bits mean:

The picture: think of egg cartons of size . A means "this carton is used", a means "empty". Add up the used cartons to get the decimal value.

Why the topic needs it: the adder takes two binary numbers and as input. Understanding "column worth doubles" is what makes carrying make sense.


3. LSB and MSB — the two ends of the number

The picture: in the number , flipping the right end () changes the value by ; flipping the left end changes it by . Big end matters more.

Why the topic needs it: the parent note says the carry ripples from LSB to MSB. That is a direction — from the tiny-value end toward the big-value end. You cannot picture "ripple" without knowing which way is which.


4. Bit-width and subscripts — naming one bit out of many

The picture: a row of numbered mailboxes. For , the number is split into four labelled boxes; the box is "column ".

Why the topic needs it: the parent writes formulas with a placeholder so one line describes every column at once, whether the adder is or bits wide. Master the subscript and the whole adder collapses into a single stage you understand.


5. Carry — the bit that spills into the next column

The picture: water overflowing a small cup into the cup on its left. = the carry entering column from the right; = the carry leaving column toward the left.

Figure — Ripple-carry adder

Why the topic needs it: the carry is the entire reason the machines must be chained. Without carries every column would be independent and instant. The carry is the wave that makes it "ripple".


6. The sum bit — what actually gets written down

The picture: when you add on paper you write the (that is ) and carry the (that is ). In binary : write , carry .

Why the topic needs it: the final answer of the adder is the whole row of sum bits , plus possibly a top carry . Without there is no answer to read off.


7. XOR () — "different?" in one gate

0 0 0
0 1 1
1 0 1
1 1 0

Why THIS tool? We need something that answers "is the count of s odd?" Adding two bits with no carry, and give a sum bit (odd), while and give an even count → sum bit . That is exactly XOR's table. When we chain three of them, is whenever an odd number of the three inputs are — which is precisely the sum bit. XOR is the "odd-parity detector", and parity is what a sum column needs.

The picture (its gate symbol): the curved-back shield below is the standard XOR drawing. Learn the shape now so the parent's circuit diagram is readable.

Figure — Ripple-carry adder

8. AND () and OR () — the carry's two words

(AND) (OR)
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1

The picture (their gate symbols): the flat-backed "D" is AND; the curved-back shield with a pointed nose is OR. These three shapes (with XOR from Section 7) are the entire visual vocabulary of the parent's circuit.

Figure — Ripple-carry adder

Why the topic needs it: the carry-out uses AND and OR to say "any two inputs are ". We build that exact expression in the next section.


9. Truth table — the complete behaviour, no gaps

The picture: an exhaustive checklist. Three inputs rows, no scenario left unlisted.

Here is the full-adder table, with meaning "carry coming in" and meaning "carry going out" (these are just and for a single column, written in lowercase when we look at one stage in isolation):

sum(dec)
0 0 0 0 0 0
0 0 1 1 0 1
0 1 0 1 0 1
0 1 1 2 1 0
1 0 0 1 0 1
1 0 1 2 1 0
1 1 0 2 1 0
1 1 1 3 1 1

Deriving from the table (step by step, WHY it is majority):

  1. WHAT we look for: the rows where . From the table those are exactly rows — the last four rows where the decimal sum is or .
  2. WHY those rows: precisely when the column total is , and a total of or needs at least two of the three inputs to be .
  3. WHAT IT LOOKS LIKE as an expression: "at least two are " = "( and ) OR ( and ) OR ( and )". Writing AND as juxtaposition and OR as :

Check it against the four rows: any two inputs being switches on one of the three AND-terms, so the OR fires — matching the table exactly. This "at-least-two-of-three" pattern is the majority function. That is why the carry is majority and not XOR: XOR asks "odd?", majority asks "at least two?" — different questions, different circuits.

Why the topic needs it: the parent derives the full-adder equations by staring at this 8-row table. The table is the ground truth; the formulas are just a compact way to say the same thing.


10. Full adder & half adder — the machine per column

The picture: a full adder is a box with three input wires and two output wires. Stack of them (one per column) and wire each one's into the next one's — that chain is the ripple-carry adder.

Why the topic needs it: the parent says "an -bit RCA is cascaded full adders". Every foundation above exists so this sentence becomes obvious.


11. Propagation delay — why waiting happens

The picture: dominoes. Knock the first, and there is a tiny pause before the next tips. A carry rippling through stages is pauses in a row.

Why the topic needs it: this is the whole cost story. Because each carry waits for the one before it, the total delay grows like — written — and that slowness is what motivates the faster Carry-lookahead adder.


How the foundations feed the topic

Bit 0 or 1

Binary number columns double

LSB and MSB ends

Bit width n

Subscripts name each bit

Carry spills to next column

Sum bit stays in column

XOR AND OR gates

Truth table all cases

Full adder one column

Ripple carry adder

Propagation delay

Why it is slow O of n


Equipment checklist

Convert to decimal
Which bit is the LSB of , and what is it worth?
the rightmost bit (), worth
What does the bit-width count?
how many bits (columns) the number has — one full adder per bit
In an -bit number, what is the index of the MSB?
(because indexing starts at )
In , what is ?
(second from the right)
What is the difference between and in a column?
is the digit that stays in column ; is the carry that goes to the next column
What is the default carry into the LSB, ?
for plain addition (set to only for two's-complement subtraction)
and
and (XOR is 1 only when inputs differ)
In Boolean algebra, what is ?
(this means OR, not arithmetic)
What is (AND) and (AND)?
and (AND needs both to be 1)
How many rows in a truth table with 3 inputs?
Why is the carry-out the majority function, not XOR?
carry appears when at least two of three inputs are (sum ) — that is majority, while XOR only asks "odd count?"
What extra input does a full adder have that a half adder lacks?
an incoming carry
Why does a carry "ripple" rather than appear instantly?
each stage's carry-out depends on the previous stage's carry-in, so they resolve one after another (propagation delay)
What does delay mean in words?
total delay grows in proportion to the number of bits — double the bits, double the wait

Connections

  • Ripple-carry adder — the parent this page prepares you for.
  • Full adder — the per-column machine built from these gates.
  • Half adder — the two-input cousin, first-column only.
  • Carry-lookahead adder — the faster design that beats delay.
  • Two's complement — where these bits and carries enable subtraction.
  • Overflow detection — reading the top carries for signed results.
  • Combinational circuits — the family RCA belongs to.
  • Propagation delay — the timing idea behind "ripple is slow".