As far as I know it is impossible. 8 is the highest 3 digit binary number (111) (...)
You're thinking along the right lines, but your explanation is incorrect. The maximum isn't 8 because they're using 3 bits (bit = binary digit). It's 8 because they're using 8 bits (= 1 byte).
For example, each map tile holds information on which civilizations have discovered it (to determine what each civ's discovered map looks like). The same goes for which civilizations have discovered each technology.
To be able to do that, you need a toggle for each civilization. They're only using one byte for that, so that's why the limit is 8 (7 + barbarians).
Most of these things aren't limited by the number of bits, but by the number of bytes.
In contrast with civilizations, cities don't need this toggle business, so it works as you said.
Though 255 is the highest
8 bit number. And you can put 256 numbers in 8 bits: 0, 1, 2, ... 255. The reason the max is only 255 after all is because one number is used for the mysterious "NONE" city.
