Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 为什么JB不是';不能做精确的化学机械抛光_Assembly_Emu8086 - Fatal编程技术网

Assembly 为什么JB不是';不能做精确的化学机械抛光

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(如果不高于或等于跳转)

在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
(如果不高于或等于跳转)

因此,如果您想与有符号整数(在您的案例-1中)进行比较,您必须使用
JL
(如果小于则跳转)或
JNGE
(如果不大于或等于则跳转)

JB
(如果低于则跳转)用于类似于
JNAE
(如果不高于或等于则跳转)的无符号整数


因此,如果您想与有符号整数(在您的例子中是-1)进行比较,您必须使用
JL
(如果小于则跳转)或
JNGE
(如果不大于或等于则跳转)

,这很有帮助,感谢
jb
不仅与
jnae
类似。它是相同机器指令的别名(相同的二进制操作码)。两者都是
jc
的别名,我个人认为这是“基本”别名,因为它涵盖了正在测试的标志,而
jb/jnae
只是比较助手别名,但这肯定只是我的观点。这很有帮助,感谢
jb
不仅与
jnae
相似。它是相同机器指令的别名(相同的二进制操作码)。两者都是
jc
的别名,我个人认为这是“基本”别名,因为它涵盖了正在测试的标志,而
jb/jnae
只是比较助手别名,但这绝对只是我的观点。几乎是重复的:几乎是重复的: