[<Rn>,#+/-<offset_12>]
指令编码格式:
内存地址计算方式是内存地址address为基址及粗气你的值加上或减去偏移量offset_12。当U = 0时,address = Rn - offset_12,当U = 1时,address = Rn + offset_12。
语法格式如下:
[<Rn>, #+/-<offset_12>]
伪代码如下:
if U == 1 then
address = Rn + offset_12
else
address = Rn - offset_12
使用说明:
该寻址方式适合用在结构化数据的数据成员、参数存取以及栈中数据访问。当offset_12 = 0时,指令访问的即为Rn指向的内存数据单元。
B标志位用于控制指令操作的数据的类型,当B = 1时,指令访问的是无符号的字节数据;当B = 0时,指令访问的是字数据。
L标志位用于控制内存操作的方向。当L = 1时,指令执行Load操作;当L = 0时,指令执行Store操作。
当R15用作基址寄存器Rn时,内存基地址为当前指令地址加9字节偏移量。