Assembly 为什么JB不是';不能做精确的化学机械抛光
在emu8086中,我编写了以下代码Assembly 为什么JB不是';不能做精确的化学机械抛光,assembly,emu8086,Assembly,Emu8086,在emu8086中,我编写了以下代码 include 'emu8086.inc' org 100h MOV AX,-1 CMP AX,0 JB case1 case2: printn 'This line should not be displayed' case1: print 'I want this line' ret 应该只打印案例1,但在本例中,输出显示两个案例。我做错了什么?JB(如果下面是跳转)用于无符号整数,类似于JNAE(如果不高于或等于跳转)
include 'emu8086.inc'
org 100h
MOV AX,-1
CMP AX,0
JB case1
case2:
printn 'This line should not be displayed'
case1:
print 'I want this line'
ret
应该只打印案例1,但在本例中,输出显示两个案例。我做错了什么?JB
(如果下面是跳转)用于无符号整数,类似于JNAE
(如果不高于或等于跳转)
因此,如果您想与有符号整数(在您的案例-1中)进行比较,您必须使用JL
(如果小于则跳转)或JNGE
(如果不大于或等于则跳转)JB
(如果低于则跳转)用于类似于JNAE
(如果不高于或等于则跳转)的无符号整数
因此,如果您想与有符号整数(在您的例子中是-1)进行比较,您必须使用
JL
(如果小于则跳转)或JNGE
(如果不大于或等于则跳转),这很有帮助,感谢jb
不仅与jnae
类似。它是相同机器指令的别名(相同的二进制操作码)。两者都是jc
的别名,我个人认为这是“基本”别名,因为它涵盖了正在测试的标志,而jb/jnae
只是比较助手别名,但这肯定只是我的观点。这很有帮助,感谢jb
不仅与jnae
相似。它是相同机器指令的别名(相同的二进制操作码)。两者都是jc
的别名,我个人认为这是“基本”别名,因为它涵盖了正在测试的标志,而jb/jnae
只是比较助手别名,但这绝对只是我的观点。几乎是重复的:几乎是重复的: