MIPS - 如何存储用户输入并将其动态存储在数组中?

时间:2014-04-21 00:25:14

标签: mips

有人能告诉我一个如何首先记录用户整数列表大小n的例子,然后将用户输入的n个整数存储到一个可以容纳n个整数的数组中吗?

我无法通过谷歌找到类似的东西。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您需要查看this MIPS系统调用列表,其中前17个受spim模拟器支持。

记住这个清单,这是你应该采取的一般方法:

# read n from console
li $v0 5
syscall
move $t0 $v0

# allocate dynamic memory
sll $a0 $v0 2    # sll performs $a0 = $v0 x 2^2
li $v0 9    #9 is the system code for service(sbrk) whoes work is        
syscall     #to allocate dynamic memory

move $t1 $zero
move $t2 $v0

loop:
    bge $t1 $t0 end

    # read in and store int
    li $v0 5
    syscall
    sw $v0 0($t2)

    addi $t1 $t1 1
    addi $t2 $t2 4
    j loop

end: