ARM
luerlyhs
这个作者很懒,什么都没留下…
展开
-
__attribute__ ((aligned (n), packed))
GNU C扩展的__attribute__ 机制被用来设置函数、变量、类型的属性,其用得较多的是处理字节对齐的问题。__attribute__ 的语法为:__attribute__ ((语法列表))参数aligned(number) [number为最小对齐的字节数]是用得较多的一个。另一个是参数packed 表示“使用最小对齐”方式,即对变量是字节对齐,对于域是位对齐。转载 2013-01-24 12:33:29 · 2530 阅读 · 0 评论 -
字对齐概念
一.什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某转载 2013-01-24 12:32:00 · 672 阅读 · 0 评论 -
ARM跑马灯·汇编程序详细解析
本人使用的是TQ2440开发板,主芯片是S3C2440,它一共有130个I/O端口,分为9组:GPA、GPB...GPJ。 对于这几组GPIO引脚,它们的寄存器是相似的: GPxCON:用于选择引脚功能 GPxDAT:用于读、写引脚数据 GPxUP:用于确定是否使用内部上拉电阻 ,其中无GPAUP寄存器!注意:PORT A与PORT B~PORT J 在功能选择转载 2013-02-25 12:18:22 · 1402 阅读 · 0 评论 -
LDR指令详解(转载)
LDR指令详解(2009-10-27 11:26:31)ARM指令集中,LDR通常都是作加载指令的,但是它也可以作伪指令。(1)LDR r0,=name,像这种带等号的是伪指令,而不是ARM指令,LDR 伪指令用于加载立即数或一个地址值到指定寄存器.*如果name是立即数的话:LDR R0,=0X123;//将0X123存入R0 *如果name是个标识符:LDR转载 2013-02-25 12:23:20 · 1448 阅读 · 0 评论