Re: Linux/IA-64 byte order

H. Peter Anvin (hpa@transmeta.com)
9 Mar 1999 06:41:35 GMT


Followup to: <99030821525701.00877@taral.dobiecenter.com>
By author: Taral <taral@cyberjunkie.com>
In newsgroup: linux.dev.kernel
>
> On Mon, 08 Mar 1999, Richard Gooch wrote:
> >I'd like to start a discussion and see if we can reach some reasonable
> >consensus on whether big-endian is acceptable to the community. I
> >think this is an important issue, as a little-endian Linux/IA-64 is
> >going to make it a second choice for a significant number of
> >people. This reason for this follows (from my orginal message to
> >David):
>
> To tell you the truth, big-endian is generally preferred in many systems, due
> to the fact that groupings don't change the ordering of bytes. In other words:
>
> 12 34 56 78 9A BC DE F0
> 1234 5678 9ABC DEF0
> 12345678 9ABCDEF0
>
> Are all the same data, just shown as bytes/shorts/longs, respectively. This
> makes viewing data *much* easier, since you're not constantly byte-swapping.

BOGON ALERT! This is a human presentation, i.e. an I/O, issue.
Personally I consider that once you start digging, littleendian is
actually a superior format, making casting of integer pointers for the
most part a noop, and generally having a multiplier that is dependent
only on position. For bigendian to make sense, integer pointers
should point to the *end* of an integer (humans want their numbers
right-adjusted too!), not the beginning.

I see bigendianism as a very unfortunate historical accident, probably
caused by the importation of a number system from a region with a
right-to-left script into another region with a left-to-right script
many hundreds of years ago.

-hpa

-- 
"Linux is a very complete and sophisticated operating system.  There
are, and will be, large numbers of applications available for it."
    -- Paul Maritz, Group Vice President for Platforms And Applications,
       Microsoft Corporation [Reference at: http://www.kernel.org/~hpa/ms.html]

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/