How does using memory with more bits allow you to reduce the address bus?
With 16-bit wide memory a read of address xxx0 gives you two bytes: the byte at address xxx0 and the byte at address xxx1. So the addresses ending in "1" are superfluous; you only read address xxx0, never xxx1. Now, since the last address bit will always be zero, we can drop it, ending up with an address 1 bit shorter.