From this point on the Half Adder will be depicted as follows:
The Full Adder will add the three necessary bits by adding a+b first and then adding the previous carry to that sum. To do this we can use two Half Adders and an OR gate.
The first half adder is used to perform a+b, that sum and the previous carry are inputs for the second half adder which produces the resulting sum. An OR gate is needed to produce the final carry because a carry may occur from either addition but not both. Why?
What we have shown here is a 1-bit full adder. To construct an n-bit full
adder, we put the adders together in series by connecting the carry out to the
carry in. Click here for a 4-bit adder.
Can you convince yourself that this representation of a full adder will work with both positive and negative numbers?
Java source for the full adder applet.