オフセットが 'load word's'プログラムカウンタから1行(4バイト)離れた命令をフェッチしてレジスタ$ s0,4($ t0)にフェッチして格納するかどうかは不明です。これはどのようにメモリ内で機能しますか?可能であれば、例を提供してください。
答えて
LWとSWの機能は、MIPS命令セットで読むことができます。
しかし、すばやくするために、私はここでも答えを提供します。 LWはWordの読み込みを表します。この値が格納されているアドレスから32ビットワード値をターゲットレジスタ(rt)にロードします。
LW rt, offset(base)
のは、簡単な例を作ってみましょう:
LUI T0, 0x8033
LW T1, 0x2550(T0)
上記のコードは、現在のアドレスに位置する32ビットのワード値をロードする:LUIの値が上限である
0x80332550
をアドレスの半分であり、与えられたオフセット0x2550は下半分である。現在、MIPSは単に0x80332550から32ビット値をロードします。
のは0x80332550は次の値が含まれているとしましょう:
0x80332550: 25 66 99 88 77 14 22 66
LW命令の後、T1は、現在値0x25669988が含まれます。 (ビッグエンディアンの場合、リトルエンディアンでは0x88996625になります)
SWはLWのようにほぼ同じですが、ロードする代わりに32ビットの値を指定のアドレスに格納するだけです。この場合、rtレジスタは値保持者として機能します。
いくつかのニックピッキング: '$ t0'はベース、0x2555は_offset_です。そして、0x80332555は、ワードで整列されていないので、ワードをロードするための有効なアドレスではありません。 – Michael
@Michael Woops。これを修正しました。 – Tetragrammaton
* MIPSは、0x8033と0x2550がリンクされていることを認識しています*は奇妙な言葉遣いです。それはもっとそうです、MIPSはそれが言ったことを行い、これは私たちが望む振る舞いを得るための一つの方法です。 MIPSは何も認識する必要はなく、数学をするだけです。 –
- 1. MIPS swとlwの質問
- 2. パイプライン処理でのMIPS lwレイテンシ
- 3. はどのように実際に動作MIPSにLWのでしょうか?
- 4. MIPSコードのセットの違いは何ですか?
- 5. MIPSコード、実行がエラーで終了しましたか?
- 6. MIPSでSWとLWを使用してコードセグメントメモリにアクセスする
- 7. CからMIPSへの変換。配列のロード・ワード・オフセット?
- 8. 私のMIPSコード(配列)に何が間違っていますか?
- 9. MIPSコードで実行された命令の総数?
- 10. これらのコード行はVBScriptで何をしますか?
- 11. このコード行でコロンは何をしますか?
- 12. このコード行は何をしますか?私はこのコード行が何を思っていた
- 13. このコードではこの行は何をしていますか?
- 14. Matlabコードのこの行は何を意味しますか?
- 15. このコードの各行は何をしていますか?
- 16. このコードは何をしますか?
- 17. このコードは何をしますか?
- 18. このPHPコード行は何をしますか?
- 19. このコード行は何をしていますか?
- 20. ポインタ:このコード行は何を意味していますか?
- 21. これらのコード行は何をしますか?
- 22. このコード行は何をしていますか? [初心者]
- 23. このCコード行は何をしますか? (const VAR = "string";)
- 24. このコード行は何を推測しますか?
- 25. Google BigQueryの文字列「t0」は何を意味していますか?
- 26. Mipsコードでバグが発生しました
- 27. このコードはここで何をしていますか?
- 28. MIPSで開始アドレスをオフセットすると、整数の配列になるのは何ですか?
- 29. MIPSと行列
- 30. 私はこの機能で自分のMIPSコード内の特定の画像の色深度を減らしたいのMips
これもまた、プログラマ向けの_MIPS32アーキテクチャで説明されています。 第2巻:MIPS32™命令セット(ルックアップ参照)。 – Michael
本当にオフトピックにする必要があります、 "シンプルなGoogleの検索は、質問に答えます。 –
[http://stackoverflow.com/questions/36467299/how-do-i-translate-an-immediateregister-into-machine-code]のように、命令セットマニュアルはあなたに教えてくれるでしょう – Tommylee2k