LC3 汇编和输入数字
LC3 Assembly Sum Input Numbers
我正在使用 LC3 程序集对十个数字求和一切正常我将其作为常量填充但现在我正在使用输入 IN 从用户那里获取输入并在程序完成 1 十次时对这些输入求和输入的是 490。这是我的代码:
.ORIG x9375
AND R2, R2, #0
LD R3, COUNTER
REPEAT ; Loop
IN ; Read a Value
ADD R2, R2, R0 ; Sum the entered value
ADD R3, R3, #-1 ; Decrement The loop
Brp REPEAT
HALT
ST
COUNTER .FILL x000A
.END
看起来您将 1
的 ASCII 值(恰好是 49)相加 10 次,这将解释您的结果 490。所以你需要将它转换成它的数值(幸运的是,这可以通过减去 48 来完成,至少对于个位数是这样)。
我正在使用 LC3 程序集对十个数字求和一切正常我将其作为常量填充但现在我正在使用输入 IN 从用户那里获取输入并在程序完成 1 十次时对这些输入求和输入的是 490。这是我的代码:
.ORIG x9375
AND R2, R2, #0
LD R3, COUNTER
REPEAT ; Loop
IN ; Read a Value
ADD R2, R2, R0 ; Sum the entered value
ADD R3, R3, #-1 ; Decrement The loop
Brp REPEAT
HALT
ST
COUNTER .FILL x000A
.END
看起来您将 1
的 ASCII 值(恰好是 49)相加 10 次,这将解释您的结果 490。所以你需要将它转换成它的数值(幸运的是,这可以通过减去 48 来完成,至少对于个位数是这样)。