内存大小端

对于这两种存储方式,如果联系下我们常用 “异或” 操作,就能得到一个很好的记忆规则。总结来说就是:

  • 低地址存储低字节即为小端存储;高地址存储高字节即为小端存储;
  • 低地址存储高字节即为大端存储;高地址存储低字节即为大端存储;

我们把 “低” 、“小” 认作 “0”, 把 “高”、“大” 认作 “1”,这样就可以利用 “异或” 的结果来加强记忆了。

内存字节大端/小端
低地址低字节小端存储
000
高地址高字节小端存储
110
低地址高字节大端存储
011
高地址低字节大端存储
101

intel 存储字节的顺序是小端优先:即低有效字节存储在低内存地址中。写值是从低地址向高地址写入,如SP指向0xf000,往栈中写入一个字(8字节),占用0xf000到0xf007的8个字节。