回答編集履歴
1
追記に対する記述追加
answer
CHANGED
@@ -2,4 +2,8 @@
|
|
2
2
|
> 「r1に入ってるアドレスに36を足されたアドレスにある命令orデータがr4に入れられる。」
|
3
3
|
|
4
4
|
「命令orデータ」ではなく、「データ」ですね。
|
5
|
-
該当のアドレスに 0x7cc60018が入っていたとのことですが、バイト単位で入れ替える(逆順にする)と、0x1800c67c になりませんか?
|
5
|
+
該当のアドレスに 0x7cc60018が入っていたとのことですが、バイト単位で入れ替える(逆順にする)と、0x1800c67c になりませんか?
|
6
|
+
|
7
|
+
[追記]
|
8
|
+
`bx r4` [「4.8.1. B、BL、BX、BLX、BXJ」](http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0204ij/Cihfddaf.html)を見ると、分岐と命令セット切り替えですね。
|
9
|
+
bit0が 0なので、ARM状態で、r4で示されるアドレスに分岐(Branch)するようですね。r4に格納されるのは、データかアドレスか? これはアセンブラの世界(少なくとも ARM)では区別されません。使われる命令によって解釈されるだけです。 BX命令では、アドレスと解釈されるということです。
|