[英]How to use the ASCII table in MIPS?
因此,我将用户提供的二进制数转换为其十进制等效值。 我完成了转换没有问题,但现在我正在尝试验证输入。 如果用户输入除1
或0
之外的任何字符,我想分支到 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.