I thought there were as many possible addresses as possible private keys, is this not so?
Nope. Not so.
Bitcoin addresses are calculated with a RIPEMD160 hash. That's a 160 bit value. Therefore, there are only 2
160 possible bitcoin addresses.
(Actually there are both P2PKH, starting with a "1", and P2SH addresses, starting with a "3", so that doubles the number of potential addresses to 2
161)
That would make 2^256 or roughly 10^77 possible addresses.
2
161 is approximately
2.9 X 10
48 possible addresses.