Skip to main content

Section 7.5 Adders

In this section, we will discuss adders which are circuit elements that perform the addition operation in binary arithmetic. The first circuit element that we’ll examine is the half-adder, which is shown in Figure 7.5.1.
Figure 7.5.1. The half-adder.
A half-adder chip component takes two inputs \(A\) and \(B\) and produces two outputs: the sum \(S=A\oplus B\) and the carry \(C=A\cdot B\text{.}\) The half-adder truth table is given by Table 7.5.2.
Table 7.5.2. Half-adder truth table
\(A\) \(B\) \(S\) \(C\)
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
This behavior characterizes binary addition, where \(S\) is the binary sum of \(A\) and \(B\text{.}\) In the event that \(A=1\) and \(B=1\text{,}\) we are forced to ‘carry’ a value of one over into the next highest bit using \(C=1\) because \(S\) cannot take the value of 2 in binary. In words, this means that \(A\) plus \(B\) equals \(S\) and we carry \(C\) to the next bit.
To handle addition for multi-bit numbers, our adder must be able to produce output values for \(S\) and \(C\) that account for any values ‘carried’ from the next lowest bit in addition to the values of \(A\) and \(B\) as demonstrated by the truth table in Table 7.5.3.
Table 7.5.3. Full-adder truth table for the \(n\)th bit.
\(C_{n-1}\) \(A_n\) \(B_n\) \(S_n\) \(C_n\)
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Here, \(A_n\text{,}\) \(B_n\text{,}\) \(S_n\text{,}\) and \(C_n\) are defined for the \(n\)th bit identically to the half-adder. The \(C_{n-1}\) input did not appear in the half-adder and represents the act of ‘carrying’ overflow values from the \((n-1)\)th bit to the \(n\)th bit. Table 7.5.3 is the truth table associated with the full-adder circuit element. The full-adder circuit element can be built using the logic gate arrangement in Figure 7.5.4.
Figure 7.5.4. The full-adder.
The adders described above can be used to perform addition on multi-bit numbers, with one full-adder used for each bit. The addition of two 3-bit numbers
\begin{equation*} \underline{A_2}\ \underline{A_1}\ \underline{A_0} + \underline{B_2}\ \underline{B_1}\ \underline{B_0} = \underline{C_2}\ \underline{S_2}\ \underline{S_1}\ \underline{S_0} \end{equation*}
will be computed by the circuit in Figure 7.5.5.
Figure 7.5.5. Circuit schematic for the 3-bit adder circuit.
The full-adder associated with the lowest bit position can of course be replaced by a half-adder and achieve the same functionality.