将输入值设置为Array - MIPS

时间:2014-04-15 00:26:01

标签: mips

程序即将完成,我只是遇到一个问题,每次循环时都要将$ v0的值放入数组“intarray”,例如在intarray [0]输入“1”,“2 “在intarray [1]等......

程序通过循环请求5个整数。我需要在5个点中的每个点处将整数设置到inarray中。我不明白如何在MIPS中执行此操作。

我也试图将$ t1的最终值变为变量“total”,但我认为这需要与intarray相同的东西。打印这些阵列也很好。

主要问题是如何取值例如$ t0并将其置于诸如intarray [1]之类的位置。

感谢您的帮助。

以下是代码:

.data
intarray: .word -1, -1, -1, -1, -1
total: .word 0
result: .asciiz  "Enter a series of 5 integers, one per line: "
thetot: .asciiz "Your total is: "
.text
main:
li $v0, 4 #call to print string
la $a0, result #print string from location
syscall

li $t0, 0 #set $t0 = i = 0
li $t1, 0 #set $t1 = tot = 0
la $t2, intarray #puts the address of intarray into $t2
loop:
    li $v0, 5 #system call code to accept integer
    syscall
    add $t1, $t1, $v0 #moves integer to $t0
    add $t0, $t0, 1
blt $t0, 5, loop #end loop if i<5

li $v0, 4
la $a0, thetot
syscall
li $v0, 1
la $a0, ($t1)
syscall


li $v0, 10 #exits program
syscall

0 个答案:

没有答案