lkml.org 
[lkml]   [1999]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Linux/IA-64 byte order


On 9 Mar 1999, H. Peter Anvin wrote:

> 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 agree that it is an I/O issue but I always consider that big endian is
superior (and for little endian to make sense, strings should be stored
backwards). The ultimate idiocy[1] is standard scientific notation with
exponent on one side and most significant digit on the other. As an
astronomer, I often disregard all the intermediate digits, the only
interesting part are the exponent[2] and (marginally) the first digit (to
help rounding up or down the exponent). And I definitely don't want my
numbers right adjusted, that may be ok for beancounters, not for
scientists (actually I find reading IEEE floating point values in hex on
BE machines much more logical).

BTW: casting of integer pointers in C is a nop AFAICT, simply the size
of the data accessed by the pointer is changed.

> 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.

'Arabic' numbers were actually imported from India and a left-to-right
original script IIRC. Anyway let us agree to disagree.

Gabriel.

[1] The other one is the 68000 family of processors when single bit
instructions use little endian numbering but bit field instuctions
(introduced with the 68020) big endian (IOW a bit field of 1 bit is not a
single bit). In a big endian machine, bit 0 is the MSB, period.

[2] "If you hear '10 to the 40 within a factor of 2' in an astronomical
congress, you have to understand that the factor of 2 applies to the
exponent." (I can't remember the source, sigh...)



-
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/

\
 
 \ /
  Last update: 2005-03-22 13:50    [W:0.141 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site