| 命令 | 構文 | 説明 |
|---|---|---|
| LOAD | LOAD Rx, 値 | レジスタ Rx に即値を格納 |
| STORE | STORE Rx, addr | Rx の値をメモリ addr に書き込む(0x00〜0x0F) |
| ADD | ADD Rx, Ry | Rx = Rx + Ry(フラグ更新) |
| SUB | SUB Rx, Ry | Rx = Rx − Ry(フラグ更新) |
| MUL | MUL Rx, Ry | Rx = Rx × Ry(8ビット下位) |
| MOV | MOV Rx, Ry | Rx = Ry(コピー) |
| CMP | CMP Rx, Ry | 比較してフラグだけ更新(値変化なし) |
| JMP | JMP label | label へ無条件ジャンプ |
| JEQ | JEQ label | Z=1 なら label へジャンプ |
| JGT | JGT label | N=0 かつ Z=0 なら label へジャンプ |
| OUT | OUT Rx | Rx の値を出力 |
| HALT | HALT | プログラム終了 |
; から行末まで無視されますloop: のように : で終わる行0x00〜0x0F