• 締切済み

コンピュータアーティテクチャ

写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 空欄に入る命令を教えて欲しいです

この投稿のマルチメディアは削除されているためご覧いただけません。

みんなの回答

  • _kappe_
  • ベストアンサー率68% (1525/2219)
回答No.1

学校の課題か何かでしょうか。 2つのlw命令は変数aとbの値の読み出し、add命令は加算に対応していますから、足りていないのは (1)aの値を4ビット右シフト(a>>4) (2)計算結果を変数xに書き込み の2つです。 対応する命令を2つの空欄にそれぞれ書き込んでください。 (1)の右シフトに使う命令は、問題文中にヒントが書かれています。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • コンピュータアーティテクチャ

    写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 (6)の空欄に入る命令を教えて欲しいです

  • コンピュータアーキテクチャ

    写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 空欄に入る命令を教えて欲しいです お手数をおかけしますがよろしくお願いします

  • コンピュータアーティテクチャ

    写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 (7)の空欄に入る命令を教えて欲しいです お手数をおかけしますがよろしくお願いします

  • コンピュータアーキテクチャ

    写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 空欄に入る命令を教えて欲しいです (sraのような) お手数をおかけしますがよろしくお願いします

  • コンピュータアーキテクチャ

    写真の左のCプログラムの断片をコンパイルした結果、右のMIPSアセンブリプログラムが得られるとします。 空欄に入る命令を答える問題です 空欄の自分の答えが合っているかどうかを知りたいです 答え andi $24,$28,6 間違っている場合は正しい答えを知りたいです

  • 命令セットについて

    インテルのアセンブリ言語の命令セットとMIPSの命令セットの構成の違いを詳しく教えて下さい(*_*) お願いします★

  • アセンブリプログラムの問題です。

    アセンブリプログラムの勉強をしているのですが、以下の問題がわかりません。 (1) 変数f, g, h, i, j はCのプログラム内で32ビットの整数として宣言されているものとする。 以下のCのステートメントをMIPSのアセンブリコードで表せ。 また、f, g, h, i, j の値がそれぞれ1, 2, 3, 4, 5 であるならば最終的なfの値はいくつか。 a. f = g + f + i ; b. f = g + (h + 2); (2) 変数f, g, h, i, jはそれぞれ$s0, $s1, $s2, $s3, $s4に割り当てるられているものとする。また、配列AとBのベースアドレスは、それぞれレジスタ$s6 と$s7 に割り当てられているものとする。 次のCのステートメントをMIPSのアセンブリコードで表せ。 a. f = g + h + B[4] ; b. f = g - A[ B[4] ] ; c. f = -g + h + B[1] ; d. f = A[ B[g] + 1 ] ; (3) (2)の設定において、次のMIPSのステートメントをCのステートメントで表せ。 また、可能ならばこのMIPSアセンブリコードを同じ機能を果たしながらMIPS命令の数が最小になるように書き直せ。 a. add $s0, $s0, $s1 add $s0, $s0, $s2 add $s0, $s0, $s3 add $s0, $s0, $s4 b. lw $s0, 4($s6) 以上です。わかるものだけでも良いので教えてもらえますでしょうか?

  • 情報処理の問題ですが

    情報処理の問題ですがどなたか解き方を教えて頂けますでしょうか? 宜しくお願い致します。 問題 8000万個の命令を実行するプログラムを60MIPSで実行した場合に 予想される処理時間は何秒か(小数点第3位を四捨五入する) ここで プロセッサの使用率は75%としてオペレーティングシステムのオーバーヘッドは考えないものとする。なお、次の計算式を参考にするとよい (1)1秒間に実行できる命令数=MIPS値×使用率 (2)プログラム処理時間=プログラム命令数/1秒間に実行できる命令数 (3)MIPS値=1秒間に実行できる命令数を百万の単位で示したもの

  • オブジェクトファイルのファイルフォーマット

    オブジェクトファイルのファイルフォーマット ELF/DWARF2形式について調べています。 C言語で作ったプログラムをコンパイルし生成されるオブジェクトファイルをバイナリエディタで開き、アセンブリ言語と比較すると、オブジェクトファイルの最初と最後にプログラムの内容(命令)と直接関係ないものが含まれていることが分かりました。 例えば、オブジェクトファイルのある場所や、コンパイルされた日時などです。(これらの情報はテキストだったので判別ができました。) インターネットで調べたところ、生成されたオブジェクトファイルがELF/DWARF2形式とうフォーマットで作られているというところまでは分かりました。 実際のオブジェクトファイルのヘッダとフッタ(命令の前後)を除いて、純粋な機械語(命令)の部分を取り出したいのですが、このELF/DWARF2形式というフォーマットでは、どうすれば、純粋な機械語の始まりと終わりを読み取ることができるでしょうか? よろしくお願いいたします。

  • MIPSアセンブリ言語で配列を宣言するには?

    現在MIPSアセンブリ言語を学習していますが、配列に相当するものの宣言の仕方を詳しく知りません。 int items[5] ={0,0,0,0,0}; (C言語の場合) のような配列をMIPSで用意するなら、 items: .word 0,0,0,0,0 としてやるなどすればよいことまではわかっていますが、もし配列の要素数が500だった場合、上で0を500個も書かなければならないのでしょうか。短く書ける方法はありませんか。