# Add the numbers in an array .data .extern sum 4 .extern i 4 .extern a 20 sum: .space 4 i: .space 4 a: .word 7,8,9,10,8 .text .globl main main: sw $0,sum # sum = 0; sw $0,i # for (i = 0; lw $9,i # allocate register for i lw $8,sum # allocate register for sum loop: sll $10,$9,2 # covert "i" to word offset lw $10,a($10) # load a[i] addu $8,$8,$10 # sum = sum + a[i]; sw $8,sum # update variable in memory addi $9,$9,1 # for (...; ...; i++ sw $9,i # update memory slti $10,$9,5 # for (...; i<5; bne $10,$0,loop end: li $v0, 10 # system call for exit syscall # we are out of here.