2 ;;; 出力 GR0: 1から10までの整数をすべて加算した値
7 LOOP ADDL GR0,GR1 ; ループ先頭
8 ADDL GR1,STEP ; GR1 <- GR1 + 公差
9 CPL GR1,LST ; GR1が末項より大きい場合は終了
19 Assemble ../../../../as/sum_10.casl (0)
20 ../../../../as/sum_10.casl: 1:;;; sum_10.casl
21 ../../../../as/sum_10.casl: 2:;;; 出力 GR0: 1から10までの整数をすべて加算した値
22 ../../../../as/sum_10.casl: 3:MAIN START
23 ../../../../as/sum_10.casl: 4: PUSH 0,GR1
24 ../../../../as/sum_10.casl: 5: LAD GR0,0 ; GR0を初期化
25 ../../../../as/sum_10.casl: 6: LD GR1,FST ; GR1に初項を転送
26 ../../../../as/sum_10.casl: 7:LOOP ADDL GR0,GR1 ; ループ先頭
27 ../../../../as/sum_10.casl: 8: ADDL GR1,STEP ; GR1 <- GR1 + 公差
28 ../../../../as/sum_10.casl: 9: CPL GR1,LST ; GR1が末項より大きい場合は終了
29 ../../../../as/sum_10.casl: 10: JPL FIN ; ↓
30 ../../../../as/sum_10.casl: 11: JUMP LOOP ; ループ終端
31 ../../../../as/sum_10.casl: 12:FIN POP GR1
32 ../../../../as/sum_10.casl: 13: RET
33 ../../../../as/sum_10.casl: 14:FST DC 1 ; 初項
34 ../../../../as/sum_10.casl: 15:LST DC 10 ; 末項
35 ../../../../as/sum_10.casl: 16:STEP DC 1 ; 公差
36 ../../../../as/sum_10.casl: 17: END
38 Assemble ../../../../as/sum_10.casl (1)