Binary addition
The Fundamentals of Binary Addition
Binary addition works column by column, exactly like decimal long addition - but with only two digits (0 and 1). Before tackling full 8-bit sums, it is essential to know the four basic addition facts and understand what happens when a column sum reaches or exceeds the base (2).
| Addends | Sum in binary | Written as | Carry? |
|---|---|---|---|
| 0 + 0 | 0 | write 0 | No |
| 0 + 1 | 1 | write 1 | No |
| 1 + 0 | 1 | write 1 | No |
| 1 + 1 | 10 | write 0 | Carry 1 |
The fourth fact is the critical one: 1 + 1 = 2 in decimal, but 2 in binary is written as 10. This means you write 0 in the current column and carry a 1 into the next column to the left - exactly as you carry a 1 in decimal addition when a column sum reaches 10.
The Rule of Carry
In any number base b, the carry rule is: when the total in a column is greater than or equal to b, write the remainder and carry the quotient into the next column. In binary (base 2):
- Column total 0 or 1: write the total, no carry.
- Column total 2: write 0, carry 1. (2 ÷ 2 = 1 remainder 0)
- Column total 3: write 1, carry 1. (3 ÷ 2 = 1 remainder 1)
AQA limits column totals to a maximum of 3 (adding three 1s), so you will never carry more than 1. The carried 1 simply becomes an extra addend in the next column to the left.
Worked Examples
The three tabs below progress from a simple two-number sum with no carries, through a two-number sum with cascading carries, to a three-number sum that includes a column where three 1s must be added together.
Two Numbers - No Carries Needed
Add 00100101 (37) + 00010010 (18).
Every column contains at most one 1, so no carries arise. Work left to right through the columns, writing the column total directly:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | |
|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | |
| + | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 |
| = | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 |
Result: 00110111 = 32+16+4+2+1 = 55. Check: 37 + 18 = 55 ✓
Two Numbers - Cascading Carries
Add 00111001 (57) + 00010111 (23).
Work right to left. A carry produced in one column becomes an extra 1 in the next, which may trigger another carry - a "cascade". The carries row (C) shows the value carried into each column from the right:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | |
|---|---|---|---|---|---|---|---|---|
| C↑ | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
| 0 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | |
| + | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 1 |
| = | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
Column-by-column (right to left): 1s: 1+1=0 carry 1. 2s: 0+1+c1=0 carry 1. 4s: 0+1+c1=0 carry 1. 8s: 1+0+c1=0 carry 1. 16s: 1+1+c1=1 carry 1. 32s: 1+0+c1=0 carry 1. 64s: 0+0+c1=1. 128s: 0+0=0.
Result: 01010000 = 64+16 = 80. Check: 57 + 23 = 80 ✓
Three Numbers - Column of Three 1s
Add 00110010 (50) + 00011001 (25) + 00001010 (10).
Column 4 (16s) contains three 1s: 1+1+1 = 3 = 11 in binary - write 1, carry 1. The third addend extends the carry rows to cover carries produced by any of the three numbers:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | |
|---|---|---|---|---|---|---|---|---|
| C↑ | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | |
| + | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 |
| + | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 |
| = | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Column 4 (16s): 1+1+0+c1 = 3 = write 1, carry 1. This is the 1+1+1 case: sum=3, remainder=1, carry=1.
Result: 01010101 = 64+16+4+1 = 85. Check: 50 + 25 + 10 = 85 ✓
Key Takeaways
- The four binary addition facts are: 0+0=0, 0+1=1, 1+0=1, 1+1=10 (write 0, carry 1).
- When three 1s appear in a column (the maximum for AQA): 1+1+1=11 in binary - write 1, carry 1.
- The rule of carry in base 2: if the column total is ≥2, write (total mod 2) and carry (total div 2) into the next column left.
- A carry produced in one column becomes an extra addend in the next, potentially causing a chain of cascading carries.
- For AQA: answers are at most 8 bits long. No carry will extend beyond the 8th bit (128s column), and no column will ever contain more than three 1s.