ARM汇编指令
ARM指令是通用指令,指的是所有的ARM芯片都支持。
1.ARM汇编程序
一个ARM汇编程序,大体是由下列的三类指令组成:
1)ARM汇编指令
ARM汇编指令由ARM公司定的。
汇编语言是CPU执行效率最高的一门语言。
一条汇编指令是唯一对应一条机器指令(二进制码)。
汇编指令由两个部分组成:
2)伪指令
伪指令是由编译器产商提供,比如:
Keil环境有Keil的伪指令
GNU环境下有GNU的伪指令
指令和伪指令到底有什么区别?
3)宏指令(等同于C语言中的宏定义)
同样的还是由编译器产商提供。
2.编写一个简单的启动文件
3.中断向量表
中断向量表就是一个保存了各个中断处理程序地址的数组。
中断函数不是CPU主动调用的,而是被动调用的。
4. ARM指令格式
5. 寻址方式
立即数寻址
寄存器寻址
寄存器间接寻址
寄存器偏移寻址
堆栈指针指向最后压入的堆栈的有效数据项,称为满堆栈;堆栈指针指向下一个待压入数据的空位置,称为空堆栈。
相对寻址
相对寻址是基址寻址的一种变通。由程序计数器 PC提供基准地址,指令中的地址码字段作为偏移量,两者相加后得到的地址即为操作数的有效地址。
6. ARM指令
(1)ARM存储访问指令
用来在存储器与寄存器之间传递数据。
把数据从存储器放到寄存器称之为加载Loader。
把数据从寄存器放到存储器称之为存储Store。
1)单寄存器操作
————————————————
版权声明:本文为CSDN博主「m0_60265426」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_60265426/article/details/123760984
2)多寄存器操作
在一个连续的存储器地址上,进行多个寄存器的存取。
加载:Load
存储:Store
多个:Multi
LDM:多寄存器加载
STM:多寄存器存储
3)乘法指令
略。