添加两个数组:编写一个 MIPS 汇编语言程序,将两个数组相加(逐个元素相加)并打印它们的总和。
在一行中打印出总和的元素,标记并用空格分隔值。该行应以 \n" 字符结尾。例如,如果数组 a 和 b 如上所述,输出将如下所示: 总和为:1 4 7 6 10 14 11 16 21 16
这是我到目前为止的代码
# data segment
.data
size: .word 10 #Size of first array
$a0: .word 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 #First array's elements
size2: .word 10 #Size of second array
$a1: .word -1, 0, 1, -2, 0, 2, -3, 0, 3, -4 #Second array's elements
size3: .word 10 #size of third array
main:
la $t0, $a0 #$t0 points to $a0[0]
lw $t1, size #$t1 equals number of elements in $a0[]
la $t2, $a1 #$t2 points to $a1[0]
lw $t3, size2 #$t3 equals number of elements in $a1[]
la $t4, $a0 #load base address of array into register $t4
la $t5, #load base address of array into register $t5
Assigning the array's elements to temp variables:
lw $t6,0($a0)
addiu $a0,$a0,4
lw $t7,0($a0)
addiu $a0,$a0,4
lw $t8,0($a0)
addiu $a0,$a0,4
lw $t9,0($a0)
addiu $a0,$a0,4
lw $t10,0($a0)
addiu $a0,$a0,4
# exit program:
li $v0, 10 # terminate program
syscall
所以这就是我难过的地方。如何将第一个和第二个数组的每个元素都放入 MIPS 值$t0
中,例如 ,$t1
等。
然后我该如何将它们加在一起并打印出数组的总和?
很抱歉占用您的时间,但我已经搜索了几个小时以获取有关如何在 MIPS 中添加数组然后打印总和的指南,但无济于事