stm32汇编STRH.W
时间: 2024-05-20 12:13:36 浏览: 227
汇编指令STRH.W的作用是将一个半字(16位)数据存储到指定的内存地址中。其语法如下:
STRH.W Rn, [Rm, #offset]
其中,Rn是要存储的半字数据所在的寄存器,[Rm, #offset]表示存储数据的内存地址,Rm是基地址寄存器,#offset是偏移量,可以是正数或者负数。
这条指令会将Rn中的半字数据存储到[Rm, #offset]所对应的内存地址中。如果[Rm, #offset]所对应的内存地址已经存储了数据,那么该数据将被覆盖。
需要注意的是,STRH.W指令只能访问半字对齐的内存地址,即地址的最低位必须为0,否则会触发硬件异常。因此,在使用STRH.W指令时,要确保存储数据的内存地址是半字对齐的。
相关问题
stm32汇编 STR.W
STR.W 汇编指令是用于将一个32位的字(word)存储到内存中的指令。它的语法格式如下:
```
STR.W Rn, [Rm, #offset]
```
其中,Rn 是要存储到内存中的32位字的寄存器,Rm 是要存储到内存中的地址所在的寄存器,offset 是偏移量,表示要存储到内存中的地址相对于 Rm 寄存器的偏移量。
例如,下面的代码将会把 R1 中的值存储到以 R0 寄存器为起始地址加上 4 的位置处:
```
STR.W R1, [R0, #4]
```
如果你需要存储的是一个16位的半字(half word),可以使用 STRH 指令;如果需要存储的是一个8位的字节(byte),可以使用 STRB 指令。
阅读全文