汇编语言(keil)

1、读内存:Load

LDR R0,[R1,#4];    读地址“R1+4”,得到的4字节数据存入R0。

2、写内存:Stroe

STR R0,[R1,#4]; 把R0的4字节数据写入地址“R1+4”。

3、加减

ADD R0,R1,R2;    R0=R1+R2

ADD R0,R0,#1;    R0=R0+1

SUB R0,R1,R2;     R0=R1-R2

SUB R0,R0,#1;      R0=R0-1

4、比较

CMP R0,R1;  结果保存在PSR(程序状态寄存器)

5、跳转

B main;Branch,直接跳转

BL main;  Branch and Link,先把返回地址保存在LR寄存器里面再跳转

C函数的反汇编

c函数:


int add(volatile int a,volatile int b)
{
    volatile int sum;
    sum=a+b;
    return sum;

}
 

让Keil生成反汇编

制造反汇编的指令如下:

fromelf --text -a -c --output=xxx.dis xxx.axf

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小小蜗牛,大大梦想

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

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

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

打赏作者

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

抵扣说明:

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

余额充值