本文写的很详细,搞了很久才理解这块的东西,如有错误请指出.
为了方便理解,先补充一些知识
- 8位十六进制=32位二进制
- 字地址=存储字地址=存储单元地址
- 1字节=8位二进制
- 字(word)是一次存取,加工,传送的数据长度,字长是每个字所包含的位数,32位字长=4个字节
- 32(字长)/8(bit)=4(字节) 因此1个字=4个字节
大端和小端是指数据在内存中的存储模式,它由 CPU 决定:
1) 大端模式(Big-endian)是指将数据的低位(比如 1234 中的 34 就是低位)放在内存的高地址上,而数据的高位(比如 1234 中的 12 就是高位)放在内存的低地址上.
2) 小端模式(Little-endian)是指将数据的低位放在内存的低地址上,而数据的高位放在内存的高地址上。这种存储模式将地址的高低和数据的大小结合起来,高地址存放数值较大的部分,低地址存放数值较小的部分,这和我们的思维习惯是一致,比较容易理解。
- 12345678H是8位十六进制(也就是8个16进制数),左边大端方式12所在的位置是低地址,1个十六进制数转化为二进制占4位,因为一个字节是8位二进制,因此一个格子里放2个十六进制数.
- 列 字地址 0 4 8 ,