LC-3:输入值的条件声明

时间:2018-04-23 18:22:15

标签: assembly conditional lc3

我有一个问题,我应该接受用户输入(作为TRAP x23),但只有某些用户输入。基本上,我的问题看起来像伪:

if method == "+" or method == "-" or method == "*" or method == "/" then

我还需要考虑某人输入非数字字符的时间,我不知道从哪里开始。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

在LC-3中,您只能与0进行比较。您可以测试寄存器中保存的最后一个值是负数,零还是正数。因此,您需要根据与0的比较重写这些语句,并且if语句需要分解为2。

更容易翻译的伪代码版本如下所示

if value-5 > 0 goto PRINT_ERROR if value < 0 goto PRINT_ERROR ; print yes

如果任何if语句的计算结果为true,则更容易转换为BR语句,然后跳转到带有处理打印错误消息的代码的标签。如果没有拍摄,那么你打印是的,你可以做任何你想做的事。