这里先普及下STR指令
STR指令的格式为:
STR{条件} 源寄存器,<存储器地址>
STR指令用亍从源寄存器中将一个32位的字数据传送到存储器中。该指令在程序设计中比较常
用,寻址方式灵活多样,使用方式可参考指令LDR。
指令示例:
STR R0,[R1],#8 ;将R0中的字数据写入以R1为地址的存储器中,并将新地址R1+8写入R1。
STR R0,[R1,#8] ;将R0中的字数据写入以R1+8为地址的存储器中。”
str r1, [r0] ;将r1寄存器的值,传送到地址值为r0的(存储器)内存中
如果看了上面STR指令的介绍你还是有所迷惑 下面我们开始实战来具体分析STR指令 这样可以遍于你更快的掌握对此命令的理解
我们先把程序调到要执行STR指令的地方 我们先分析一下这条指令 这条指令的意思 是把R5的地址给R3地址+R6地址指向的内容
STR R5,[R3,R6]这条命令没执行前,我们可以从右边寄存器中看到R5的地址是BEA178B8 R3 90 R6 BEA17150 R3+R6 BEA171E0 我们来到地址BEA171E0看一下寄存器中的值 是 0
下面我们F8执行STR这条命令后 再看一下BEA171E0 的值变成了R5的地址
以上就是关于ARM中STR指令的介绍 希望看了本篇文章后对你有所帮助