如何解决如何在MIPS中使用ASCII表?
所以我将用户提供的二进制数转换为其十进制等效值。我毫无问题地完成了转换,但现在我正在尝试验证输入。如果用户输入除 1
或 0
之外的任何字符,我想分支到一个标签,告诉用户他们的输入不正确。这就是我现在所拥有的:
ValidateInput:
lb $s1,userNumber($t8)
beq $s1,Calculate
bgt $s1,'1',InvalidInput
blt $s1,'0',InvalidInput
addi $t8,$t8,1
j ValidateInput
我以为我可以使用它们的 ASCII 表值来验证输入,但现在它认为我尝试的任何输入都不正确。即使我只输入 1 和 0。对此的任何帮助将不胜感激。
解决方法
所以,我认为你的逻辑是正确的。如果数字大于 1 或小于 0,我们必须分支到 InvalidInput 函数。但我认为 bgt 和 blt 不能正常处理字符串字符。
您可以尝试按照以下步骤将输入更改为 int:
Convert String of ASCII digits to int in MIPS/Assembler
然后使用相同的代码
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。