/FAST WALSH TRANSFORM: OUTPUT IS IN SEQUENCY ORDER. /INVERSE FWT: INPUT MUST BE IN SEQUENCY ORDER. /OCTAL /PROGRAM OCCUPIES LOCATIONS 20-40, 200-364, 400-575. /IN ADDITION, LOCATIONS 0-6, 10-15 ARE USED DURING /EXECUTION. /FOR C(N)=2^M DATA, M=3,4,5,6,7,10,11,12, /2N LOCATIONS ARE REQUIRED: /INPUT DATA STARTS AT C(DT)+1, /EMPTY LOCATIONS START AT C(EMT)+1, /OUTPUT STARTS AT C(ST)+1. /4000 IS NOT ALLOWED AS INPUT. /OUTPUT HAS BEEN MULTIPLIED BY 2^C(SCALE). /PROGRAM INITIALIZATION: C(N=0), C(DT=1), C(EMT=2). /PROGRAM CALLING FOR FWT AND IFWT: /JMS I DOFWT, DOFWT=20. /ST=3, SCALE=4. /WRITTEN BY NEZIH GECKINLI, /DEPARTMENT OF ELECTRICAL ENGINEERING, /MIDDLE EAST TECHNICAL UNIVERSITY, ANKARA, TURKEY. /OCT, 1973. / ********** /FWT N=0 DT=1 EMT=2 ST=3 SCALE=4 SC=5 H=6 A=10 B=11 C=12 D=13 E=14 F=15 *20 DOFWT, FWT S, 0 SPA CML TAD H RAR DCA I E TAD I F SPA CIA RAL SPA CLA ISZ SC CLL JMP I S KDIV, RAR KNOP, NOP *200 FWT, 0 CLA CLL TAD N RAR CIA DCA ST TAD DT DCA A TAD A DCA B TAD EMT DCA E TAD E DCA F DCA SCALE DCA SC TAD KDIV DCA S+4 TWO, TAD I A SPA CML DCA H TAD I A JMS S TAD I B SZA CIA SPA CML DCA H TAD I B JMS S ISZ ST JMP TWO TAD N CLL RTR CIA DCA ST TAD EMT DCA A TAD A DCA C IAC CLL RAL TAD A DCA B TAD B DCA D TAD DT DCA E TAD E DCA F TAD SC SNA CLA JMP .+3 TAD KDIV JMP .+3 TAD KNOP ISZ SCALE DCA S+4 DCA SC FOUR, TAD I A SPA CML DCA H TAD I B JMS S TAD I D SZA CIA SPA CML DCA H TAD I C JMS S TAD I A SZA CIA SPA CML DCA H TAD I B JMS S TAD I C SZA CIA SPA CML DCA H TAD I D SZA CIA JMS S ISZ A ISZ A ISZ B ISZ B ISZ C ISZ C ISZ D ISZ D ISZ ST JMP FOUR TAD N CLL RAR RTR DCA I ASEC IAC CLL RTL DCA I AINC TAD FWT DCA I RETURN JMP I NXTPG ASEC, SEC AINC, INC RETURN, RETRN NXTPG, 400 *400 DCA CNT TAD M2 DCA MPAR YER, TAD DT DCA A TAD A DCA C TAD A TAD INC DCA B TAD B DCA D TAD EMT DCA E TAD E DCA F BAS, TAD SEC CIA DCA ST TAD MPAR DCA TALSUB TAD SC SNA CLA JMP .+3 TAD KDIV JMP .+3 TAD KNOP ISZ SCALE DCA S+4 DCA SC CLL EIGHT, TAD I A SPA CML DCA H TAD I B JMS S TAD I D SZA CIA SPA CML DCA H TAD I C JMS S TAD I B SZA CIA SPA CML DCA H TAD I A JMS S TAD I C SPA CML DCA H TAD I D JMS S ISZ TALSUB JMP EIGHT ISZ ST JMP .+2 JMP INT TAD A TAD INC DCA A TAD A DCA C TAD B TAD INC DCA B TAD B DCA D TAD MPAR DCA TALSUB JMP EIGHT INT, TAD SEC AND M2 SNA CLA JMP OUT TAD SEC CLL RAR DCA SEC TAD INC CLL RAL DCA INC TAD MPAR CLL RAL DCA MPAR ISZ CNT TAD CNT AND P1 SNA CLA JMP YER TAD EMT DCA A TAD A DCA C TAD A TAD INC DCA B TAD B DCA D TAD DT DCA E TAD E DCA F JMP BAS OUT, TAD CNT AND P1 SNA CLA JMP .+3 TAD DT JMP .+2 TAD EMT DCA ST JMP I RETRN CNT, 0 INC, 0 MPAR, 0 SEC, 0 RETRN, 0 TALSUB, 0 M2, -2 P1, 1 $