Related Resources: computer technology
Binary Addition Review
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1 + 1 = 10
1 + 1 + 1 = 11
1 + 1 → 0, carry 1 (since 1 + 1 = 0 + 1 × binary 10)
Adding two "1" digits produces a digit "0", while 1 will have to be added to the next column. This is similar to what happens in decimal when certain single-digit numbers are added together; if the result equals or exceeds the value of the radix (10), the digit to the left is incremented:
5 + 5 → 0, carry 1 (since 5 + 5 = 10 carry 1)
7 + 9 → 6, carry 1 (since 7 + 9 = 16 carry 1)
This is known as carrying. When the result of an addition exceeds the value of a digit, the procedure is to "carry" the excess amount divided by the radix (that is, 10/10) to the left, adding it to the next positional value. This is correct since the next position has a weight that is higher by a factor equal to the radix. Carrying works the same way in binary:
1 | 1 | 1 | 1 | 1 | Carried Bits | |
---|---|---|---|---|---|---|
0 | 1 | 1 | 0 | 1 | ||
+ | 1 | 0 | 1 | 1 | 1 | |
___________________ | ||||||
= 1 0 0 1 0 0 = 36 |
11 1 <-- Carried Bits --> 11
| ||
1001101 |
1001001 |
1000111 |
+ 0010010 |
+ 0011001 |
+ 0010110 |
= |
= |
= |
1011111 |
1100010 |
1011101 |
The addition problem on the left did not require any bits to be carried, since the sum of bits in each column was either 1 or 0, not 10 or 11. In the other two problems, there definitely were bits to be carried, but the process of addition is still quite simple.
As we'll see later, there are ways that electronic circuits can be built to perform this very task of addition, by representing each bit of each binary number as a voltage signal (either "high," for a 1; or "low" for a 0). This is the very foundation of all the arithmetic which modern digital computers perform.