Я пытаюсь построить цикл while в сборке Mars MIPS, однако я столкнулся с небольшой проблемой, когда сам цикл работает, однако действие по уменьшению числа с каждым проходом цикла, похоже, неначать после первого раунда.
Ниже у меня есть петля:
div:
sra $s0, $t1, 1 #halves the number in $s0
li $v0, 1
add $a0, $zero, $s0 #Prints out the number in $s0
syscall
li $a0, 32
li $v0, 11 #Prints out a space
syscall
loop:
blt $s0, $s4, exit #Loops to the start of div until it reaches 1
j div
exit:
li $v0, 10 #This is the exit.
syscall
Любая помощь приветствуется, так как у меня ужасное чувство, что здесь совершается ошибка новобранца.