By Mark Mandriota
organization method | kind size |
---|---|
static stack | 64-bit |
CODE | LOOPF | LF | EF | GF |
---|---|---|---|---|
4-bit | 1-bit | 1-bit | 1-bit | 1-bit |
(total size: 8-bit)
code | name | arg stack | ret stack | synopsis |
---|---|---|---|---|
0x0 | REDO | mm | mm; mm | duplicate last |
0x1 | UNDO | mm | delete last | |
0x2 | HROT | mm; mm | mm; mm | rotate stack up-down |
0x3 | TROT | mm; mm | mm; mm | rotate stack down-up |
0x4 | SWAP | mm; mm | mm; mm | exchange 2 elements |
0x5 | JUMP | mm | jump to code position | |
0x6 | TEST | mm | compare values | |
0x7 | IPUT | mm | get in data | |
0x8 | OPUT | mm | put out data | |
0x9 | LINC | mm; mm | mm | x+y |
0xA | LDEC | mm; mm | mm | x-y |
0xB | QINC | mm; mm | mm | x=x+k |
0xC | QDEC | mm; mm | mm | x=x-k |
0xD | ||||
0xE | ||||
0xF |
If flag is setted, then pops N
from the stack and
repeats instruction while condf≠0 and k<N
code | name | combination | synopsis |
---|---|---|---|
0b100 | LF | LF |
x<y (lower) |
0b011 | NLF | GF ; EF |
x≥y (not lower) |
0b010 | EF | EF |
x=y (equal) |
0b101 | NEF | LF ; GF |
x≠y (not equal) |
0b001 | GF | GF |
x>y (greater) |
0b110 | NGF | LF ; EF |
x≤y (not greater) |
0b111 | AF | LF ; GF ; EF |
1 (always) |
0b000 | AF | 1 (always) |