c语言字节对齐

来源:互联网 发布:帝国cms模板使用教程 编辑:程序博客网 时间:2024/04/26 01:32

1.什么是字节对齐

c语言中变量按照自身大小Size选择合适的内存首地址Addr存放,使得Addr%Size = 0,叫做字节对齐。

2.为什么要字节对齐

字节对齐的根本原因在于cpu对内存存取规则及cpu对内存存取效率。cpu以特定大小的块(2B/4B/8B)从内存中存取数据(起始地址总是2/4/8的整数倍),如果某个数据(2个以上字节)横跨这些特定的地址,那么cpu必须从内存中读取两次才能获取到它的完整内容;另外,一些cpu不支持奇数内存地址存取。



参考:http://www.ibm.com/developerworks/library/pa-dalign/

原创粉丝点击