There are 16 addresses reserved for special purposes, so that
leaves room for 112 general I2C devices per bus.
A device's address is programmed into it by its manufacturer, and
there is no guarantee that any two devices won't have the same
address, so in practice, the upper limit would likely be less than
112.