Mips 如何将其从迭代更改为递归?

Mips 如何将其从迭代更改为递归?,mips,mips32,Mips,Mips32,如何将此代码从迭代更改为递归?我真的不知道如何使用堆栈指针来跟踪我需要的变量 arraySum: move $t2, $0 else: beqz $a1, base addiu $a1, $a1, -1 lw $t3, 0($a0) addiu $a0, $a0, 4 addu $t2, $t2, $t3 b else base: move $v0, $

如何将此代码从迭代更改为递归?我真的不知道如何使用堆栈指针来跟踪我需要的变量

arraySum:
        move $t2, $0
    else:
        beqz $a1, base
        addiu $a1, $a1, -1
        lw $t3, 0($a0)
        addiu $a0, $a0, 4
        addu $t2, $t2, $t3
        b else
    base:
        move $v0, $t2
        jr $ra
``` where `$a0`  = array
and `$a1` = array_size

欢迎来到SO!如果你不知道,现在是学习的时候了:-)