CASL IIには,次の4個のアセンブラ命令がある.
START | プログラムの先頭を定義 | |
プログラムの実行開始番地を定義 | ||
他のプログラムで参照する入口名を定義 | ||
END | プログラムの終わりを明示 | |
DC | 定数を定義 | |
DS | 領域を確保 |
実行時には,そのビットパターンが主記憶装置に格納されている.ビットパター ンへの変換は,以前の授業で説明したハンドアセンブラーと同じことをする.
CASL IIには,以下の28個の機械語命令(教科書のP.203)があり,そんなに多くない.
LD, ST, LAD | データの移動 | |
ADDA, SUBA, ADDL, SUBL | 加算・減算 | |
AND, OR, XOR | 論理演算 | |
SLA, SRA, SLL, SRL | シフト演算 | |
CPA, CPL | 比較演算 | |
JPL, JMI, JNZ, JZE, JOV, JUMP | 分岐処理 | |
PUSH, POP | スタック操作 | |
CALL, RET | サブルーチンへの移動と戻り | |
SVC, NOP | その他 |
多くの命令から構成されるため,アセンブラーにより変換されるビットパターンは非常に 多くなる.
CASL IIには,以下の4個のマクロ命令がある(教科書のP.203).
IN | 入力装置(キーボード)から,文字データを読み込む | |
OUT | 出力装置(ディスプレイ)に,文字データを書き込む | |
RPUSH | 汎用レジスターの内容を,GR1, GR2, ,GR7の順でスタックに格納 | |
RPOP | スタックの内容をGR7, GR6, , GR1の順で汎用レジスターに格納 |