CMP指令是什么意思?

如题所述

CMP OPR1 , OPR2指令只是对操作数OPR1 , OPR2之间运算比较,不保存结果。指令本身不进行跳转,只是根据结果设置相关的条件标志位(SF、ZF、CF、OF),CMP指令后往往跟着条件转移指令,实现根据比较的结果产生不同的程序分支的功能。

格式:CMP OPR1 , OPR2.

执行操作:(OPR1)-(OPR2)

功能:该指令与SUB指令一样执行减法的操作,但它并不保存运算结果,只是根据结果设置相关的条件标志位(SF、ZF、CF、OF)。CMP指令后往往跟着条件转移指令,实现根据比较的结果产生不同的程序分支的功能。

扩展资料:

跳转相关的条件跳转指令:

1、JA/JNBE DEST指令:转移条件是CF=0 AND ZF=0,含义是无符号数A>B,英文表示是JMP above (not below or equal)。

2、JAE/JNB DEST指令:转移条件是CF=0,含义是无符号数A≥B,英文表示是JMP above or equal (not below )。

3、JB/JNAE DEST指令:转移条件是CF=1,含义是无符号数A<B,英文表示是JMP blow (not above or equal)。

4、JBE/JNA DEST指令:转移条件是CF=1 OR ZF=1,含义是无符号数A≤B,英文表示是JMP blow or equal (not above)。

参考资料来源:百度百科-CMP指令

参考资料来源:百度百科-条件转移指令

温馨提示:答案为网友推荐,仅供参考
相似回答