# sumit.asm # Simple routine to sum N integers to demo a loop. # Author: R.N. Ciminero # Revision date: 10-06-93 Original def. # See Patterson & Hennessy pg. A-46 for system services. .text .globl main main: li $v0,4 # output msg1 la $a0, msg1 syscall li $v0,5 # input N and save syscall move $t0,$v0 li $t1, 0 # initialize counter (i) li $t2, 0 # initialize sum loop: addi $t1, $t1, 1 # i = i + 1 add $t2, $t2, $t1 # sum = sum + i beq $t0, $t1, exit # if i = N, continue j loop exit: li $v0, 4 # output msg2 la $a0, msg2 syscall li $v0,1 # output sum move $a0, $t2 syscall li $v0,4 # output lf la $a0, lf syscall li $v0,10 # exit syscall .data msg1: .asciiz "\nNumber of integers (N)? " msg2: .asciiz "\nSum = " lf: .asciiz "\n"