尝试打印最小的4个整数 - MIPS

时间:2014-02-26 02:06:27

标签: loops assembly mips

我正在从用户那里获取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

1 个答案:

答案 0 :(得分:1)

我不完全确定,但如果beq $a2, $0, L1没有跳转到L1,它会继续并仍然执行L1下的代码。

尝试在beq下添加跳转,以便在程序结束时跳转。