Ask Question
26 May, 10:52

MIPS Assembly program: Accept N numbers from the user (or list the input array in the program similar to the demo code) and sort the N numbers using any sorting algorithm. Print both the sorted array and unsorted array. N should be greater than or equal to 10.

+2
Answers (1)
  1. 26 May, 11:17
    0
    main:

    la $t0, Array # Copy the base address of your array into $t1

    add $t0, $t0, 40 # 4 bytes per int * 10 ints = 40 bytes

    outterLoop: # Used to determine when we are done iterating over the Array

    add $t1, $0, $0 # $t1 holds a flag to determine when the list is sorted

    la $a0, Array # Set $a0 to the base address of the Array

    innerLoop: # The inner loop will iterate over the Array checking if a swap is needed

    lw $t2, 0 ($a0) # sets $t0 to the current element in array

    lw $t3, 4 ($a0) # sets $t1 to the next element in array

    slt $t5, $t2, $t3 # $t5 = 1 if $t0 < $t1

    beq $t5, $0, continue # if $t5 = 1, then swap them

    add $t1, $0, 1 # if we need to swap, we need to check the list again

    sw $t2, 4 ($a0) # store the greater numbers contents in the higher position in array (swap)

    sw $t3, 0 ($a0) # store the lesser numbers contents in the lower position in array (swap)

    continue:

    addi $a0, $a0, 4 # advance the array to start at the next location from last time

    bne $a0, $t0, innerLoop # If $a0! = the end of Array, jump back to innerLoop

    bne $t1, $0, outterLoop # $t1 = 1, another pass is needed, jump back to outterLoop
Know the Answer?
Not Sure About the Answer?
Find an answer to your question 👍 “MIPS Assembly program: Accept N numbers from the user (or list the input array in the program similar to the demo code) and sort the N ...” in 📗 Engineering if the answers seem to be not correct or there’s no answer. Try a smart search to find answers to similar questions.
Search for Other Answers