我正在学习LMC,但是在LMC中直到100都找不到奇数之和 例如1 + 3 + 5 + 7 ...等
我确实编写了将两个数字相加的代码
INP //here I wil input 1
STA 99
INP // here I will input 2
ADD 99
OUT
HLT
我不确定如何遍历它,因此我可以获得奇数之和。如果有人可以帮助我?
答案 0 :(得分:0)
如果需要输出1到100之间的奇数,则没有理由要求用户输入:您已经具有解决问题的所有要素,因此无需提出任何要求。
使用LMC,您通常需要定义一些常量数据,例如...数字1。对于本练习,数字2也很容易准备。因此,请为这两个数字保留两个“邮箱”(使用DAT
)。
以下是程序的工作方式:
LOOP LDA CURRENT // start with one
OUT // output less than 100
ADD TWO
STA CURRENT
SUB HUNDRED // compare with 100
BRP EXIT // halt when above
BRA LOOP // and repeat
EXIT HLT
CURRENT DAT 1
TWO DAT 2
HUNDRED DAT 100
<script src="https://cdn.jsdelivr.net/gh/trincot/lmc@v0.7/lmc.js"></script>