main: addi $sp, $sp, -4 sw $ra, 0($sp) li $a0,48 jal sqrt lw $ra, 0($sp) addi $sp, $sp, 4 jr $ra sqrt: addi $v0, $zero, 0 # r := 0 loop: mul $t0, $v0, $v0 # $t0 := r*r bgt $t0, $a0, end # if (r*r > n) goto end addi $v0, $v0, 1 # r := r + 1 j loop # goto loop end: addi $v0, $v0, -1 # r := r - 1 jr $ra # return with r-1 in $v0