|
![](/i/fill.gif) |
clipka wrote:
> It is "top" and "bottom", "left" and "right" that are meaningless in the
> context of memory layout, but "start" and "end" are absolutely not:
If you have a machine whose instructions are all 32-bits long, asking the
order of bytes within a machine word might not make much sense.
But OK, I'll grant you that "low address" chronologically comes before "high
address" for at least some instructions, generally speaking.
> They're called "big-endian" and "little-endian" not because a particular
> byte is on the "biggest" (or "smallest") address, but because the
> "biggest" byte (=MSB, or "smallest" byte =LSB) comes first in memory.
I know that. I was arguing about "first" in memory, not "biggest" address.
Indeed, I'd say "bigger address" makes more sense / is less ambiguous than
"first address". But all the memory is there all the time. To call one
memory address "before" another, you have to have some chronological
ordering of memory addresses. Which you pointed out is the auto-increment
types of instructions, including the implicit auto-increment of the PC.
> ... which, as a matter of fact, is exactly why the terms "big-endian"
> and "little-endian" so beautifully hit home.
Yep.
--
Darren New, San Diego CA, USA (PST)
C# - a language whose greatest drawback
is that its best implementation comes
from a company that doesn't hate Microsoft.
Post a reply to this message
|
![](/i/fill.gif) |