If you have a byte-addressable memory (i.e every byte in the memory has an address) and an address bus of size 12 (i.e 12 wires in the address bus or 12 bits in the Memory Address Register). How much maximum RAM can you support ?
If there are just 2 bits in the address, then there can only be 4 addresses, viz.
00, 01, 10, 11
If 3 bits are allowed in the address, then we can have maximum 8 addresses:
000, 001, 010, 011, 100, 101, 110, 111
So, if we have n bits to store an Address (n-bits in Address Register) or n-wires to transfer the address (Address bus of size 10), then we can have RAM of 2n addresses.
Now there are 2n addresses, and each address is of 1 byte (because its a byte-addressable memory, so every byte will have a unique address or every address will be of 1-byte long).
Hence, total memory will be equal to
size of each address * number of addresses = 8 * 2n
If n=12 (as given in the question)
Size of memory = 8 * 212 bits = 212 bytes = 22 Kilo Bytes (210 Bytes = 1 KB) = 4 KB
6 Comments
fantastic tutorial!!!!!!!!! easy 2 understand
Tq
Nicely explained…
Thanks. if it is a word adressable memory, then also it should be 4 K right?
I meant uif it word addressable then every time i send an address i will access 16 bits and total addresses is 2 power 12 = 4K so I should be able to access 64K memory. Is that correct?
[…] ¿Cuánta memoria direccionable por byte puede usar con un bus de direcciones de 12 bits? […]