📜  arm str 示例 (1)

📅  最后修改于: 2023-12-03 14:39:20.679000             🧑  作者: Mango

ARM STR指令介绍

ARM STR指令用于将数据从寄存器存储到数据存储器的指定地址。它的语法如下:

STR{条件} Rn, [Rm, {±}偏移量]  或者 STR{条件} Rn, [Rm, {±}偏移量]!
STR{条件} Rn, [Rm], {±}偏移量
STR{条件} Rn, [SP, {±}偏移量]  
STR{条件} Rn, [Rm, +(表达式)]

其中,Rn表示要存储的数据寄存器,Rm表示存储数据的地址寄存器。

  • 第一种形式使用Rm和偏移量计算出地址,存储器写入后地址值不会改变。
  • 第二种形式与第一种相似,但写入数据后会改变地址值。
  • 第三种形式是自动递增/递减寄存器的方式,具有与第二种形式相同的效果。特别地,当使用PC时,偏移量必须是4的倍数。
  • 第四种形式是将数据存储在相对于当前堆栈指针的偏移量处。
  • 第五种形式类似于第三种,但是使用表达式来计算偏移量。
ARM STR指令代码示例

下面是一个简单的ARM汇编程序,用于将一个32位整数值存储到数据存储器中:

MOV R0, #12345678
STR R0, [R1]

这个程序将整数值12345678存储到地址寄存器R1所指向的存储器中。

总结

ARM STR指令是ARM汇编程序中的重要指令之一,用于将数据从寄存器存储到数据存储器的指定地址。在实际应用中,根据程序的需求选择合适的指令形式,可以提高程序的效率和灵活性。