MINICPUの命令セット
MINICPUの命令セット
TINYCPUの命令セットに,LDとSTが追加.
ニーモニック | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 16進 | 動作 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | HALT | 0 | 0 | 0 | 0 | - | - | - | - | - | - | - | - | - | - | - | 0000 | 停止 |
2 | PUSHI I | 0 | 0 | 0 | 1 | I | I | I | I | I | I | I | I | I | I | I | 1000+I | 即値Iをスタックにプッシュ |
3 | PUSH A | 0 | 0 | 1 | 0 | A | A | A | A | A | A | A | A | A | A | A | 2000+A | A番地の値をスタックにプッシュ |
4 | POP A | 0 | 0 | 1 | 1 | A | A | A | A | A | A | A | A | A | A | A | 3000+A | スタックトップをA番地に格納 |
5 | JMP A | 0 | 1 | 0 | 0 | A | A | A | A | A | A | A | A | A | A | A | 4000+A | A番地に分岐 |
6 | JZ A | 0 | 1 | 0 | 1 | A | A | A | A | A | A | A | A | A | A | A | 5000+A | スタックトップが0ならA番地に分岐 |
7 | JNZ A | 0 | 1 | 1 | 0 | A | A | A | A | A | A | A | A | A | A | A | 6000+A | スタックトップが0でないならA番地に分岐 |
8 | LD | 0 | 1 | 1 | 1 | - | - | - | - | - | - | - | - | - | - | - | 7000 | スタックトップの値を番地としてメモリから読み出しスタックトップに格納 |
9 | ST | 1 | 0 | 0 | 0 | - | - | - | - | - | - | - | - | - | - | - | 8000 | スタックの2番目の値を番地として,スタックトップの値をメモリに書きこみ |
10 | IN | 1 | 1 | 0 | 1 | - | - | - | - | - | - | - | - | - | - | - | D000 | 入力ポートの値をスタックにプッシュ |
11 | OUT | 1 | 1 | 1 | 0 | - | - | - | - | - | - | - | - | - | - | - | E000 | スタックトップを出力バッファに書き込み |
12 | OP f | 1 | 1 | 1 | 1 | - | - | - | - | - | - | f | f | f | f | f | F000+f | スタック上で演算を行い,結果をスタックトップに格納 |
ADD | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 0 | 0 | 0 | F000 | 加算 | |
SUB | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 0 | 0 | 1 | F001 | 減算 | |
MUL | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 0 | 1 | 0 | F002 | 乗算 | |
SHL | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 0 | 1 | 1 | F003 | 左シフト | |
SHR | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 1 | 0 | 0 | F004 | 右シフト | |
BAND | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 1 | 0 | 1 | F005 | ビット毎の論理積 | |
BOR | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 1 | 1 | 0 | F006 | ビット毎の論理和 | |
BXOR | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 0 | 1 | 1 | 1 | F007 | ビット毎の排他的論理和 | |
AND | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 0 | 0 | 0 | F008 | 論理積 | |
OR | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 0 | 0 | 1 | F009 | 論理和 | |
EQ | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 0 | 1 | 0 | F00A | 等しい | |
NE | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 0 | 1 | 1 | F00B | 等しくない | |
GE | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 1 | 0 | 0 | F00C | 大きいか等しい | |
LE | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 1 | 0 | 1 | F00D | 小さいか等しい | |
GT | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 1 | 1 | 0 | F00E | 大きい | |
LT | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 0 | 1 | 1 | 1 | 1 | F00F | 小さい | |
NEG | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 1 | 0 | 0 | 0 | 0 | F010 | 符号反転 | |
BNOT | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 1 | 0 | 0 | 0 | 1 | F011 | ビット毎の反転 | |
NOT | 1 | 1 | 1 | 1 | - | - | - | - | - | - | 1 | 0 | 0 | 1 | 0 | F012 | 論理否定 |
最終更新時間:2008年04月08日 11時04分59秒