3. レジスタからメモリへのストア¶
3.1. ドキュメントの表記規則¶
表記: Rt, Rn は、特に明記されない限り ARM レジスタ R0-R7 を表します。immN は幅 N ビットの即値を表すため、imm5 は 0-31 の範囲に制約されます。[Rn + imm5] は、Rn とオフセット imm5 を加算して得られるメモリアドレスの内容です。オフセットはバイト単位で測定されます。これらの命令は条件フラグに影響を与えません。
3.2. レジスタストア¶
str(Rt, [Rn, imm7])
[Rn + imm7] = Rt32 ビットワードをストアstrb(Rt, [Rn, imm5])
[Rn + imm5] = Rtバイトをストア(b0-b7)strh(Rt, [Rn, imm6])
[Rn + imm6] = Rt16 ビットハーフワードをストア(b0-b15)
指定された即値オフセットはバイト単位で測定されます。したがって str の場合、7 ビットの値により、最大オフセット 31 ワードで 32 ビットワード境界に整列した値にアクセスできます。strh の場合、6 ビットの値により、最大オフセット 31 ハーフワードで 16 ビットハーフワード境界に整列した値にアクセスできます。