Thumb指令集之: 单寄存器数据传送指令
11.5.14字节存储指令STRB(1)
(1)编码格式
字节存储加载指令STRB(1)的编码格式如图11.55所示。
图11.55STRB(1)指令的编码格式
STRB(1)字节数据存储指令用于将一个8位的字节数据写入到指令中指定的内存单元,该字节数据为指令中存放源操作数寄存器的低8位。常用于结构体的数据访问。域的基地址放在Rn寄存器中。
(2)指令的语法格式
STRBRd>,[Rn>,#immed_5>]
①Rd>
目的寄存器。
②Rn>
指令的基址寄存器。
③immed_5>
5位立即数。用于与Rn>寄存器中的数值相加,形成内存访问地址。
(3)指令操作的伪代码
address=Rn+immed_5
Memory[address,1]=Rd[7:0]
(4)对应的ARM指令
STRBRd>,[Rn>,#immed_5>]
11.5.15寄存器存储指令STRB(2)
(1)编码格式
寄存器存储指令STRB(2)的编码格式如图11.56所示。
图11.56STRB(2)指令的编码格式
寄存器存储指令STRB(2)用于将一个8位的字节数据写入到指令中指定的内存单元。此种形式的LDRB指令常被用于访问数组中的元素。
(2)指令的语法格式
STRBRd>,[Rn>,Rm>]
①Rd>
目的寄存器。
②Rn>
此寄存器存放内存访问基地址。
③Rm>
此寄存器存放内存访问偏移地址。
(3)指令操作的伪代码
address=Rn+Rm
Memory[address,1]=Rd[7:0]
(4)对应的ARM指令
STRBRd>,[Rn>,Rm>]
评论