の住所のアームダ(減分後)に対応モードになっていますか?
-
20-09-2019 - |
質問
私は二つDAに対応モードになります。例えば:
STMDA R0!, {R1-R7}
の開始アドレスまで R0 - (7 * 4) + 4
, では、 R0-24
, によると、 ARMアーキテクチャリファレンスマニュアル とend_addressする R0
.
い:
- の価値
R1
保存されR0-24
またはR0
? - の場合
R1
格納されるR0-24
, し、その後の店舗の成長に向けてのメモリからR0-24
へR0
)?
解決 3
擬似コードの一部を以下に示す:
アドレス= start_addressの 私のために= 0から15 もしregister_list [I] == 1その後、 メモリ[アドレス、4] = Riを アドレス=アドレス+ 4
STMの成長方法は、データを格納する際にアドレッシングモードとは何の関係もないようですか? それは常に高く、アドレッシングモードに下位アドレスからのデータを格納するだけ R0に基づいて開始アドレスが決定!
他のヒント
使用時のアームに複数の店舗および荷重の登録の値は常にロード/保存昇順です。◆なので、使用時の降下に複数の店舗のレジスタをメモリに書き込まれます。ご STMDA
指導の効果的えているにもかかわらず、以下の手順:
- 店舗
R7
時R0
- 店舗
R6
時R0 - 4
- 店舗
R5
時R0 - 8
- 店舗
R4
時R0 - 12
- 店舗
R3
時R0 - 16
- 店舗
R2
時R0 - 20
- 店舗
R1
時R0 - 24
- 差し引28日から
R0
自分で出している writeback ●!
).
ですから、お客様のお問い合わせにお応え:
の値
R1
保R0 - 24
.(ここでは、という価値R0
を実施する前に指導います。ご利用writebackの!
-その後の指導R0
また28引かれます。)R1
記録されR0 - 24
, が、前述のとおりR1
最後に登録して、その値が格納されます。R7
格納され、その後の店舗からの成長は下方。
いないわからないの文書化を支援することの答えです。また、微力ですが、応援させていただきてから、最後のために新たにアーム符号といいます。しかし、私は絶対に忘れがどんな風にアームの店舗の登録降の複数のお店です。きっかけになるかもしれないとこによる文書を短期プログラムも行なった。
アームアームを検索するARMアーキテクチャリファレンスマニュアル...
形成された最初のアドレスであり、ベースレジスタの値がマイナスで指定された、プラス4以降のアドレスが4で前のアドレスをインクリメントすることによって形成されているレジスタ数の4倍です。一つのアドレスが指定されている各レジスタのために作られています。