機能 | 書式 | 動作内容 | フラグレジスタの変化 |
プログラム開始 | START [実行開始番地] | プログラムの開始を示す.プログラムの最初に,必ず書かなくてはならない. | |
プログラム終了 | END | プログラムの終わりを示す.ラベルは使えない.プログラムの最後に,必ず書かなくて はならない. | |
定数格納 | DC n | 10進定数をラベルのアドレスに格納 | |
DC #h | 16進定数をラベルのアドレスに格納 | ||
DC '文字列' | 文字列をラベルのアドレスから格納 | ||
DC ラベル名 | ラベル名が示すアドレスを格納 | ||
領域の確保 | DS n | ラベル名で示すアドレスからn語領域を確保 |
注意
機能 | 書式 | 動作内容 | フラグレジスタの変化 | ||||||||||||
ロード | LD r1,r2 | レジスタr2の値をレジスタr1にコピー |
|
||||||||||||
LD r,adr[,x] |
アドレスadr[,x]の主記憶の内容をレジスタrにコピー |
||||||||||||||
ストア | ST r,adr[,x] | レジスタrの内容を主記憶装置のアドレスadr[,x]にコピーする | 変化なし | ||||||||||||
ロードアドレス | LAD r,adr[,x] | 主記憶装置のアドレス値adr[,x]をレジスタrにコピーする. | 変化なし |
機能 | 書式 | 動作内容 | フラグレジスタの変化 | ||||||||||||||
算術加算 | ADDA r1,r2 |
レジスタr1とr2の符号付き加算
r1 r1+r2 |
|
||||||||||||||
ADDA r,adr[,x] |
レジスタrと主記憶装置(アドレスadr[,x])の内容を符号付加算
r r+adr[,x]の内容 |
||||||||||||||||
算術減算 | SUBA r1,r2 |
レジスタr1とr2の符号付き減算
r1 r1-r2 |
|||||||||||||||
SUBA r,adr[,x] |
レジスタrと主記憶装置(アドレスadr[,x])の内容を符号付減算
r r-adr[,x]の内容 |
||||||||||||||||
論理加算 | ADDL r1,r2 |
レジスタr1とr2の符号無し加算
r1 r1+r2 |
|
||||||||||||||
ADDL r,adr[,x] |
レジスタrと主記憶装置(アドレスadr[,x])の内容を符号無し加算
r r+adr[,x]の内容 |
||||||||||||||||
論理減算 | SUBL r1,r2 |
レジスタr1とr2の符号無し減算
r1 r1-r2 |
|||||||||||||||
SUBL r,adr[,x] |
レジスタrと主記憶装置(アドレスadr[,x])の内容を符号無し減算
r r-adr[,x]の内容 |
||||||||||||||||
論理積 | AND r1,r2 | レジスタr1とr2のビット毎の論理積を計算.結果はr1に格納. |
|
||||||||||||||
AND r,adr[,x] | レジスタrと主記憶装置(アドレスadr[,x])の内容のビット毎の論理積を計算.結果は r1に格納. | ||||||||||||||||
論理和 | OR r1,r2 | レジスタr1とr2のビット毎の論理和を計算.結果はr1に格納. | |||||||||||||||
OR r,adr[,x] | レジスタrと主記憶装置(アドレスadr[,x])の内容のビット毎の論理和を計算.結果は r1に格納. | ||||||||||||||||
排他的論理和 | XOR r1,r2 | レジスタr1とr2のビット毎の排他的論理和を計算.結果はr1に格納. | |||||||||||||||
XOR r,adr[,x] | レジスタrと主記憶装置(アドレスadr[,x])の内容のビット毎の排他的論理和を計算.結果は r1に格納. |
機能 | 書式 | 動作内容 | フラグレジスタの変化 | ||||||||||||||||||
算術比較 | CPA r1,r2 | レジスタr1とr2を符号付き整数として比較を行う.比較の結果は,FRに設定. |
|
||||||||||||||||||
CPA r,adr[,x] | レジスタrと主記憶装置(アドレスadr[,x])を符号付き整数として比較.比較の結果は,FRに設定. | ||||||||||||||||||||
論理比較 | CPL r1,r2 | レジスタr1とr2を符号無し整数として比較.比較の結果は,FRに設定. | |||||||||||||||||||
CPL r,adr[,x] | レジスタrと主記憶装置(アドレスadr[,x])を符号無し整数として比較.比較の結果は,FRに設定. | ||||||||||||||||||||
機能 | 書式 | 動作内容 | フラグレジスタの変化 | ||||||||||
算術左シフト | SLA r,adr[,x] | レジスタrの内容を符号ビットを除き,adr[,x]の番地分,各ビットを左へシフト.空いたビットには0が入る. |
|
||||||||||
算術右シフト | SRA r,adr[,x] | レジスタrの内容を符号ビットを除き,adr[,x]の番地分,各ビットを右へシ フト.空いたビットには符号ビットと同じ値が入る. | |||||||||||
論理左シフト | SLL r,adr[,x] | レジスタrの内容を,adr[,x]の番地分,各ビットを左へシ フト.空いたビットには0が入る. | |||||||||||
論理右シフト | SRL r,adr[,x] | レジスタrの内容を,adr[,x]の番地分,各ビットを左へシ フト.空いたビットには0が入る. |
機能 | 書式 | 動作内容 | フラグレジスタの変化 |
正分岐 | JPL adr[,x] | フラグレジスタのSFとZFの両方が0の時(比較の結果,正),adr[,x]のアドレスへ分岐(実行が移動)する. | 変化無し |
負分岐 | JMI adr[,x] | フラグレジスタのSFが1の時(比較の結果,負),adr[,x]のアドレスへ分岐(実行が移動)する. | |
非零分岐 | JNZ adr[,x] | フラグレジスタのZFが0の時(比較の結果,等しくない),adr[,x]のアドレスへ分岐(実行が移動)する. | |
零分岐 | JZE adr[,x] | フラグレジスタのZFが1の時(比較の結果,等しい),adr[,x]のアドレスへ分岐(実行が移動)する. | |
オーバーフロー分岐 | JOV adr[,x] | フラグレジスタのOFが1の時(オーバーフロー),adr[,x]のアドレスへ分岐(実行が移動)する. | |
無条件分岐 | JUMP adr[,x] | 無条件に,adr[,x]のアドレスへ分岐(実行が移動)する. |
機能 | 書式 | 動作内容 | フラグレジスタの変化 |
プッシュ | PUSH adr[,x] | スタック領域に,adr[,x]のアドレスを格納する. | 変化無し |
ポップ | POP r | スタック領域からデータを取りだし,レジスタrに格納 |
機能 | 書式 | 動作内容 | フラグレジスタの変化 |
コール | CALL adr[,x] | サブルーチンを呼び出す.adr[,x]に実行が移る. | 変化無し |
リターン | RET | サブルーチンから呼び出し元のルーチンへ実行が移る. |
機能 | 書式 | 動作内容 | フラグレジスタの変化 |
スーパーバイザーコール | SVC adr[,x] | OSの機能を呼び出す.マクロ命令のINやOUTで使われている. | 不定.OSに依存する. |
ノーオペレーション | NOP | なにも実行されない命令. | 変化しない. |
機能 | 書式 | 動作内容 | フラグレジスタの変化 |
入力命令 | IN ラベル1,ラベル2 | 入力領域(ラベル1)に入力装置から文字データを入れる.入力文字長は,ラベル2に入る. | 不定.OSに依存 |
出力命令 | OUT ラベル1,ラベル2 | 出力領域(ラベル1)の文字データ,ラベル2が示す数だけを出力装置に送る. | 不定.OSに依存 |
レジスターの待避 | RPUSH | 汎用レジスター内容を,GR1 GR7の順序でスタック領域に格納. | 不定.OSに依存 |
レジスターの復元 | RPOP | スタック領域の内容を,GR7 GR1の順序で汎用レジスタに格納. | 不定.OSに依存 |