一、ARM汇编编程概述
1.1为什么需要使用汇编
原因:1.汇编执行效率高 2.没有C语言运行环境。有两种情况需要使用汇编语言:1.Bootloader、内核在初始化的时候,2.启动代码、对效率要求高的地方(C和汇编混合编程)
1.2ARM汇编分类
目前常用的ARM汇编指令有两种:
1.ARM标准汇编:适用于ARM公司的汇编器,适合在Windows平台下使用,如ADS中使用。
2.GNU汇编:适用于GNU交叉编译工具链中的汇编器,适合于Linux开发平台。
1.3汇编程序框架
.section .data
<初始化的数据>
.section .bss
<未初始化的数据>
.section .text
.global _start
_start:
<汇编代码>
还有一种是没有section这个关键字。
二、ARM指令分类
2.1算术和逻辑指令
2.1.1 MOV : 传送
实例:MOV R0, R0
MOV从另一个寄存器