[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Endian Mapping



>The discussions about Big Ending and Little Ending are very funny. I would
>like to ask a stupid question:
>From my point of view, Little Ending seems to be the simplest way to deal
>with data both in memory and in CPU

Why?  They're both just conventions about where to store the most and least
significant bytes.  I don't think either is simpler than the other.  I do
prefer the little endian bit numbering because no matter the size of the
bus, bit 0 is the least significant bit and each bit is "worth" 2 to the
power of its bit number.  But as far as what big/little endian is really
about (where to store the bytes), it seems they are equal but different.


>and if Big Ending is used, CPU has to do
>a lot of UNNECESSARY on-fly bit exchange while storing or retriving data
>through memory.

Not true.  Only if a big endian processor is talking to a little endian
bus.  But the same is true if a little endian processor is talking to a big
endian bus.  In a full big endian system, there are no on-fly bit exchanges
going on.

>What are the pressing advantages for PowerPC designers to
>adopt Big Ending over Little Ending before it was born?

I don't know the answer to that except to say that IBM processors have
always been big endian long before I joined the company, and long before
Intel and PCI even existed.  I think these PowerPC processors needed to be
code compatible with a generation of previous IBM processors called the
"Power" series which all had to run the same software and in similar
systems.

Rich Iachetta
IBM Microelectronics Division -- Austin
World Wide Field Design Center
Phone: 512-838-6305   Tie Line: 678-6305