麻烦简单的Mips功能

时间:2018-02-18 02:37:59

标签: mips mips32

尝试使用参数$ a0 - (addr)str,$ a1 - (int)n编写Mips函数,该函数返回字符串的addr,该字符串是输入str的最后一个Length -n。

然而,我得到了不必要的结果,并担心无限循环或逻辑错误。这是我到目前为止所得到的......

.globl后缀

 suffix:
 li $t0, 0  #sets $t0 to 0
 jal length #length is another function that sets $v0 to the length of the 
         input string, pretty sure it works
 li  $t1, 0
 add $t1, $t1, $v0
 sub $t1, $t1, $a1  
 lb $v0, ($a0)  
 other_loop:
 beq  $t1, $t0, other_exit
 sb   $v0, ($a0)
 addi $t0, $t0, 1
 addi $a0, $a0, 1
 j other_loop

other_exit:
 jr $ra

我担心我错误地调用了我的长度函数(将$ v0设置为输入str $ va0的长度 - 非常感谢任何反馈。

0 个答案:

没有答案