导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→助,向各位大哥请教 对 加载/存储指令 LDM 和 STM [星星电灯]

 *第34817篇: 助,向各位大哥请教 对 加载/存储指令 LDM 和 STM ,有礼了!

  
楼 主:星星电灯 2005年9月28日17:17
 助,向各位大哥请教 对 加载/存储指令 LDM 和 STM ,有礼了!
请教:
LDMIA   R0!,{R3-R9}     ;加载 R0 指向的地址上的多字节数据,保存到 R3-R9 中,R0 值更新
STMIA   R1!,{R3-R9}     ;将 R3-R9 的值存储到 R1 指向的地址上,R1 值更新
STMFD   SP!,{R0-R7,LR}  ;现场保护,将 R0-R7,LR 入栈
LDMFD   SP!,{R0-R7,PC}^ ;恢复现场,异常处理返回 

这里有几个问题向各位大哥请教:

问题一:
LDMIA   R0!,{R3-R9} ;加载 R0 指向的地址上的多字节数据,保存到 R3-R9 中,R0 值更新

小问题1:
假设 R0 的初值是 0x11,R0 又不是指针,怎么能说 R0 指向的地址呢?
还有又怎么知道 R0 指向的地址值是多少呢?

小问题2:
假设 R0 的初值是 0x11 ,是不是给 R3-R9 中的每个寄存器都赋值 0x11 啊?

小问题3:
假设 R0 的初值是 0x11 ,那么 R0 值更新后,R0 值是多少啊?


问题二:

STMFD   SP!,{R0-R7,LR}  ;现场保护,将 R0-R7,LR 入栈

小问题1:
这句话的意思能不能理解为:将 R0-R7,LR 的数据存储到 SP 指向的地址上?

小问题2:SP 的值要不要更新,如果会更新的话,那么和原来的值相比,是
        增加多少?或者减少多少?
小问题3:
        现场保护 为什么要把 LR 也入栈呢?

问题三:
      LDMFD   SP!,{R0-R7,PC}^ ;恢复现场,异常处理返回
       
小问题1:
       PC 得到的值,是 STMFD   SP!,{R0-R7,LR} 的
       LR 的值吗?

       SP 的值要不要更新,如果会更新的话,那么和原来的值相比,是
        增加多少?或者减少多少?

在此多谢各位大哥! 


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:求助HD66772+HD66774s液晶驱动,酬谢,llf345@yahoo.com.cn 

[下一篇主题]:请教关于verilog的问题。