繁体   English   中英

如何在 MIPS 中使用 ASCII 表?

[英]How to use the ASCII table in MIPS?

因此,我将用户提供的二进制数转换为其十进制等效值。 我完成了转换没有问题,但现在我正在尝试验证输入。 如果用户输入除10之外的任何字符,我想分支到 label ,它会告诉用户他们的输入不正确。 这就是我现在所拥有的:

ValidateInput:
        lb $s1, userNumber($t8)
        beq $s1, 0, Calculate
        bgt $s1, '1', InvalidInput
        blt $s1, '0', InvalidInput
        addi $t8, $t8, 1
        j ValidateInput

我以为我可以使用他们的 ASCII 表值来验证输入,但它现在认为我尝试的任何输入都不正确。 即使我只输入 1 和 0。 对此的任何帮助将不胜感激。

所以,我认为你的逻辑是正确的。 如果数字大于 1 或小于 0,我们必须跳转到 InvalidInput function。 但我认为 bgt 和 blt 不适用于字符串字符。

您可以尝试按照以下步骤将输入更改为 int:

在 MIPS/Assembler 中将 ASCII 数字字符串转换为 int

然后使用相同的代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM