Addition of Two 1-Bit binary numbers - Half Adder

Here, we have the sum of the, and the carry

Let’s draw out the truth table of what happens :

We then can conclude that the logical expression representing addition is given by

Addition of Two N-Bit binary numbers - Full Adder

A binary -bit adder has two operands and a carry-in as inputs It produces a sum of and a carry out of

We have the sum of the -th term, and the carry given by

In fact, we can construct it from two half adders:

In the optimized form, we get the circuit given by:

Basic Ripple-Carry Adder

If we daisy-chain the full adders together (with the carry-in wired to the carry-out of the previous adder), we can do the sum of -bit numbers

Subtractors

Subtractors are basically the same thing as adders

N-Bit Unsigned Subtractor

We again start with only one circuit for two bits, instead of doing a truth table for the full circuit

We can then daisy-chain them, just as we did with adders to make a ripple-carry subtractor

In Two’s Complement

Adders don’t change, let’s do subtractors

Subtractors

The nice thing we can do is add a complemented form of the second number to do subtraction

Adder-Subtractor in TC

We have a control signal that determines the mode (whether we do addition or subtraction)

We can then have

AnyAny
AnyAny
Which gives this expression

By simplifying the expression, we get

Fast Adders

We know that performance matters The system value is given by

For full ripple-carry adders, the “ripple” has to reach the last carry-out to get the correct result This is not good for performance

The Critical path is the slowest input-to-output path and determines when the result is ready