Addition, from scratch
We need two outputs: sum and carry. It turns out we already have a gate for each one.
The carry is easy. It's only 1 when both inputs are 1. That's AND.
The sum needs one more gate we haven't seen yet: XOR. Think of it as OR, but not when both inputs are on. So 0+1 gives 1, but 1+1 gives 0. Exactly what we need for the sum column.
AND and XOR, connected to the same two inputs. That's a circuit that adds two binary digits.
Two gates. That's addition.