ARM指令集及混合编程

xiarilove 2013-04-11

ARM指令集及混合编程 PPT文档下载:

具体下载目录在 /2013年资料/4月/11日/ARM指令集及混合编程

-------------------------------------------------------------------------------

一、ARM指令集
 
1、跳转指令:B、BL(带返回)、BLX、BX(带状态)
 
2、数据传送:MOV(通用寄存区)、MVN(按位取反)、CMP(比较结果存在CPSR)、TST(按位置位)、ADD、SUB、AND、ORR、BIC、MUL、
 
3、访问状态寄存器:MSR、MRS
 
二、汇编指令集
 
1、LDR、STR(B)
 
2、STR、
 
3、LDM、STM  (批处理)
 
4、swp
 
5、LSL、ROR
 
6、SWI、BKPT
 
三、伪指令

1、GBLA、GBLL、GBLS、LCLA、LCLL、LCLS 、SETA、SETL、SETS、
 
2、RLIST
 
3、DCB (分配存储单元)
 
4、SPACE
 
5、MAP
 
6、IF、ELSE、ENDIF
 
7、WHILE、WEND、
 
8、AREA、CODE、RDONLY、EXPORT、IMPORT
 
四、C与汇编混合编程
 
在嵌入式系统开发中,目前使用的主要编程语言是C和汇编,C++已经有相应的编译器,但是现在使用还是比较少的。在稍大规模的嵌入式软件中,例如含有OS,大部分的代码都是用C编写的,主要是因为C语言的结构比较好,便于人的理解,而且有大量的支持库。尽管如此,很多地方还是要用到汇编语言,例如开机时硬件系统的初始化,包括CPU状态的设定,中断的使能,主频的设定,以及RAM的控制参数及初始化,一些中断处理方面也可能涉及汇编。另外一个使用汇编的地方就是一些对性能非常敏感的代码块,这是不能依靠C编译器的生成代码,而要手工编写汇编,达到优化的目的。而且,汇编语言是和CPU的指令集紧密相连的,作为涉及底层的嵌入式系统开发,熟练对应汇编语言的使用也是必须的。

相关推荐