异常7 [错误的数据地址]发生并被忽略

时间:2015-02-18 02:58:48

标签: assembly mips gas

我是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

感谢您提供任何帮助。

0 个答案:

没有答案