teach-ict.com logo

THE education site for computer science and ICT

3. Full adder

We want to be able to add two single bit numbers and also an incoming carry bit. In other words we effectively want to add three single bit numbers.

A full adder is able to add two single bit numbers and an incoming carry bit. Its outputs are a digit and a carry.

For three binary bits there are $2^3$ or 8 combinations. Below, is a truth table with three inputs $A,B$ and an input called $ C_{n-1}$ which is an incoming carry bit.

Just like the half adder, it has a digit output $Q$ and a carry bit we call $C_n$. As you go down the table, the three inputs are added using the rules of binary addition to produce the two outputs. For example 1 + 1 + 1 = 1 carry 1.

This truth table can be implemented in hardware as a 'full adder'.

You would think that combining two 'half adders' would produce a 'full adder' and you would be almost correct. But it also needs an additional OR gate to output the correct carry value. The full adder hardware is shown below.

full adder

The first half adder is the XOR and AND gate on the left, the second half adder combines the $A,B$ and the $C_{n-1}$ bit, whilst the OR gate handles the output carry bit.

In larger, combined adder circuits you could show the adder more like a black box with only inputs and outputs, like this:

We have labelled the block as the $n^{th}$ full adder. On the next page we shall cascade a set of full adders.

Challenge see if you can find out one extra fact on this topic that we haven't already told you

Click on this link: full adder definition