40 lines
1.5 KiB
Plaintext
40 lines
1.5 KiB
Plaintext
...
|
|
KN EQU 3
|
|
KM EQU 5
|
|
N DC AL2(KN)
|
|
M DC AL2(KM)
|
|
A DS (KN*KM)F matrix a(n,m)
|
|
B DS (KM*KN)F matrix b(m,n)
|
|
...
|
|
* b(j,i)=a(i,j)
|
|
* transposition using Horner's formula
|
|
LA R4,0 i,from 1
|
|
LA R7,KN to n
|
|
LA R6,1 step 1
|
|
LOOPI BXH R4,R6,ELOOPI do i=1 to n
|
|
LA R5,0 j,from 1
|
|
LA R9,KM to m
|
|
LA R8,1 step 1
|
|
LOOPJ BXH R5,R8,ELOOPJ do j=1 to m
|
|
LR R1,R4 i
|
|
BCTR R1,0 i-1
|
|
MH R1,M (i-1)*m
|
|
LR R2,R5 j
|
|
BCTR R2,0 j-1
|
|
AR R1,R2 r1=(i-1)*m+(j-1)
|
|
SLA R1,2 r1=((i-1)*m+(j-1))*itemlen
|
|
L R0,A(R1) r0=a(i,j)
|
|
LR R1,R5 j
|
|
BCTR R1,0 j-1
|
|
MH R1,N (j-1)*n
|
|
LR R2,R4 i
|
|
BCTR R2,0 i-1
|
|
AR R1,R2 r1=(j-1)*n+(i-1)
|
|
SLA R1,2 r1=((j-1)*n+(i-1))*itemlen
|
|
ST R0,B(R1) b(j,i)=r0
|
|
B LOOPJ next j
|
|
ELOOPJ EQU * out of loop j
|
|
B LOOPI next i
|
|
ELOOPI EQU * out of loop i
|
|
...
|