How can I make this code go through the whole loop without having to implement it one by one? For now what I have is this, the variable 7 would have to be stored inside an array and it has to have a loop that adds them all, going through the memory spaces, I do not know how I can do the loop.
data
msg: .asciiz "El resultado es " # Cadena para imprimir
msg1: .asciiz "Introduzca el primer numero: " # Cadena para pedir el primer numero
msg2: .asciiz "Introduzco el segundo numero: " # Cadena para pedir el segundo numero
stack: .word 0
var_1: .word 1 # Variable inicializada a 1
var_2: .word 2 # Variable inicializada a 2
var_3: .word 3 # Variable inicializada a 3
var_4: .word 4 # Variable inicializada a 4
var_5: .word 5 # Variable inicializada a 5
var_6: .word 6 # Variable inicializada a 6
var_7: .word 7 # Variable inicializada a 7
.text
# Procedimiento principal
main:
addi $sp, $sp, -32 # Hace espacio en la pila
sw $ra, 0($sp) # Almacena $ra en la pila
la $s0, stack
lw $t1, 4($s0) # Carga var_a en $t1
lw $t2, 8($s0) # Carga var_b en $t2
lw $t3, 12($s0) # Carga var_b en $t3
lw $t4, 16($s0) # Carga var_b en $t4
lw $t5, 20($s0) # Carga var_b en $t5
lw $t6, 24($s0) # Carga var_b en $t6
lw $t7, 28($s0) # Carga var_b en $t7
add $a0, $t1, $t2 # Suma, resultado en $a0 para print_resultado
jal print_resultado # Llama a print_resultado
li $v0,10 # Código de la llamada al sistema "exit" en $v0
syscall # Termina el programa
lw $ra, 0($sp) # Recupera el valor de $ra de la pila
addi $sp, $sp, 32 # Devuelve el espacio de pila usado
jr $ra
# Procedimiento para imprimir un mensaje con el resultado. Imprime la
# cadena msg seguida del valor que se le pasa como primer argumento (en $a0)
print_resultado:
move $t0, $a0 # Guarda en $t0 el valor a imprimir
la $a0, msg # Pone en $a0 la dirección de la cadena
li $v0, 4 # Código syscall para imprimir una cadena
syscall # Imprime la cadena
move $a0, $t0 # Pone en $a0 el entero a imprimir
li $v0, 1 # Código syscall para imprimir un entero
syscall # Imprime el entero
jr $ra # Vuelve al procedimiento invocador