[解決済み】MIPSでmod演算子を正しく使うには?
2022-02-01 20:18:13
質問事項
MIPSで、MODを動作させる方法に戸惑っています。以下は、私がこれまでに思いついたコードです。MOD以外にもエラーがあるかもしれませんが、それらのエラーはMODの勘違いの結果だと感じています。私がやろうとしていることは、動作するコード(python)をここに持ってくることです。
i = 1
k = 0
while i < 9:
if i % 2 != 0:
k = k + i
i += 1
print(k)
をMIPSに正しく変換してください。これは私の初めてのアセンブリなので、以下のコードで私をつまずかせるmodエラー以上のものがあるかもしれません。
# Takes the odd integers from 1 to 9, adds them,
# and spits out the result.
# main/driver starts here
.globl main
main:
#data segment
.data
Li: .byte 0x01 # i = 1
Lj: .byte 0x09 # j = 9
Lk: .byte 0x00 # k = 0
Ltwo: .byte 0x02 # 2 for mod usage
# text segment
.text
lb $t0, Li # temp reg for i
lb $t1, Lj # j
lb $t2, Lk # k
lb $t3, Ltwo # 2
L1: beq $t0, $t1, L2 # while i < 9, compute
div $t0, $t3 # i mod 2
mfhi $t6 # temp for the mod
beq $t6, 0, Lmod # if mod == 0, jump over to L1
add $t2, $t2, $t0 # k = k + i
Lmod: add $t0, $t0, 1 # i++
j L1 # repeat the while loop
L2: li $v0, 1 # system call code to print integer
lb $a0, Lk # address of int to print
syscall
li $v0, 10
syscall
解決方法は?
SPIMレジスタを16進数で表示しています。16進数の10は10進数の16です。
関連
-
Pythonを使って簡単なzipファイルの解凍パスワードを手作業で解く
-
[解決済み】ImportError: PILという名前のモジュールがない
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] リストの最後の要素を取得する方法
-
[解決済み] 辞書のリストを辞書の値でソートするにはどうしたらいいですか?
-
[解決済み] リストの要素数を取得する方法
-
[解決済み] どうすれば、文字列中のリテラルな中抜き文字を印刷し、また.formatを使用することができるのでしょうか?
-
[解決済み] リスト項目の出現回数を数えるにはどうしたらいいですか?
-
[解決済み] 文字列が空かどうかを確認する方法は?
-
[解決済み] JavaScriptで整数の除算を行い、余りを別途取得する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
pythonを使ったオフィス自動化コード例
-
python string splicing.join()とsplitting.split()の説明
-
python implement mysql add delete check change サンプルコード
-
Pythonの学習とデータマイニングのために知っておくべきターミナルコマンドのトップ10
-
FacebookオープンソースワンストップサービスpythonのタイミングツールKats詳細
-
[解決済み】RuntimeWarning: invalid value encountered in double_scalars で numpy の除算ができない。
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].