difference between "addressable" and "address" in memory? I'm struggle on this practice question from this site....

Calculate the number of bits required in the address for memory having
size of 16 GB. Assume the memory is 4-byte addressable.

MY QUESTION IS: what is the difference between an &quot;address&quot; and &quot;the memory is 4 byte addressable&quot;?
I understand an address would be its location in memory that is represented by bits, such as 2^n, where n is the number of bits in the address. But I'm confused about addressable in this question and how that's different than address
2^n * 4 bytes = 2^34
The solution is 32 bits
Address is a label that identifies a memory location. The memory is $4$ byte addressable means that you have labels that refer to memory locations of size $4$ bytes. You don't have names for smaller sizes. For example, if we have a memory of $12$ bytes and the memory is $4$ byte addressable, then we can have $3$ blocks of memory to which we can assign an address. Their addresses could be Memory block 1, The glorious block 2 and Ceres. Instead of fancy long names what is common is for the addresses to be binary numbers. Since there are $3$ addresses, then we need at least $2$ bits.
In your problem, instead of $12$ bytes, you have $16$ GB ${}=2^{34}$ bytes. The memory is $4$ byte addressable. So, we can have $2^{34}/4=2^{32}$ different addresses. So, we need $32$ bits to encode all addresses.