对数组的元素求和
Sum elements of an array
这是我第一次来这里,所以我想对任何 grammar/spelling 的英语错误表示歉意。我有一个对数组元素求和的汇编程序。我计算声明为 .space 4
的变量 suma
中的总和。
我的问题如下:当 n=0 时,不是通过将其声明为 .word 0
也不是 sw $t0, suma
,而是在 [=15 之后编码一些行,是否有可能总和以 0 的值结束=] 就在程序结束之前?
非常感谢任何答案!
suma: .space 4
a: .word 1, 0, 0, 3, 2, 1, 1
n: .word 7
i: .space 4
.text
main:
li $t0, 0
sw $t0, i
lw $t1, n
repeat:
bge $t0, $t1, end
add $t0, $t0, $t0
add $t0, $t0, $t0
lw $t0, a($t0)
lw $t1, suma
add $t1,$t1,$t0
sw $t1, suma
lw $t0, i
addi $t0, $t0, 1
sw $t0, i
lw $t1, n
j repeat
end:
li $v0, 10
syscall
您可以使用初始化为 0 的寄存器,然后在该寄存器中求和。退出循环后,将单词存储在suma中。
您可以使用初始化为 0 的寄存器(例如 $t3)并在该寄存器中求和。退出循环后,您会将单词存储在 suma 中。抱歉最后的评论(我忘了登录)。
这是我第一次来这里,所以我想对任何 grammar/spelling 的英语错误表示歉意。我有一个对数组元素求和的汇编程序。我计算声明为 .space 4
的变量 suma
中的总和。
我的问题如下:当 n=0 时,不是通过将其声明为 .word 0
也不是 sw $t0, suma
,而是在 [=15 之后编码一些行,是否有可能总和以 0 的值结束=] 就在程序结束之前?
非常感谢任何答案!
suma: .space 4
a: .word 1, 0, 0, 3, 2, 1, 1
n: .word 7
i: .space 4
.text
main:
li $t0, 0
sw $t0, i
lw $t1, n
repeat:
bge $t0, $t1, end
add $t0, $t0, $t0
add $t0, $t0, $t0
lw $t0, a($t0)
lw $t1, suma
add $t1,$t1,$t0
sw $t1, suma
lw $t0, i
addi $t0, $t0, 1
sw $t0, i
lw $t1, n
j repeat
end:
li $v0, 10
syscall
您可以使用初始化为 0 的寄存器,然后在该寄存器中求和。退出循环后,将单词存储在suma中。
您可以使用初始化为 0 的寄存器(例如 $t3)并在该寄存器中求和。退出循环后,您会将单词存储在 suma 中。抱歉最后的评论(我忘了登录)。