Memories in a real computer use a variety of tricks to reduce the explosion of wires. Another common method is to break up memory into separate banks and then select from the appropriate bank. The number of banks is usually power of 2 so that 1 or more of the address bits can be used to select which memory bank is turned.
Fig. 1 shows a 32-word memory of 5-bit words broken into 2 banks:
If there are 4 or more banks, the uppermost bits must be sent into a
decoder. The following picture shows 4 banks of 16 words each. Many
details are omitted: