| CASL U 命令一覧 |
|---|
| アセンブラ命令 | ||
| プログラム開始 | START [実行開始番地] | プログラムの開始番地を示す.省略不可. |
| プログラム終了 | END | プログラムの終了を示す.省略不可. |
| 定数配置 | DC n | nを10進定数と解釈し,1語に配置 |
| DC #h | hを16進定数と解釈し,1語に配置 | |
| DC '文字列' | 文字列を1語に配置 | |
| DC ラベル名 | ラベル名が示すアドレスを1語に配置 | |
| 領域の確保 | DS n | n語分の領域を確保 |
| 機械命令 | ||||
| ロード | LD gr, adr [ ,xr ] | |||
| LD gr1, gr2 | ||||
| ストア | ST gr, adr [ ,xr ] | |||
| ロードアドレス | LAD gr, val [ ,xr ] | 実効番地そのものをLoad | ||
| 算術加算 | ADDA gr, adr [ ,xr ] | |||
| ADDA gr1, gr2 | ||||
| 算術減算 | SUBA gr, adr [ ,xr ] | |||
| SUBA gr1, gr2 | ||||
| 論理加算 | ADDL gr, adr [ ,xr ] | |||
| ADDL gr1, gr2 | ||||
| 論理減算 | SUBL gr, adr [ ,xr ] | |||
| SUBL gr1, gr2 | ||||
| 論理積 | AND gr, adr [ ,xr ] | |||
| AND gr1, gr2 | ||||
| 論理和 | OR gr, adr [ ,xr ] | |||
| OR gr1, gr2 | ||||
| 排他的論理和 | XOR gr, adr [ ,xr ] | |||
| XOR gr1, gr2 | ||||
| 算術比較 | CPA gr, adr [ ,xr ] | |||
| CPA gr1, gr2 | ||||
| 論理比較 | CPL gr, adr [ ,xr ] | |||
| CPL gr1, gr2 | ||||
| 算術左シフト | SLA gr, val [ ,xr ] | シフト量=実効番地 | ||
| 算術右シフト | SRA gr, val [ ,xr ] | 同上 | ||
| 論理左シフト | SLL gr, val [ ,xr ] | 同上 | ||
| 論理右シフト | SRL gr, val [ ,xr ] | 同上 | ||
| 無条件分岐 | JUMP adr [ ,xr ] | 常に分岐 | ||
| 正分岐 | JPL adr [ ,xr ] | SF=ZF=0の時に分岐 | ||
| 負分岐 | JMI adr [ ,xr ] | SF=1の時に分岐 | ||
| 非零分岐 | JNZ adr [ ,xr ] | ZF=0の時に分岐 | ||
| 零分岐 | JZE adr [ ,xr ] | ZF=1の時に分岐 | ||
| オーバーフロー分岐 | JOV adr [ ,xr ] | OF=1の時に分岐 | ||
| プッシュ | PUSH val [ ,xr ] | GR0はPUSH出来ない | ||
| ポップ | POP gr | GR0にもPOP出来る | ||
| コール | CALL adr [ ,xr ] | |||
| リターン | RET | |||
| スーパーバイザーコール | SVC adr [ ,xr ] | OSに依存 | ||
| No operation | NOP | 何も実行されない | ||
| マクロ命令 | ||||
| 入力命令 | IN s, t | 1レコードの文字データを読み込み,文字を1語に1文字(第0〜第7ビット)ずつラベル s から始まる256語の領域に格納する.各語の空いたビット(第8〜第15ビット)には 0 が 入れられる.ラベルtの1語領域には,入力された文字数が格納される. | 不定(OSに依存) | |
| 出力命令 | OUT s, t | 出力すべき文字データが1語に1文字(第0〜第7ビット)ずつ格納されたラベル s から始まる領域の文字データを,ラベルtの1語領域に格納された値分だけ出力する. これらの文字データは1レコードとして出力される. | 不定(OSに依存) | |