%%off PREFIX :Quicksort: K IS $0 Parameter for QSort n IS $1 R IS $0 shares register with K return IS $1 shares register with n m IS $2 L IS $3 J IS $4 d IS $5 ki IS $6 kj IS $7 t IS $8 :RSort IS @ rJ IS :rJ %%on RSort SUB m,m,1 \hfil$1$&\ul{\sl R1.~Initialize.} SET L,K \hfil$1$& 8ADDU R,n,L \hfil$1$& SUBU R,R,8 \hfil$1$& %%% 2H SET J,R \hfil$A$&\ul{\sl R2.~Begin new stage.}$j \is r$ SUB d,L,J \hfil$A$&$i \is 0$ %%% 3H LDO ki,J,d \hfil$C^\prime$&\ul{\sl R3.~Inspect $K_i$ for 1.} SRU t,ki,m \hfil$C^\prime$& PBEV t,4F \hfil$C^\prime+2(B+X)$& %%% 6H SUBU J,J,8 \hfil$C^{\prime\prime}+X$&\ul{\sl R6.~Decrease $j$.} BNN d,8F \hfil$C^{\prime\prime}+3X$&If $i> j$ goto R8. ADD d,d,8 \hfil$C^{\prime\prime}$& %%% LDO kj,J,8 \hfil$C^{\prime\prime}$&\ul{\sl R5.~Inspect $K_{j+1}$ for 0.} SRU t,kj,m \hfil$C^{\prime\prime}$& BOD t,6B \hfil$3C^{\prime\prime}-2B$& %%% STO ki,J,8 \hfil$B$&\ul{\sl R7.~Exchange $R_i, R_{j+1}$.} STO kj,J,d \hfil$B$& %%% 4H ADD d,d,8 \hfil$C^\prime-X$&\ul{\sl R4.~Increase $i$.} PBNP d,3B \kern -10pt\hfil$C^\prime-X+2(A-X)$&If $i> j$ goto R8. %%% 8H BNP m,0F \hfil$A+2G$&\ul{\sl R8.~Test special cases.} $b\is b+1$. SUB m,m,1 \hfil$A-G$&If $b>m$ go to step R10. CMPU t,J,R \hfil$A-G$& BNN t,2B \hfil$A-G+2R$&If $j=r$ go to step R2. CMPU t,J,L \hfil$A-G-R$& BN t,2B \hfil$A-G-R+2L$&If $j