Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .data
- arr1: .word 10, 4, 5, 3, 6, 7, 1
- arr2: .word 5, 5, 5, 5, 5, 5, 5
- .text
- main:
- la $a0, arr1
- la $a1, arr2
- li $a2, 7
- jal find_maxima
- li $a1, 7
- la $a0, arr2
- jal printArr
- li $v0, 10
- syscall
- #a0: array address
- #a1: size of array
- printArr:
- sub $sp, $sp, 16
- sw $t2, 12($sp)
- sw $t1, 8($sp)
- sw $t0, 4($sp)
- sw $a0, ($sp)
- move $t2, $ra
- move $t0, $a0 #need $a0 to print
- li $v0, 1
- li $t1, 1
- beginWhile:
- bgt $t1, $a1, endWhile
- lw $a0, ($t0)
- syscall
- jal printSpace
- addi $t1, $t1, 1
- addi $t0, $t0, 4
- j beginWhile
- endWhile:
- li $a0, '\n'
- li $v0, 11
- syscall
- move $ra, $t2
- lw $t2, 12($sp)
- lw $t1, 8($sp)
- lw $t0, 4($sp)
- lw $a0, ($sp)
- addi $sp, $sp, 16
- jr $ra
- printSpace:
- sub $sp, $sp,8
- sw $a0, 4($sp)
- sw $v0, ($sp)
- li $a0, ' '
- li $v0, 11
- syscall
- lw $a0, 4($sp)
- lw $v0, ($sp)
- addi $sp, $sp, 8
- jr $ra
- #####################
- #a0: input buffer address
- #a1: output buffer address
- #a2: number of elements in array
- #####################
- find_maxima:
- ############## your code begins here #################
- ############## your code ends here ##################
- jr $ra
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement