多字節數據在內存中存儲需要考慮數據存放的位置順序,不同的平臺體系它們存在數據大端(big endian),小端(little endian)之分。
我的理解是:大端即數據的MSB(數據高位)在前(前:指代低位地址)
小端則是LSB(數據的低位)在前。
例: 32位系統中int a=0x4398AEEF;
內存地址
| 0xEF
| ----------0x11111126
| 0xAE
| ----------0x11111125
| 0x98
| -----------0x11111124
| 0x43
| ------------0x11111123
大端(little endian)
內存地址
| 0x43
| ----------0x11111126
|0x98
| ----------0x11111125
| 0xAE
| -----------0x11111124
| 0xEF
| ------------0x11111123
小端(little endian)