注册 登录
编程论坛 嵌入式开发

c语言中的字对齐以及半字对齐的概念

曹操cc 发布于 2010-01-03 18:21, 2219 次点击
我在学习嵌入式linux,有个概念 字对齐/半字对齐,看了些资料,还是不太了解,有没有能人能举个例子说明一下。
比如说,arm汇编指令中有个DCDO指令,用于分配一段字对齐的字内存单元,我想知道这个概念会用在哪些地方。
还有,如果学习嵌入式linux应用程序开发要了解arm的硬件和汇编么?有没有好的书推荐几本
2 回复
#2
xiaowenhuman2010-04-14 10:34
字节对齐,是编译器做的优化,减少对内存读取时间,cpu从偶地址读取数据更快。
#3
burnell2011-08-03 19:51
楼上的,如果某个平台(比如ST平台)优化为4字节对齐,如果去除字节对齐,即变为1对齐,我在网上查到有
#pragma pack(1)
的用法。但是在头文件中,在结构体前添加此宏定义,仍然为4字节对齐,请教如何使用使得去除字节对齐?
谢谢!
1