; ハノイの塔を解くプログラム
MAIN START
LD GR0,N
LD GR1,A
LD GR2,B
LD GR3,C
CALL HANOI
RET
HANOI CPA GR0,=1
JZE DISP
SUBA GR0,=1
PUSH 0,GR2
PUSH 0,GR3
POP GR2
POP GR3
CALL HANOI
PUSH 0,GR2
PUSH 0,GR3
POP GR2
POP GR3
CALL DISP
PUSH 0,GR1
PUSH 0,GR2
POP GR1
POP GR2
CALL HANOI
PUSH 0,GR1
PUSH 0,GR2
POP GR1
POP GR2
ADDA GR0,=1
RET
DISP ST GR1,MSG1
ST GR3,MSG2
OUT MSG,LNG
RET
N DC 3 ; 輪の総数
LNG DC 11 ; メッセージの長さ
A DC 'A'
B DC 'B'
C DC 'C'
MSG DC 'from '
MSG1 DS 1
DC ' to '
MSG2 DS 1
END