|
![](/i/fill.gif) |
Am 03.08.2010 02:20, schrieb Darren New:
> clipka wrote:
>> byte ordering that /starts/ with the "big end".
>
> But that's my point. "Starts" and "ends" is meaningless. The MSB is
> either at the lowest address space or it's at the highest address space.
> The only reason we think of "starts" and "ends" that was is we write
> from left to right. I suspect "big endian" and "little endian" would be
> confusing to those speaking hebrew, arabic, or whatever version of
> chinese goes from top to bottom.
Huh?
Processors /do/ have a "native" ordering of the memory words: The
typical direction of program flow. While this may theoretically differ
between processors just like the writing direction does between
languages (though I've never seen a processor so far that would
decrement its program counter, but maybe some might use gray code
addresses), it still defines a unique logical "start" and "end" - just
like there is a unique logical "start" and "end" in each written text
(though in some writing systems you may have to guess that start and end
from the content or context, and of course you'll have the occasional
sample where start and end are intentionally ambiguous for artistic
reasons).
It is "top" and "bottom", "left" and "right" that are meaningless in the
context of memory layout, but "start" and "end" are absolutely not: They
might be different between processors, too, but they're always
unambiguous and meaningful.
> I mean, if the terms were in chinese, they'd be "highendian" and
> "lowendian", and you'd have a heck of a time guessing what that's
> supposed to mean.
Not really - note that we don't call them "left-endian" or
"right-endian" either.
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.
/And/ these particular terms are used because they had already been used
in different context and... well, let's put it this way: It wasn't the
byte ordering zealots that suggested them. Abso-bloody-lutely not. I
guess they were rather pissed off when the terms first came up in this
use. Well, those that knew the story behind it, that is.
>> or just vice versa. Yeah, sure, eggheads :-)
>
> Well, there's arguments for both that make sense. But it's really quite
> arbitrary exactly because there *are* arguments for both.
... which, as a matter of fact, is exactly why the terms "big-endian"
and "little-endian" so beautifully hit home.
Post a reply to this message
|
![](/i/fill.gif) |