簡體   English   中英

保持輸入 LMC 的數字總數

[英]Keeping a running total of numbers entered LMC

我正在制作一個程序,允許用戶無限期地輸入數字,直到他們輸入“0”。 一旦他們輸入 0 程序應該停止。 但是,我想將輸入的每個數字添加到運行總數中,並在每次用戶輸入新數字時輸出總數。 例如:

輸入 = 2
總計 = 2
輸入 = 2
總計 = 4
輸入 = 3
總計 = 7
輸入 = 0
程序停止

代碼:

START   INP    
        ADD TOTAL
        OUT
        BRA START
        HLT

TOTAL   DAT 000

上面的代碼無限期地接受用戶輸入但輸出單個數字(不保持運行總數)。 我想知道如何保持輸入的所有數字的運行總數,並在用戶在 LMC 中輸入 0 時停止程序。 提前致謝。

您的代碼中只缺少兩件事:

  • 測試輸入是否為零並停止程序。 您可以在輸入后立即使用簡單的BRZ指令執行此操作,然后讓它分支到HLT指令——為此需要一個標簽。

  • 每次計算總和時更新總和。 目前,一旦輸出總和,您就會“忘記”總和,因此在下一個循環中,總和仍將為零。 只需在完成添加后立即添加STA TOTAL

這是一個可運行的代碼段:

 START INP BRZ STOP # stop when user entered 0 ADD TOTAL STA TOTAL # save result, so it accumulates OUT BRA START STOP HLT TOTAL DAT 000 <script src="https://cdn.jsdelivr.net/gh/trincot/lmc@v0.816/lmc.js"></script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM