mips32

    1

    1答えて

    2つのコードの違いは何ですか? .data | .data A: .word 0:100| A: .word 0:100 | .text | .text li $t1, 4 | la $t1, A lw $t0, A($t1) | lw $t0, 4($t1)

    0

    1答えて

    はMIPSにif_elseの対応する構造がどうなるか if(cond) { block_if}; else { block_else}; としてCでif..elseの一般的な構造を考えると?

    2

    1答えて

    私はいくつかの場所でこれを読んだが、理由を完全に理解していない。私はすべての命令がMIPS32の4バイトにワードアライメントされなければならない理由を理解しています。 しかし、私はを読みました。スタックポインタはダブルワードアライメントでなければならないので、スタックフレームは8の倍数でなければなりません。どうして? スタックを8バイトの倍数に埋め込む理由を除いて、添付画像のすべてを理解しています

    0

    2答えて

    次のCIPSのMIPS変換はありますか?そうでない場合は、詳細に説明してください。私の教授は、バージョン1が正しいと言った。私がバージョン2のような命令を書いた場合、同じ出力を生成してもマークは得られません。彼女は理由を説明しなかった。前もって感謝します ! Cコード if (i==j) { f = g + h ; } else f = g -h ; MIPS版1: bne $s3, $s4,

    0

    1答えて

    私はMIPSの新版です。Wikipediaに記載されているように、Saper of Eratosthenesアルゴリズムを記述して、1から1000の素数をすべて見つけようとしています。 4、まだ説明されていない洗練のいずれかである。ここで は、これまでの私のコードです: .data array: .word 1:1000 # array[1000] = {1} (assume all ar

    0

    1答えて

    MIPS MARS 4.5で挿入ソートを実行しようとしています。 A: 私はと特異的にいくつかのトラブルを抱えている lw myArray($s4), myArray($s6)# alist[position] = alist[position-1] B: lw myArray($s4), $s5 # alist[position] = current value 私は取得しています問題は

    1

    1答えて

    私はmipsを初めて使用しています。 lui $s4, 0x1001 ori $s4, $s4, $s3 : addi $s3, $0, '\n' $ S3は今、私はこれをしようとしています0x1001000a する$ S4を設定したい を0X0000000Aようになりまし等しいです:私は、次の命令を持っていますしかし、私はoriステートメントでエラーが発生しています。どんな助けもあ

    0

    1答えて

    にスピムを使用して.spimファイル、私は、出力を得るためにそれを実行するにはどうすればよいのアレイ の第二の最大の要素を見つけるためのMIPSファイルを書いていますか? 私は私ではなく、GUIのコマンドラインを介してMIPSのシミュレータを実行する必要のためにいくつかの合法的な理由を考えることができる方法

    0

    1答えて

    私はアセンブリのコーディングが初めてで、次のCコードをMIPSアセンブリに転送するという問題に遭遇しました。 b[8] = b[i-j] + x ; 及び変数はI、J、Xは、レジスタ7,4及び15であり、配列bのベースアドレスは2870220小数です。 私は、次の解決策 lui $2, 0x002B ori $2, $2, 0xCBCC sub $3, $7, $4 add $3, $2

    0

    1答えて

    このアセンブリラインが理にかなっている理由を説明できますか? $ 0は常に0 の値を持つレジスタを参照 beq $0, $0, 1 注だから我々は、PCに行く$ = 0 $ 0の場合+ 4 + 1が他の次の命令に行くと言っています。 私の混乱は、1のbeq命令の即時のフィールドから来ます。 これは、私たちがPC + 5に対処することを意味しますか?メモリにアクセスするときにMIPSがアライメン