.data index: .space 4 sum: .word 0 .text # ------------------------------------------------------ # FuncDef for main([]) .global main main: addi $sp, $sp, -8 sw $ra, 0($sp) sw $fp, 4($sp) add $fp, $0, $sp # index = 0 ori $t0, $0, index add $t0, $t0, $gp addi $t1, $0, 0 sw $t1, 0($t0) # while ((< index 10)) # (< index 10) ori $t0, $0, index add $t0, $t0, $gp lw $t0, 0($t0) addi $t1, $0, 10 slt $t2, $t0, $t1 beq $0, $t2, __L3 __L2: # sum = (+ sum index) ori $t0, $0, sum add $t0, $t0, $gp # (+ sum index) ori $t1, $0, sum add $t1, $t1, $gp lw $t1, 0($t1) ori $t3, $0, index add $t3, $t3, $gp lw $t3, 0($t3) add $t4, $t1, $t3 sw $t4, 0($t0) # (< index 10) ori $t0, $0, index add $t0, $t0, $gp lw $t0, 0($t0) addi $t1, $0, 10 slt $t3, $t0, $t1 bne $0, $t3, __L2 __L3: __L1: lw $ra, 0($fp) lw $fp, 4($fp) addi $sp, $sp, 8 jr $ra