命令の種類 | 典型的なニーモニック | ニーモニックの意味 | 命令の意味 |
コピー(ロード・ストア) | MOV | move | コピー |
LD, LOAD | load | ロード(メモリ等からレジスタへコピー) |
ST, STORE | store | ストア(レジスタからメモリ等へコピー) |
算術 | ADD | add | 加算 |
SUB | subtract | 減算 |
MUL | multiply | 乗算 |
DIV | divide | 除算 |
INC, DEC | increment, decrement | 1足す,1引く |
論理演算・ビット操作 | AND, OR, XOR | and, or, exclusive-or | 論理積・論理和・排他的論理和 |
NOT | not | ビット反転(11111001-->00000110) |
NEG | negate | 符号反転(符号付整数).2の補数.(11111001-->00000111) |
TEST, TST, BTST, | test, bit test | ビットの01をテスト |
SLL, SHL, SHLL | shift logical left | 論理左シフト |
SLR, SHR, SHLR | shift logical right | 論理右シフト |
SAL, SHAL | shift arithmetic left | 算術左シフト |
SAR, SHAR | shift arithmetic right | 算術右シフト(キャリーを含めてシフト) |
ROTL, ROL | rotate left | 左ローテート |
ROTR, ROR | rotate right | 右ローテート |
RCL | rotate through carry left | キャリーを含めて左ローテート |
RCR | rotate through carry right | キャリーを含めて右ローテート |
条件分岐 | BEQ, JE | branch(jump) if equal | 前の結果が0なら分岐.ゼロフラグ=1なら分岐. |
BNE, JNE | branch(jump) if not equal | 前の結果が1ならば分岐.ゼロフラグ=0なら分岐. |
BLT, JL | branch(jump) if less than | 前の結果が0より小さければ分岐 |
BGT, JG | branch(jump) if greater than | 前の結果が0より大きければ分岐 |
BLE, JLE | branch(jump) if less than or equal | 前の結果が0以下なら分岐 |
BGE, JGE | branch(jump) if greater than or equal | 前の結果が0以上なら分岐 |
分岐 | BRA, JMP, J | branch, jump | 分岐,ジャンプ (※branchよりjumpの方が遠いアドレス) |
BSR, JSR, CALL | branch subroutine, jump subroutine, call | サブルーチンへ分岐 (現在の実行アドレス(PC)をスタックに記憶) |
RTS, RET | return from subroutine | サブルーチンから復帰 (スタックから旧PCをPOP) |
BGT, JG | branch(jump) if greater than | 前の結果が0より大きければ分岐 |
BLE, JLE | branch(jump) if less than or equal | 前の結果が0以下なら分岐 |
BGE, JGE | branch(jump) if greater than or equal | 前の結果が0以上なら分岐 |
その他 | NOP | no operation | 何もしない |