Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,57 @@
|
|||
* Insertion sort 16/06/2016
|
||||
INSSORT CSECT
|
||||
USING INSSORT,R13 base register
|
||||
B 72(R15) skip savearea
|
||||
DC 17F'0' savearea
|
||||
STM R14,R12,12(R13) prolog
|
||||
ST R13,4(R15) "
|
||||
ST R15,8(R13) "
|
||||
LR R13,R15 "
|
||||
LA R6,2 i=2
|
||||
LA R9,A+L'A @a(2)
|
||||
LOOPI C R6,N do i=2 to n
|
||||
BH ELOOPI leave i
|
||||
L R2,0(R9) a(i)
|
||||
ST R2,V v=a(i)
|
||||
LR R7,R6 j=i
|
||||
BCTR R7,0 j=i-1
|
||||
LR R8,R9 @a(i)
|
||||
S R8,=A(L'A) @a(j)
|
||||
LOOPJ LTR R7,R7 do j=i-1 to 1 by -1 while j>0
|
||||
BNH ELOOPJ leave j
|
||||
L R2,0(R8) a(j)
|
||||
C R2,V a(j)>v
|
||||
BNH ELOOPJ leave j
|
||||
MVC L'A(L'A,R8),0(R8) a(j+1)=a(j)
|
||||
BCTR R7,0 j=j-1
|
||||
S R8,=A(L'A) @a(j)
|
||||
B LOOPJ next j
|
||||
ELOOPJ MVC L'A(L'A,R8),V a(j+1)=v;
|
||||
LA R6,1(R6) i=i+1
|
||||
LA R9,L'A(R9) @a(i)
|
||||
B LOOPI next i
|
||||
ELOOPI LA R9,PG pgi=0
|
||||
LA R6,1 i=1
|
||||
LA R8,A @a(1)
|
||||
LOOPXI C R6,N do i=1 to n
|
||||
BH ELOOPXI leave i
|
||||
L R1,0(R8) a(i)
|
||||
XDECO R1,XDEC edit a(i)
|
||||
MVC 0(4,R9),XDEC+8 output a(i)
|
||||
LA R9,4(R9) pgi=pgi+1
|
||||
LA R6,1(R6) i=i+1
|
||||
LA R8,L'A(R8) @a(i)
|
||||
B LOOPXI next i
|
||||
ELOOPXI XPRNT PG,L'PG print buffer
|
||||
L R13,4(0,R13) epilog
|
||||
LM R14,R12,12(R13) "
|
||||
XR R15,R15 "
|
||||
BR R14 exit
|
||||
A DC F'4',F'65',F'2',F'-31',F'0',F'99',F'2',F'83',F'782',F'1'
|
||||
DC F'45',F'82',F'69',F'82',F'104',F'58',F'88',F'112',F'89',F'74'
|
||||
V DS F variable
|
||||
N DC A((V-A)/L'A) n=hbound(a)
|
||||
PG DC CL80' ' buffer
|
||||
XDEC DS CL12 for xdeco
|
||||
YREGS symbolics for registers
|
||||
END INSSORT
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
* Insertion sort 16/06/2016
|
||||
INSSORTS CSECT
|
||||
USING INSSORTS,R13 base register
|
||||
B 72(R15) skip savearea
|
||||
DC 17F'0' savearea
|
||||
STM R14,R12,12(R13) prolog
|
||||
ST R13,4(R15) "
|
||||
ST R15,8(R13) "
|
||||
LR R13,R15 "
|
||||
LA R6,2 i=2
|
||||
LA R9,A+L'A @a(2)
|
||||
DO WHILE=(C,R6,LE,N) do while i<=n
|
||||
L R2,0(R9) a(i)
|
||||
ST R2,V v=a(i)
|
||||
LR R7,R6 j=i
|
||||
BCTR R7,0 j=i-1
|
||||
LR R8,R9 @a(i)
|
||||
S R8,=A(L'A) @a(j)
|
||||
L R2,0(R8) a(j)
|
||||
DO WHILE=(C,R7,GT,0,AND,C,R2,GT,V) do while j>0 & a(j)>v
|
||||
MVC L'A(L'A,R8),0(R8) a(j+1)=a(j)
|
||||
BCTR R7,0 j=j-1
|
||||
S R8,=A(L'A) @a(j)
|
||||
L R2,0(R8) a(j)
|
||||
ENDDO , next j
|
||||
MVC L'A(L'A,R8),V a(j+1)=v;
|
||||
LA R6,1(R6) i=i+1
|
||||
LA R9,L'A(R9) @a(i)
|
||||
ENDDO , next i
|
||||
LA R9,PG pgi=0
|
||||
LA R6,1 i=1
|
||||
LA R8,A @a(1)
|
||||
DO WHILE=(C,R6,LE,N) do while i<=n
|
||||
L R1,0(R8) a(i)
|
||||
XDECO R1,XDEC edit a(i)
|
||||
MVC 0(4,R9),XDEC+8 output a(i)
|
||||
LA R9,4(R9) pgi=pgi+1
|
||||
LA R6,1(R6) i=i+1
|
||||
LA R8,L'A(R8) @a(i)
|
||||
ENDDO , next i
|
||||
XPRNT PG,L'PG print buffer
|
||||
L R13,4(0,R13) epilog
|
||||
LM R14,R12,12(R13) "
|
||||
XR R15,R15 "
|
||||
BR R14 exit
|
||||
A DC F'4',F'65',F'2',F'-31',F'0',F'99',F'2',F'83',F'782',F'1'
|
||||
DC F'45',F'82',F'69',F'82',F'104',F'58',F'88',F'112',F'89',F'74'
|
||||
V DS F variable
|
||||
N DC A((V-A)/L'A) n=hbound(a)
|
||||
PG DC CL80' ' buffer
|
||||
XDEC DS CL12 for xdeco
|
||||
YREGS symbolics for registers
|
||||
END INSSORTS
|
||||
Loading…
Add table
Add a link
Reference in a new issue