Little-endian和Big-endian的區別

一、大端序(英:big-endian)或稱大尾序

  • 數據以8bit爲單位:
    地址增長方向  →
    ... 0x0A 0x0B 0x0C 0x0D ...

示例中,最高位字節是0x0A 存儲在最低的內存地址處。下一個字節0x0B存在後面的地址處。正類似於十六進制字節從左到右的閱讀順序。

  • 數據以16bit爲單位:
地址增長方向  →
... 0x0A0B 0x0C0D ...

最高的16bit單元0x0A0B存儲在低位。


Big endian:多字節數據中,書寫時字節從左向右排列(LSB…MSB),存儲時高位地址存放低位數據(LSB)。

                     Motorola 6800Motorola 68000PowerPC 970System/370SPARC(除V9外)等處理器爲Big endian

二、小端序(英:little-endian)或稱小尾序

  • 數據以8bit爲單位:
    地址增長方向  →
    ... 0x0D 0x0C 0x0B 0x0A ...

最低位字節是0x0D 存儲在最低的內存地址處。後面字節依次存在後面的地址處。

  • 數據以16bit爲單位:
地址增長方向  →
... 0x0C0D 0x0A0B ...

最低的16bit單元0x0D0C存儲在低位。

     Little endian:多字節數據中,書寫時字節從右向左排列(MSB…LSB),存儲時高位地址存放高位數據(MSB)。Little endian是最常用的模式。

                           8051系列單片機、x86MOS Technology 6502Z80VAXPDP-11等處理器爲Little endian。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章