MAIN START
LD GR0,X ; GR0 ← X(被乗数)
LD GR2,Y ; GR2 ← Y(乗数)
CALL MULT
RET
X DC 3
Y DC 5
RET
MULT START ; シフトによる乗算
RPUSH
LD GR1,GR0 ; 被乗数を GR1 に保持
LD GR0,=0 ; 乗算結果の初期化
LD GR3,=15
LD GR2,GR2
LP2 JZE FIN2
JPL CONT
LD GR4,GR1
SLL GR4,0,GR3
ADDL GR0,GR4
CONT LAD GR3,-1,GR3
SLL GR2,1
JUMP LP2
FIN2 RPOP
RET
END
11x101=11x100+11x1