Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *************************************************
- * SORT SUBROUTINE
- *************************************************
- * Register Usage:
- *
- * 1 - used by XDECI / param list addr
- * 2 - param list, table
- * 3 - param list, eot
- * 4 -
- * 5 - j ptr
- * 6 - min ptr
- * 7 - value of J
- * 8 - value of max
- * 9 - value of i
- * 10 - subroutine return address
- * 11 - temp
- * 12 -
- * 13 -
- * 14 -
- * 15 -
- *
- *************************************************
- *
- SORT DS 0H
- STM 0,15,REGSAVE
- LM 2,3,0(1) LOAD PARAM LIST
- *
- LOOP1 C 2,0(3) CHECK FOR EOT
- BNL END1
- LR 6,2 MAX = I
- LA 5,4(2) J = I + 1
- LOOP2 C 5,0(3) CHECK FOR EOT
- BNL END2
- L 7,0(5) LOAD J VALUE
- L 8,0(6) LOAD MAX VALUE
- CR 8,7 COMPARE MAX < j
- BNL ENDIF
- LR 6,5 MAX = J
- ENDIF A 5,=F'4' INCREMENT J PTR
- B LOOP2 REPEAT LOOP2
- END2 L 9,0(2) LOAD I VALUE
- L 8,0(6) LOAD MAX VALUE
- ST 9,0(0,6) SWAP VALUES
- ST 8,0(0,2)
- A 2,=F'4' INCREMENT I PTR
- B LOOP1 REPEAT LOOP1
- END1 DS 0H
- LM 0,15,REGSAVE
- BR 10
- *************************************************
- * END SORT
- *************************************************
Advertisement
Add Comment
Please, Sign In to add comment