[vox-tech] Memory addressing?

Brian Lavender brian at brie.com
Tue Jun 22 09:11:44 PDT 2010


Can someone confirm what is correct? 

Tim and I were discussing memory addressing at Crepeville last night
and we had a disagreement about how memory is addressable. I say that
on today's common intel i386 32 bit architecture (in case you are one of
those souls who builds your hardware from scratch), that memory is byte
(octet) addressable. You can load a byte from memory into the lower 8
bits of a register. Tim says that memory is only addressable on 32 bit
word boundaries.

Say you look at memory in bits and then on the left is the memory
address. 

I say that memory is normally byte addressable and the addressing
corresponds to byte (octet) boundaries.

Address  bits
0        0     7      15     23     31
3        0     7      15     23     31
7        0     7      15     23     31
11       0     7      15     23     31
15       0     7      15     23     31

Tim says that memory is only 32 bit word addressable 

Address  bits
0        0     7      15     23     31
1        0     7      15     23     31
2        0     7      15     23     31
3        0     7      15     23     31
4        0     7      15     23     31


-- 
Brian Lavender
http://www.brie.com/brian/

"There are two ways of constructing a software design. One way is to
make it so simple that there are obviously no deficiencies. And the other
way is to make it so complicated that there are no obvious deficiencies."

Professor C. A. R. Hoare
The 1980 Turing award lecture


More information about the vox-tech mailing list