1 ;;; sum_10.casl 2 ;;; 1から10までの整数をすべて加算した値をメモリーに格納する 3 MAIN START #20 4 PUSH 0,GR1 5 PUSH 0,GR2 6 XOR GR2,GR2 ; GR2を初期化 7 LD GR1,FST ; GR1に初項をメモリーから転送 8 LOOP ADDL GR2,GR1 ; ループ先頭。GR2 <- GR2 + GR1 9 ADDL GR1,STEP ; GR1 <- GR1 + 公差 10 CPL GR1,LST ; GR1が末項より大きい場合は終了 11 JPL FIN ; ↓ 12 JUMP LOOP ; ループ終端 13 FIN ST GR2,RST ; GR2の結果をメモリーに転送 14 POP GR2 15 POP GR1 16 RET 17 FST DC 1 ; 初項 18 LST DC 10 ; 末項 19 STEP DC 1 ; 公差 20 RST DS 1 ; 結果 21 END