【预备知识】
ARM处理器的工作模式:
Cortex-A寄存器组织概要:
指令:
编译完成后作为一条指令存放在内存单元中,在CPU执行时完成一定的操作。
(1) 数据搬移指令:mov、mvn
_start:
mov r0, #1 @;搬移有效数
mov r1, r0 @;寄存器之间数据搬移
.end
备注:
立即数:0-255之间的数
有效数:
1、本身就在0-255之间的数
2、循环右移偶数位能够得到0-255之间的数
3、能够通过按位取反得到0-255之间的数
4、能够通过按位取反,取反后的值通过循环右移偶数位得到0-255之间的数
底层现象:
运行程序之后的现象:把1放入r0中,再把r0中的数放入r1中。程序计数器(PC)的作用是存放处理器要读取的下一条指令的地址,一条指令占四个字节,故此时执行了两条指令,pc的值为8。
_start:
mvn r1, #0xff000000
.end
底层现象:
运行程序之后的现象:将目标数取反放入r1,pc置4.
(2)算术运算:add、adc、sub、sbc、rsb、rsc、mul、mla
_start:
mov r0, #2
mov r1, #3
add r2, r1, #3 @ r2 = r1 + 3
add r1, #3 @ r1 += 3
.end