1〜5 で学んだことをもとに,プログラムの動作について考えてみましょう.以下のプログラムは,それぞれどのような計算を実行するものでしょうか? なお,命令の入っていない番地にある数字もプログラムの一部として考えるため,一度プログラムを実行して数字が変化した場合再度プログラムを書き込み直す必要があります.
プログラム1
LOOP LDA Z
ADD X
STA Z
LDA Y
SUB ONE
STA Y
BRZ ELOOP
BRA LOOP
ELOOP LDA Z
OUT
HLT
Z DAT 0
X DAT 7
Y DAT 8
ONE DAT 1
プログラム2
LOOP LDA X
SUB Y
STA X
BRP ISPOS
BRA ELOOP
ISPOS LDA Z
ADD ONE
STA Z
BRA LOOP
ELOOP LDA Z
OUT
HLT
Z DAT 0
X DAT 56
Y DAT 8
ONE DAT 1
プログラム3
LOOP LDA F1
STA F2
LDA F0
STA F1
ADD F2
STA F0
OUT
LDA I
SUB ONE
STA I
BRZ ELOOP
BRA LOOP
ELOOP LDA F0
HLT
I DAT 10
ONE DAT 1
F0 DAT 1
F1 DAT 0
F2 DAT 0
プログラム4
LOOP LDA X
SUB Y
BRP POS
HLT
POS LDA ZERO
STA Z
LDA X
STA X1
LOOP1 LDA Z
ADD ONE
STA Z
LDA X1
SUB Y
STA X1
BRZ EQUAL
BRP LOOP1
LDA Y
ADD ONE
STA Y
BRA LOOP
EQUAL LDA Y
OUT
LDA Z
STA X
BRA LOOP
X DAT 18
X1 DAT 0
Y DAT 2
Z DAT 0
ZERO DAT 0
ONE DAT 1