ARM常用汇编指令

1、ldr:读内存

例如:ldr r0,[r1] 

表示读取r1地址上的数据保存到r0中

例如:ldr r0,=0x12345678

相当于r0=0x12345678

2、ldm:读内存并写入多个寄存器

例如:ldmia sp,{fp,sp,pc}

按照高编号寄存器存放高地址内存值的原则,分别将fp,sp,pc所对应内存上的数据写到栈空间

3、str:写内存命令

例如:str r0,[r1]

 表示将r0的值写到r1所对应的内存空间上

4、stm:把多个寄存器的值写入内存

例如:stmdb sp!,{fp,ip,1r,pc}

按照高编号寄存器存放高地址内存值的原则,分别将sp所对应空间上的数据写入fp,ip,1r,pc所对应内存上,地址按照4个字节增加或者减少。

5、b跳转命令

例如:b main

表示跳转到main函数执行

6、mov:装载寄存器

例如:mov r0,r1

表示把r1的值赋值给r0

7、add:把两个操作数加起来把结果放到目的寄存器中

例如:ADD R0, R1, R2 ; R0 = R1 + R2

8、bl:是另一个分支指令。

9、bic:位清除指令

例如:bic r0, r0, #0xf

将第二个r0的值与操作数0xf的反码按位逻辑与,结果存放在第一个r0中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Da Liu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值