ARM7 LPC2378 远程升级----STMFD、LDMFD

本文详细介绍了 ARM7 LPC2378 微控制器中 STMFD 和 LDMFD 指令的工作原理与使用方法。这两条指令用于实现寄存器的快速入栈和出栈操作,在软中断 SWI 的处理过程中扮演关键角色。文章还解释了这些指令如何影响 SP、PC 和 LR 寄存器,并提供了具体的指令格式说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ARM7 LPC2378 远程升级----STMFD、LDMFD
     这里STMFD、LDMFD讲的比较浅显,要想深入理解,大家可以看看这篇文章点击打开链接
   入栈、出栈的指令格式:
   {cond} Rn{!},
   {cond}:指令类型      
       Rn:基址寄存器,其不可以为R15
      {!}:为可选后缀,若选用该后缀,表示请求回写,则当数据传送完毕之后,将最后的地址写入到基址
寄存器
         (Rn)中,否则,W=0。表示请求不写回,基址寄存器的内容不改变。            
      {^}:寄存器列表,寄存器范围包含在{}(比如{R0,R2-R7,R10}),其可以是R0~R15的任意组合由于R15是
           pc,对其操作可能会造成程序跳转,R15在最后一个被传输序号低的寄存器对应于存储器的低地址,
          不 考虑{...}中的次序
      STMFD:满递减入栈 LDMFD:满递减出栈
   为什么在这里要给大家讲这两条指令,因为下篇将会谈到ARM7远程升级时的重点——软中断SWI,会涉及到这两条指令及上篇所讲的PC、SP、LR三个寄存器。   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值