我的mips代码出了什么问题?

时间:2014-11-02 14:06:19

标签: assembly mips

我是学生并学习mips ..我写的是在qtspim模拟,但它不起作用。 QtSpim说指令在la $ s0,$ arr引用未定义的符号,但我不知道为什么。 你能修复我的mips代码吗? ++ 谢谢。我将$ arr修复为$ arr。 但是当我模拟它时,它在控制台上看不到任何东西。 你知道为什么吗?

.text

.globl main

main: 

      addi $sp, $sp, -4
      sw   $ra, 0($sp)

      la   $s0, arr         --- was la $0, $arr
      addi $s1, $zero, 5
      add  $a0, $zero, $s0

      li $v0, 4     
      la $a1, msg1     
      syscall

      move $t0, $zero

L1 : sll $t1, $t0, 2       
     add $t2, $a0, $t1

     li $v0, 5
     syscall
     move $t2,$v0

.data

msg1 : .asciiz "input 5 numbers" 
arr  : .word 0,0,0,0,0

1 个答案:

答案 0 :(得分:3)

arr是变量,而不是寄存器,因此您应删除$。也就是说,写:

la   $s0, arr

而不是

la   $s0, $arr