在网络编程中,字节序是一个必须被考虑的因素,因为不同的处理器体系可能采用不同的字节序。在多平台的代码编程中,字节序可能会导致难以察觉的bug。
“endian”一词来源于乔纳森·斯威夫特的小说格列佛游记。小说中,小人国为水煮蛋该从大的一端(Big-End)剥开还是小的一端(Little-End)剥开而争论,争论的双方分别被称为Big-endians和Little-endians。
混合序
混合序(英:middle-endian)具有更复杂的顺序。 32bit在PDP-11的存储方式
地址增长方向 → | |||||
... | 0x0B | 0x0A | 0x0D | 0x0C | ... |
处理器体系
- x86,MOS Technology 6502,Z80,VAX,PDP-11等处理器为Little endian。
- Motorola 6800,Motorola 68000,PowerPC 970,System/370,SPARC(除V9外)等处理器为Big endian
- ARM, PowerPC (除PowerPC 970外), DEC Alpha, SPARC V9, MIPS, PA-RISC and IA64的字节序是可配置的。
摘自:http://zh.wikipedia.org/zh-cn/%e5%ad%97%e8%8a%82%e5%ba%8f