Next: Step count, Previous: Register specify, Up: Register and memory [Contents]
grepとtailを組み合わせれば、プログラム終了時の値を表示できます。
addl.caslでプログラム終了時のGR1の値を確認するには、次のようにします。
$ casl2 -t addl.casl | grep 'GR1:' | tail -1 #0006: GR1: 5 = #0005 = 0000000000000101
sum_10.caslは、1から10までの整数の和を求め、GR2に格納してからメモリにストア(書き込み)します。
$ cat sum_10.casl
;;; sum_10.casl
;;; 1から10までの整数をすべて加算した値をメモリーに格納する
MAIN START
XOR GR2,GR2 ; GR2を初期化
LD GR1,FST ; GR1に初項をメモリーから転送
LOOP ADDL GR2,GR1 ; ループ先頭。GR2 <- GR2 + GR1
ADDL GR1,STEP ; GR1 <- GR1 + 公差
CPL GR1,LST ; GR1が末項より大きい場合は終了
JPL FIN ; ↓
JUMP LOOP ; ループ終端
FIN ST GR2,RST ; GR2の結果をメモリーに転送
RET
FST DC 1 ; 初項
LST DC 10 ; 末項
STEP DC 1 ; 公差
RST DS 1 ; 結果
END
sum_10.caslでプログラム終了時のGR2の値を確認するには、次のようにします。
$ casl2 -t sum_10.casl | grep 'GR2:' | tail -1 #000E: GR2: 55 = #0037 = 0000000000110111 = '7'