命令動作

命令符に対応した動作を決めます。



算術論理演算器を使う命令

算術論理演算器の出力で汎用レジスタを変更する1 符 だけの命令です。

ADD, SUB, AND, OR, XOR, NOT, SHU, SHD


汎用レジスタの転送命令

汎用レジスタと他のレジスタ間の転送をする 1 符の 命令です。

MOVR, MOVRX, MOVRY, MOVXR, MOVYR


汎用レジスタからメモリやポート、メモリやポートか ら汎用レジスタへ転送する 1 符の命令です。

MOVMR, MOVRM, MOVPR, MOVRP


分岐命令

分岐先の16桁の番地の指定に 2 符を使う計 3 符の命 令です。

JMP, JMPC, JMPZ


分岐先の16桁の番地の指定に 分岐レジスタ 使う 1 符の命令です。

JMPR, JMPRC, JMPRZ


分岐レジスタ設定命令

設定分岐先の16桁の番地の指定に 2 符を使う計 3 符 の命令です。

MOVJ

呼び出し、戻り命令

呼び出し先の16桁の番地の指定に 2 符を使う計 3 符 の命令です。
スタックポインタの示す番地のメモリに現在の命令ポ インタを書き込んでスタックポインタを 2 減らしま す。

CALL


呼び出し先から戻る 1 符の命令です。
スタックポインタの示す番地のメモリから値を読み出 し、命令ポインタに書き込んでスタックポインタを 2 増やします。

RET


スタック命令

スタックにレジスタを転送する、レジスタの指定に 1 符を使う計 2 符の命令です。
スタックポインタの示す番地にレジスタ値を書き込ん で 8 桁レジスタなら スタックポインタを 1 減らし ます、 16 桁レジスタなら スタックポインタを 2 減 らします。 16 桁の場合は下位 8 桁から上位 8 桁と書き込みま す。

PUSH


レジスタにスタックを転送する、レジスタの指定に 1 符を使う計 2 符の命令です。
スタックポインタの示す番地からレジスタ値を読み出 して 8 桁レジスタなら スタックポインタを 1 増や します、 16 桁レジスタなら スタックポインタを 2 増やします。 16 桁の場合は上位 8 桁から下位 8 桁と読み出しま す。

POP


割り込み制御命令

割り込みを有効にする 1 符の命令です。

EI


割り込みを無効にする 1 符の命令です。

DI


レジスタ増減命令

指定したレジスタを 1 増やします、レジスタの指定 に 1 符を使う計 2 符の命令です。

INC


指定したレジスタを 1 減らします、レジスタの指定 に 1 符を使う計 2 符の命令です。

DEC








先頭