FIXME:
Tabulka 13.1. Registry
BR | Base Register |
HL | Heap Lower bound register |
SX | Stack Extent |
FP | Frame Pointer |
PC | Program Counter |
SP | Stack Pointer |
Tabulka 13.2. Tabulka instrukcí
# | popis | |
---|---|---|
0 | NOP | no operation, also word filler |
1 | BZ | branch if false: pop 2 words, ad the top word to PC if the next=0 |
2 | CALL | push PC; load PC from subroutin in popped word |
3 | SYS | software interrupt |
4 | ZERO | push 0 |
5 | ONE | push 1 |
6 | TWO | push 2 |
7 | THREE | push 3 |
8 | MTWO | push -2 |
9 | MONE | push -1 |
10 | PSH | 10-bit constant in instruction word |
11 | PUSH | 32-bit constant (next word) |
12 | LDF | replace top of stack from FP-based word it addresses |
13 | STF | pop 2 words, top is FP-based address, next is word to store |
14 | GRF | globalize frame ref, then tag as GL-relative |
15 | NEG | negate top of stack |
16 | AND | |
17 | ADD | |
18 | MPY | |
19 | DIV | |
20 | EQU | |
21 | LSS | |
22 | ROT3 | |
23 | SWAP | |
24 | POP | |
25 | DUPE | |
26 | RNG | |
27 | GLOB | |
28 | MZERO | push 0x80000000 |
29 | SOS | |
30 | SHFT | |
31 | ESC |
# | popis | |
---|---|---|
0 | ERRZ | |
1 | EXIT | |
2 | COCALL | |
3 | ENTER | |
4 | SIGNAL | |
5 | WAIT | |
6 | reserved for future use | |
7 | reserved for future use | |
8 | DEBUG | |
9 | COPY | |
10 | BYCPY | |
11 | reserved for future use | |
12 | LDD | |
13 | STD | |
14 | reserved for future use | |
15 | FNEG | |
16 | ||
17 | FADD | |
18 | FMPY | |
19 | FDIV | |
20 | FEQU | |
21 | FLSS | |
22 | FLEQ | |
23 | BES | |
24 | reserved for future use | |
25 | reserved for future use | |
26 | reserved for future use | |
27 | reserved for future use | |
28 | pSP | push SP-BR, from the value SP was before push |
29 | pPC | push PC-BR |
30 | pFP | push FP-BR |
31 | pBR | push BR |