我正在从用户那里获取4个整数输入并尝试打印其中最小的一个。但我的循环似乎不能正常工作。请帮帮我。
.text
.globl main
main: addi $v0, $0, 5
syscall
add $t0, $0, $v0
addi $v0, $0, 5
syscall
add $t1, $0, $v0
addi $v0, $0, 5
syscall
add $t2, $0, $v0
addi $v0, $0, 5
syscall
add $t3, $0, $v0
addi $a1, $0, $0
loop: sltu $a2, $t0, $t1
beq $a2, $0, L1
L1: addi $a2, $0, $t0
addi $a1, $a1, 1
j loop
addi $v0, $0, 1
add $a0, $0, $a2
答案 0 :(得分:1)
我不完全确定,但如果beq $a2, $0, L1
没有跳转到L1
,它会继续并仍然执行L1
下的代码。
尝试在beq
下添加跳转,以便在程序结束时跳转。