12-07-2016, 11:56 AM
Bonjour
Voici un programme qui simule plusieurs registres Alpha dans un fichier,
SIZA céer le fichier de X (entier) registres et renvoie dans X le nombre de registres xmémoire consommés,
ASTOA copie le registre Alpha dans le registre n° X,
ARCLA copie le registre n° X dans le registre Alpha,
A<> échange le registre Alpha avec le registre n° X
A=? test l'égalité entre le registre Alpha et le registre n° X, renvoie 1 si =, 0 sinon dans X.
CLRA supprime les registres et détruit le fichier.
Les registres commencent à 1, le registre 0 est utilisé pour les échanges et les tests mais peut-être utilisé si besoin.
Le n° du registre Alpha à utiliser doit être mis dans X (entier).
Le fichier nommé XALPHA est le fichier en cours et doit le rester pour que les instructions fonctionnent.
ASTOA,ARCLA et A<> préservent la pile.
A=? préserve Alpha.
Hello
Here is a program that simulates several Alpha registers in a file,
SIZA céer the file of X (integer) registers and returns in X the number of registers xmemory consumed,
ASTOA copies the register Alpha in register No. X,
ARCLA copies the register X in the Alpha register,
A <> exchanges register Alpha with register n ° X
A =? Test the equality between the register Alpha and the register n° X, returns 1 if =, 0 otherwise in X.
CLRA deletes the registers and destroys the file.
Registers start at 1, register 0 is used for exchanges and tests but can be used if needed.
The number of the Alpha register to be used must be set to X (integer).
The file named XALPHA is the current file and must remain so for instructions to work.
ASTOA, ARCLA and A <> preserve the stack.
A =? Preserves Alpha.
214 octets.
Voici un programme qui simule plusieurs registres Alpha dans un fichier,
SIZA céer le fichier de X (entier) registres et renvoie dans X le nombre de registres xmémoire consommés,
ASTOA copie le registre Alpha dans le registre n° X,
ARCLA copie le registre n° X dans le registre Alpha,
A<> échange le registre Alpha avec le registre n° X
A=? test l'égalité entre le registre Alpha et le registre n° X, renvoie 1 si =, 0 sinon dans X.
CLRA supprime les registres et détruit le fichier.
Les registres commencent à 1, le registre 0 est utilisé pour les échanges et les tests mais peut-être utilisé si besoin.
Le n° du registre Alpha à utiliser doit être mis dans X (entier).
Le fichier nommé XALPHA est le fichier en cours et doit le rester pour que les instructions fonctionnent.
ASTOA,ARCLA et A<> préservent la pile.
A=? préserve Alpha.
Hello
Here is a program that simulates several Alpha registers in a file,
SIZA céer the file of X (integer) registers and returns in X the number of registers xmemory consumed,
ASTOA copies the register Alpha in register No. X,
ARCLA copies the register X in the Alpha register,
A <> exchanges register Alpha with register n ° X
A =? Test the equality between the register Alpha and the register n° X, returns 1 if =, 0 otherwise in X.
CLRA deletes the registers and destroys the file.
Registers start at 1, register 0 is used for exchanges and tests but can be used if needed.
The number of the Alpha register to be used must be set to X (integer).
The file named XALPHA is the current file and must remain so for instructions to work.
ASTOA, ARCLA and A <> preserve the stack.
A =? Preserves Alpha.
Code:
01 LBL "SIZA"
02 "XALPHA"
03 1
04 +
05 STO Y
06 3,7
07 *
08 INT
09 1
10 +
11 CRFLAS
12 " "
13 LBL 00
14 APPREC
15 DSE Y
16 GTO 00
17 CLA
18 RTN
19 LBL "ASTOA"
20 SEEKPT
21 DELREC
22 INSREC
23 RTN
24 LBL "ARCLA"
25 SEEKPT
26 GETREC
27 RTN
28 LBL "A<>"
29 X<>L
30 CLX
31 SEEKPT
32 DELREC
33 INSREC
34 X<>L
35 SEEKPT
36 GETREC
37 DELREC
38 X<>L
39 SEEKPT
40 INSREC
41 X<>L
42 SIGN
43 SEEKPT
44 GETREC
45 DELREC
46 X<>L
47 SF 25
48 SEEKPT
49 FC?C 25
50 APPREC
51 INSREC
52 X<>L
53 CLX
54 SEEKPT
55 GETREC
56 X<>L
57 RTN
58 LBL "A=?"
59 STO L
60 SEEKPT
61 POSFL
62 X≠Y?
63 GTO 02
64 ALENG
65 X<>Y
66 CLX
67 XEQ "ASTOA"
68 X<>L
69 XEQ "ARCLA"
70 X<>Y
71 ALENG
72 X<>L
73 XEQ "ARCLA"
74 X<>L
75 X≠Y?
76 GTO 01
77 -
78 CLX
79 1
80 RTN
81 LBL 01
82 RDN
83 LBL 02
84 CLX
85 RTN
86 LBL "CLRA"
87 "XALPHA"
88 PURFL
89 CLA
90 END