2 ;;; 32ビットの値は、連続する2語の領域に格納
3 ;;; 入力 GR1:数値1の先頭アドレス GR2:数値2の先頭アドレス
8 LD GR3,LEN ; GR3:語を表すインデックス 初期化
10 LOOP AND GR3,GR3 ; ループ先頭。(GR3 = 0)の場合は、ループ脱出
12 LD GR1,GR3 ; GR1 <- (A + GR3)の値
15 LD GR2,GR3 ; GR2 <- (B + GR3)の値
18 ADDL GR1,GR2 ; GR1 <- GR1 + GR2
19 ST GR1,C,GR3 ; (C + GR3) <- GR1(フラグ不変)
20 LAD GR3,-1,GR3 ; GR3 <- GR3 - 1(フラグ不変)
21 JOV CRRY ; オーバーフロー時は、CRRYへジャンプ
22 XOR GR1,GR1 ; GR1 <- 0
23 JUMP LOOP ; ループ先頭へジャンプ
24 CRRY AND GR3,GR3 ; 最上位の語でオーバーフローした場合
28 OV ADDL GR1,=#FFFF ; 強制的にオーバーフロー発生
29 FIN LAD GR0,C ; GR3 <- C