Half Adders Full Adders
Half Adders Full Adders
2 sum: 4
Inputs Output
6 Sum: 4
8 Carry: 1
Binary Addition
In binary addition we do the same. e.g. 1 + 0 = 1
Numbers Output
1 sum: 1
Numbers Output
1 Sum: 0
1 Carry: 1
Half adder
We need a logic circuit that will correctly add together the bits and produce the
required output and carry
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Half Adder
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum
Carry Out
We have to keep carrying through so we need multiple adders, each with 3 inputs
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in 1 0
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum 4
Carry Out 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in 1 1 0
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum 2 4
Carry Out 1 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in 1 1 1 0
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum 0 2 4
Carry Out 1 1 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in 1 1 1 0
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum 1 0 2 4
Carry Out 0 1 1 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
More complicated addition...
Suppose we have the following addition in denary : 999 + 25 = 1024
Carry in 1 1 1 0
Digit 1 0 9 9 9
Digit 2 0 0 2 5
Sum 1 0 2 4
Carry Out 0 1 1 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
Now with binary
Now let’s try a binary addition 1011 + 0011 = 1110 11 + 3 = 14
Carry in 0 1 1 0
Digit 1 1 0 1 1
Digit 2 0 0 1 1
Sum 1 1 1 0
Carry Out 0 0 1 1
We have to keep carrying through so we need multiple adders, each with 3 inputs
The full adder logic
Carry In Input 1 Input 2 Carry Out Sum
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
Notice the pattern … No inputs s0c0 One input s1c0 Two inputs s0c1 Three inputs s1c1
Full Adder (One implementation)
8 bit adder
Source: Wikimedia
Half
Adder
Full
Adder
Full
Adder
Full
Adder
Example 1 : 3 + 2=5 / 0011 + 0010 = 0101
1
0
1
1
0
0
0
0
Example 1 : 8 + 7 = 15 / 1000 + 0111 = 1111
0
1
0
1
0
1
1