寻址和字节顺序

对于跨越多字节的两个程序对象,我们必须建立两个规则:

  • 这个对象的地址是什么?
  • 以及在内存中如何排列这些字节?

在几乎所有机器上,多字节对象都被存储为连续的字节序列,对象的地址为为所使用字节中最小的地址。

例如:
假设一个类型为int的变量x读地址为0x100也就是说地址表达式&x的值为0x100。
那么,(假设数据类型int为32位表示)的x的四个字节将被存储在内存的0x100、0x101、0x102和0x103位置。

大端法

机器按照从最高有效字节到最低有效字节的顺序存储,这种最高有效字节在前面的方式称为大端法(big endian);

小端法

机器按照从最低有效字节到最高有效字节的顺序存储,这种最低有效字节在前面的方式称为小端法(little endian);

如图示:


END!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。