2017-05-16 11 views
1

レジスタ$t0には値0x10008040が含まれています。アドレス 0x10008048のメインメモリからワードをロードし、その結果をレジスタ$s1に格納するMIPS命令の のマシンコードを書き出します。命令はレジスタ$t0を使用する必要があります。マシンコードの16進数値として答えます。MIPS命令およびマシンコード

私は

lw $t0, 8($s1) 

が、その後私が助けに感謝をする方法をスタックしていますこの問題でこれまで来ました。

答えて

1

実際には、命令が見つかりませんでしたので、あなたの仕様からは終わりません。

MIPS命令のマシンコードを書き出します。

lw $s1, 8($t0) 

この命令のマシンコードを書くためにあなたがMIPS参照シートMIPS Reference sheet

を見てする必要がありますあなたはシートを見ればlwオペコード 35を持っており、$1のためにのために、17でありますバイナリ

op rs rt immidiate 
35 8 17 8 

を以下のように$t0は8であり、8はそれをアレンジされ、オフセットマシンコードの16進値として

0x8D110008 

回答を16進数4ビット

1000 1101 0001 0001 0000 0000 0000 1000 

として

100011 01000 10001 0000000000001000 

グループ。

0x8D110008 
2

ほぼ完成ですが、レジスタを交換する必要があります。私はそうだと思う、ただ一つの教訓。

lw $s1, 8($t0) // $s1 = *($t0 + 8)