首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MIPS中使用SLT确定有效输入

在MIPS中使用SLT确定有效输入
EN

Stack Overflow用户
提问于 2016-04-20 19:10:02
回答 1查看 284关注 0票数 0

我在学习MIPS装配。我想接受值1,2,3包括在内。要做到这一点,这个逻辑有意义吗?

代码语言:javascript
复制
move  $s0, $v0       # get user input
li    $t0, 1         # minimum accepted
li    $t1, 3         # maximum accepted
slt   $t2, $s0, $t0  # if input < 1, t2 = 1.
beq   $t2, $t0,      # if t2 = 1, bad input
slt   $t2, $t1, $s0  # if 3 < input, t2 = 1
beq   $t2, $t0       # if t2 = 1, bad input
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-20 19:30:50

您缺少要跳转到的标签,使用SLTI可以简化代码

代码语言:javascript
复制
move  $s0, $v0        # get user input
li    $t0, 3          # maximum accepted
slti  $t1, $s0, 1     # t1 = (input < 1) ? 1 : 0
bne   $t1, $zero, bad # if t1 != 0, bad input
slt   $t1, $t0, $s0   # t1 = (3 < input) ? 1 : 0
bne   $t1, $zero, bad # if t2 != 0, bad input
ok:
# Do whatever
bad:
# Do whatever

不过,这逻辑听起来很合理。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36753018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档