Big or little endian

Q: Big or little endian, which is best?

A: The answer depends on what level you are working:

Example: Assuming binary numbers are stored as 16 bits, and that you want the following data in the memory:

High level: If you're working with text files and want the text to display in the right order...

... then you like LTR (left-to-right) dumping and hence big-endian looks better:
Byte number (Byte address) 0 1 2 3 4 5 6 7
The data from the example: 513 "a" "b" "c" "d" 1027 Advantage: texts like "abcd" comes in the right order.
Bytes 0x02 0x01 0x04 0x03 Big endian looks better.
Bit value
Bit order as they appear in memory
Bit address within 16-bit number
0 0 0 0 0 0 1 0
7 6 5 4 3 2 1 0
15 14 13 12 11 10 9 8
0 0 0 0 0 0 0 1
15 14 13 12 11 10 9 8
7 6 5 4 3 2 1 0
0 0 0 0 0 1 0 0
7 6 5 4 3 2 1 0
15 14 13 12 11 10 9 8
0 0 0 0 0 0 1 1
15 14 13 12 11 10 9 8
7 6 5 4 3 2 1 0
Drawback: The bits comes in the wrong order.


Low level: If working with registers and want the bits of a word to display in right order...

...then you want RTL (right-to-left) dumping and little endian:
Byte number (Byte address) 7 6 5 4 3 2 1 0
The data from the example: 1027 "d" "c" "b" "a" 513 Drawback: texts (like "abcd" above) comes in the wrong order.
Bytes 0x04 0x03 0x02 0x01 Little endian looks better.
Bit value
Bit order as they appear in memory
Bit address within 16-bit number
0 0 0 0 0 1 0 0
15 14 13 12 11 10 9 8
15 14 13 12 11 10 9 8
0 0 0 0 0 0 1 1
7 6 5 4 3 2 1 0
7 6 5 4 3 2 1 0
0 0 0 0 0 0 1 0
15 14 13 12 11 10 9 8
15 14 13 12 11 10 9 8
0 0 0 0 0 0 0 1
7 6 5 4 3 2 1 0
7 6 5 4 3 2 1 0
Advantage: The bits comes in the right order.

Summary (of my opinion)

I my opinion, one of the most important thing is that the tool you use to view the data allows you to switch between LTR/RTL viewing.

What you really are doing is mixing LTR data with RTL data. Depending on which you think dominates, you may come to different conclusions of which is best.