2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
30
Task/Reverse-a-string/360-Assembly/reverse-a-string.360
Normal file
30
Task/Reverse-a-string/360-Assembly/reverse-a-string.360
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
* Reverse a string 21/05/2016
|
||||
REVERSE CSECT
|
||||
USING REVERSE,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 "
|
||||
MVC TMP(L'C),C tmp=c
|
||||
LA R8,C @c[1]
|
||||
LA R9,TMP+L'C-1 @tmp[n-1]
|
||||
LA R6,1 i=1
|
||||
LA R7,L'C n=length(c)
|
||||
LOOPI CR R6,R7 do i=1 to n
|
||||
BH ELOOPI leave i
|
||||
MVC 0(1,R8),0(R9) substr(c,i,1)=substr(tmp,n-i+1,1)
|
||||
LA R8,1(R8) @c=@c+1
|
||||
BCTR R9,0 @tmp=@tmp-1
|
||||
LA R6,1(R6) i=i+1
|
||||
B LOOPI next i
|
||||
ELOOPI XPRNT C,L'C print c
|
||||
L R13,4(0,R13) epilog
|
||||
LM R14,R12,12(R13) "
|
||||
XR R15,R15 "
|
||||
BR R14 exit
|
||||
C DC CL12'edoC attesoR'
|
||||
TMP DS CL12
|
||||
YREGS
|
||||
END REVERSE
|
||||
Loading…
Add table
Add a link
Reference in a new issue