2013年11月13日 星期三

big-endian vs little-endian

名稱來自格列佛遊記中的一場無意義的戰爭
堅持要從大的一頭開蛋的人群叫big-endian
堅持要從小的一頭開蛋的人群叫little-endian

在這裡是指把一串data存入實體記憶體中的方式
不同公司做的CPU會用不同的方式讀取
如果沒有調整,會發生資料傳送正確但無法讀取的錯誤

long data = 0x12345678
                   big-endian               little-endian
0x00000x120x78
0x00010x340x56
0x00020x560x34
0x00030x780x12
Note. 只有1byte時,沒有這個問題
2bytes時,二個byte位置顛倒
4bytes時,會排列為4 3 2 1

沒有留言:

張貼留言