Assembly LC3总成和输入编号

Assembly LC3总成和输入编号,assembly,lc3,Assembly,Lc3,我正在使用LC3汇编对十个数字求和一切都很好,我将其作为常数填充,但现在我正在使用input IN从用户处获取输入,并在程序完成时对这些输入求和,输入10次,得到490。这是我的密码: .ORIG x9375 AND R2, R2, #0 LD R3, COUNTER REPEAT ; Loop IN ; Read a Value ADD R2, R2, R0 ; Sum the entered value

我正在使用LC3汇编对十个数字求和一切都很好,我将其作为常数填充,但现在我正在使用input IN从用户处获取输入,并在程序完成时对这些输入求和,输入10次,得到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
(恰好是49)的ASCII值添加10次,这将解释490的结果。因此,您需要将其转换为数值(幸运的是,可以通过减去48来实现,至少对于一位数是如此)。

这是我的问题,有没有办法将此值转换为十进制?如果我不总是输入1,那么如果我不总是输入1呢。ascii中的2是50。然后从50中减去48将得到2。这不是你想要的吗?谢谢伙计们我对价值观有点困惑