inl.caslのリファクタリング
[YACASL2.git] / as / casl2lib / mull0.casl
1 ;GR1の値とGR2の値の積をGR0に格納
2 MULL    START
3         RPUSH
4         LAD     GR3,0           ; インデックス
5         LAD     GR0,0           ; 積
6 MLOOP   CPA     GR2,GR3         ; ループ先頭。(GR2 = GR3)の場合、ループ脱出
7         JZE     MFIN            ; ↓
8         ADDL    GR0,GR1         ; GR0 <- GR0 + GR1
9         JOV     MFIN            ; オーバーフローした場合、ループ脱出
10         LAD     GR3,1,GR3       ; GR3 <- GR3 + 1
11         JUMP    MLOOP           ; ループ終端
12 MFIN    RPOP
13         RET
14         END