Addressing Memory

We generally talk about addressing memory in terms of addressing words.

Why not address by bits?

When we address words of memory, we can refer to larger individual chunks using fewer actual addresses.

To address a 32-bit word,
how many of the bits can you ignore in order to locate and specify that word?

To address the full word,
You can ignore all but the location of the first bit.
The next 31 bits all belong to this word.

For example,

Say we address this first word as 3005 Memory Lane.

The next address, for the next 32 bits can be safely addressed as 3006 Memory Lane.

You've addressed several bits of memory by specifying the size of the memory you're addressing (one word: how many bits are included in your address - i.e., How many acres of land this address stipulates in it's property deed).

By doing it at the word level you've used fewer addresses to target big bunches of memory.

If you were to address each byte in memory, you'd need to go from 3005 to 3037 (3005+32) Just to address these 32 bytes.

Think about what you would need to address 1K?
What about 1 M?

1 G?

That's an awful lot of bits just to pick out one other bit.

body text Copyright 1997 Elizabeth Rodgers graphics images Copyright 1997 Elizabeth Rodgers Permission is granted to provide these pages in their original, unaltered form online for educational purposes. They may not be republished or included on a CDROM, disk or other media or with any published work without the express permission of the copyright holders (this includes FAQ books).