1

I have been asked the following question

A memory device has 16 address lines and 64 data lines. Calculate the storage capacity of the memory in bytes and kilobytes

I know that if there are 16 address lines, there are 2^16 = 65,536 addressable locations.

How do I use the number of data lines to calculate the storage capacity?

I thought that each addressable location can store 1 bit of information so I don't understand why the datalines are relevant at all

EML
  • 395
  • 1
  • 6
  • 15
  • 1
    If you address only 1 bit at a time, then 63 of your data lines are going to waste, since you only have 1 bit of data to transfer. So presumably you address 64 bits at a time. They likely don't overlap, or else some of your address lines are going to waste. – Nate Eldredge Nov 05 '22 at 17:19

1 Answers1

1

One memory location stores 1 byte (this is equal to 8 bits). Easy mistake to overlook:)

Therefore using your example:

2^address lines = addressable locations 2^16 = 65,536 addressable locations.

Addressable locations * data lines = accessible storage
65,536 * 64 = 4194304 bits

Convert to bytes
4194304 bits= 524,288 bytes

Convert to KB 524,288/1024 = 512 KB

Watch out when converting bytes to KB. People often make the mistake to divide by 1,000. However, in computer science/binary code we divide by 1,024. This is because computers use binary math instead of a decimal system. So there's 1024Bytes in KB, 1024KB in MB etc. etc.