当前位置: 代码迷 >> 汇编语言 >> 看书看不懂,内存对齐和奇偶标志位
  详细解决方案

看书看不懂,内存对齐和奇偶标志位

热度:2947   发布时间:2013-02-26 00:00:00.0
求助看书看不懂,内存对齐和奇偶标志位
请问,IA-32机子处理内存按4的倍数对齐更快
还是只需要2的倍数对齐就行

奇偶标志位intel汇编语言程序设计说的最低有效字节中的1为偶数置位
什么事最低有效字节
比如INC EAX.是看EAX的2进制中的1的个数还是AX的还是AL的?

------解决方案--------------------------------------------------------
其实这个概念有点模糊,具体还是要看程序的算法,还涉及到CPU内部cache。
不过一般来讲,32位系统是应该对齐到 4byte,这样大多数时候效率高。
------解决方案--------------------------------------------------------
在字节对齐的情况下,32位机一次读/写4字节快更快!
32位机的字节对齐就是指令或者数据的偏移首地址是4的整倍数。
由于这个原因,现在的程序编制提倡优先把数据定义为32位的。
也可能由于这个原因,VC语言的 sizeof (struct) 编译后产生的值常为4的倍数,而不一定是struct的实际尺寸,因此初学写汇编程序的道友要多留意。
  相关解决方案