download PDF (32MB)
download PDF (32MB)
download PDF (32MB)
- TAGS
- download
- perlmeister.com
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
- ou/npu/citiLiu ljvu isuiuui<br />
0001 32807 FORTH<br />
0002 32807 WORD 'NDUP' ( n l . . . n N N - > n l . . . n N<br />
0002 32807 2E723 C O N ( 5 ) # 3 2 7 E 2 nl . nN )<br />
0002 3280C 48 CON(2) #80 + 1304<br />
0002 3280E E44455 NIBASC 'NDU f<br />
0002 32814 OD C O N ( 2 ) # 8 0 + -p.<br />
0002 32816 B1823 C O N ( 5 ) * + 5 ■<br />
0003 328 IB 143 A=DAT1 A A: =N<br />
0004 328 IE 100 R0 = A R0:=N, store!<br />
0005 32821 D6 C = A A C: =N<br />
0006 32823 C6 C = C + C A C:=2*N<br />
0007 32825 C6 C = C + C A C:=4*N<br />
0008 32827 C2 C = C + A A C:=5*N<br />
0009 32829 109 R1=C Rl:=5*N, store!<br />
0010 3282C 133 ADlEX A : = D l : = R I G H T<br />
0011 3282F 102 R2 = A R2:=RIGHT, store!<br />
0012 32832 CA A = A + C A A : = D 1 + 5 * N : = L E F T<br />
0013 32834 7230 GOSUB NDUP3 C: =nl<br />
0014 32838 145 NDUP1 DAT1=C A DATI:=nl<br />
0015 3283B 128 CROEX C:=N, recal 1 !<br />
0016 3283E CE C=C-1 A C:=N:=N-1<br />
0017 32840 8AE ?c#o A end?<br />
0018 32843 40 GOYES NDUP2 no, continue!<br />
0019 32845 03 RTNCC end!<br />
0020 32847 128 NDUP2 CROEX R0:=N:=N-1, store!<br />
0021 3284A 113 A = R3 A:=LEFT, recall!<br />
0022 3284D 131 D1=A Dl:=LEFT<br />
0023 32850 1C4 D1=D1- 5 Dl:=LEFT:=LEFT'<br />
0024 32853 133 AD1EX A:=LEFT<br />
0025 32856 7010 GOSUB NDUP3 C: -nl<br />
0026 3285A 1C4 D1=D1- 5 Dl :=RIGHT:=RIGHT'<br />
0027 3285D 133 ADlEX A:=RIGHT<br />
0028 32860 102 R2 = A R2:=RIGHT, Store!<br />
0029 32863 133 ADlEX Dl :=RIGHT<br />
0030 32866 61DF GOTO NDUP1<br />
0031 3286A 103 NDUP3 R3 = A R3:=LEFT, store!<br />
0032 3286D 133 ADlEX Dl:=LEFT<br />
0033 32870 147 C=DAT1 A C: =nl<br />
0034 32873 112 A = R2 A:=RIGHT, recall!<br />
0035 32876 131 D1=A Dl : =RIGHT<br />
0036 32879 01 RTN return!<br />
0037 3287B END<br />
PAGE 002<br />
Forth Assembler<br />
FiLeNd<br />
NDUP 1<br />
NDUP2<br />
NDUP3<br />
3287B<br />
32838<br />
32847<br />
3286A<br />
SOURCE : NDUP<br />
OBJECT : FORTHRAM<br />
LISTING : N<br />
D AT E : 0 1 : 1 0 : 4 7 o n 8 7 / 0 2 / 2 6<br />
ERRORS : 000<br />
xxxx SYMBOL TABLE xxxx<br />
NDUP<br />
Das FORTH-Wort "NDUP" ist eine Verallgemeinerung<br />
der im HP-71 FORTH Assembler<br />
vorkompilierten Worter "DUP" und "2DUP",<br />
also einer Erweiterung von 1 bzw. 2 auf N Terme.<br />
Anwenden laBt sich das Wort z.B. bei Rekursionen.<br />
Die Funktionsweise ist hoffentlich<br />
aus dem implementierten Kommentar heraus<br />
-hinreichend ersichtlich. Nachstehend noch 2<br />
Beispiele:<br />
1)21 34 65 78 4 NDUP .S ENDLINE<br />
78 65 34 21 78 65 34 21 OK {8}<br />
2) 3567 37 2 NDUP .S ENDLINE<br />
37 3567 37 3567 OK {4}<br />
Dipl. Ing. Georg Urbanski (2064)<br />
Berliner Str. 43<br />
6101 Messel<br />
^06158/1217<br />
87.3.27