MIPSとアセンブリコードについて何かを知らなければならないテストのために勉強しようとしています。与えられた質問に対する正解だと思うものを書こうとしますが、私が正しいかどうかはわかりません
MIPSのダイレクトオペランド32ビットオペランドに32ビット値を含めることはできますか?
最初の16ビットはオペコードとソース+ファイナルレジスタ用に予約されているので、「いいえ-決して」とは思いません。それは正しいですか、それとも任意の32ビット値を含むことができるいくつかの命令がありますか?
指示の時間があります(IF = 400ps、ID = 500ps、EX = 450ps、MEM = 500ps、WB = 150ps)
時計のタクトは何ですか
a)パイプラインのないプロセッサ?
b)パイプラインを備えたプロセッサ?a)は2000ps(すべての時間の合計)であり、b)500ps(テーブルで最大の時間)だと思いますが、繰り返しになりますが、よくわかりません。
私は次のアセンブリコードを持っています:
0x0000 addi t0, $0, 5 0x0004 loop: beq t0, $0, done 0x0008 nop 0x000C lw t1, 0x4($0) 0x0010 lw t2, 0x24($0) 0x0014 addi t0, t0, -1 0x0018 j loop 0x001C nop 0x0020 done
私はそれが何をするのか100%確信していません(
0x4($0)
負荷のある操作の結果が何であるかを完全に理解していないため)。forサイクルがあることを知っています(for t=5, ,t >0 t--
)。問題は、このキャッシュのヒット率とミス率とは何ですか。また、どのように計算しますか。
少なくとも最初の2つの質問に答えることができれば、それは素晴らしいことです。