トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

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秒