标签: assembly
我需要检查char是否是大写字母。 现在我知道我需要先cmp al, "A",如果高于或等于,我需要cmp al, "Z"然后如果它小于或等于,那么它是一个大写字母。 知道如何进行两次比较而不必在中间跳转标签吗?
cmp al, "A"
cmp al, "Z"
答案 0 :(得分:4)
减去'A',然后与'Z'-'A'进行无符号比较。
'A'
'Z'-'A'
sub al, 'A' cmp al, 'Z'-'A' jbe uppercase
请注意,这当然会破坏al注册。
al