我是mips的新手,我正在尝试编写一个使用子程序排序和输出数组的程序。我正处于调试过程中(我不太擅长,因为我不知道如何破译错误代码)并且我收到了错误:
Exception 7 [Bad data address] occurred and ignored
我认为错误发生在我尝试将值输入到数组中时。这是代码的那一部分:
main:
addi $sp, $sp, -104 # Save address on stack
sw $ra, 0($sp)
la $a0, S1 # Prompt user
li $v0, 4
syscall
li $v0, 5 # Read in n
syscall
move $s1, $v0 # $s1 = n
li $s2, 0 # $s2 = 0
inLoop:
beq $s2, $s1, loop # for (i = 0 ; i < n)
sll $t7, $s2, 2 # i = 4i
add $t8, $s0, $t7 # $t8 = address of a[i]
li $v0, 5 # Read in n
syscall
move $t8, $v0 # a[i] = n
addi $s2, $s2, 1 # i++
j inLoop
感谢您提供任何帮助。