MIPS在循环中初始化数组

时间:2013-04-08 12:12:16

标签: mips

所以我试图把10到0之间的数字放到一个数组中。

    li  $t0, 0      #loopcounter = 0
    la  $a0, array
    addi    $a0, $0, 0  #initialize array index = 0
    loop:
            li  $v0, 5
            syscall
            blt $v0, 0, loop
            bgt $v0, 50, loop
            add $t0, $t0, 1   #increment loop counter

            sw  $a0, 0($a0)     # ERROR HERE #store value of $v0 at index 0
            addi    $a0, $a0, 4     # Increment the index by 4


            blt $t0, 10, loop

我如何将这10个数字放入$ a0的数组中,然后才能访问它们?

1 个答案:

答案 0 :(得分:1)

这将

addi $a0, $0, $0     # initialize index with 0
sw $v0, 0($a0)       # store value of $v0 at index 0
addi $a0, $a0, 4     # Increment the index by 4
sw $v0, 0($a0)       # store value of $v0 at index 1

and so on...

我为你留下了循环部分。

为什么增加4?

MIPS中的Becuase整数占用32位或4个字节