我需要检查用户输入(负整数)是否在[-200,-100]或[-50,-1]之间的两个范围内。
UPPER = -100
LOWER = -200
UPPER2 = -1
LOWER2 = -50
getData:
mov eax, numCount
add eax, 1
mov numCount, eax
mov edx, OFFSET thirdNumPrompt
call WriteString
call ReadInt
mov userNum, eax
cmp eax, LOWER
jl numAddition
cmp eax, UPPER2
jg numAddition
add eax, total
mov total,eax
loop getData
字符串
我现在有这个,它只是检查整数是否在-200和-1之间,但我想排除-51和-99之间的整数。我怎么做呢?numAddition是程序的下一步,我希望它在用户输入超出范围的数字时运行。
1条答案
按热度按时间t8e9dugd1#
我现在有这个,它只是检查整数是否在-200和-1之间,但我想排除-51和-99之间的整数,我该怎么做呢?
解决方案一
循环在第一个超出范围的数字处结束:
字符串
方案二
循环一直运行到最后,但超出范围的数字会被不同地处理:
型
用户输入(负数整数)
如果你能绝对确定这个数是负数,那么下一个版本就用3来代替4个
cmp
,这样做的原因是UPPER 2 =-1。方案三
循环在第一个超出范围的数字处结束:
型
方案四
循环一直运行到最后,但超出范围的数字会被不同地处理:
型