汇编语言中,cmp指令怎么用?比如cmp ax,bx ax大于bx怎么跳转,小于又怎么跳,等于呢?

 我来答
八哥说科技
高粉答主

2019-09-14 · 分享科技资讯,共享科技生活
八哥说科技
采纳数:111 获赞数:78605

向TA提问 私信TA
展开全部

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指令

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

百度网友9045b38
推荐于2017-11-23 · TA获得超过1972个赞
知道小有建树答主
回答量:984
采纳率:90%
帮助的人:515万
展开全部
CMP AX,BX

若 AX>BX 可用 JG XXXX
若 AX=BX 可用 JE XXXX
若 AX<BX 可用 JL XXXX
若 AX>=BX 可用 JNL XXXX
若 AX<=BX 可用 JNG XXXX

XXXX表示地址。

当然,也还可以用其他指令实现。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1f2f4d6
2010-11-21
知道答主
回答量:12
采纳率:0%
帮助的人:0
展开全部
cmp指令的比较方式是用ax-bx
通过减法结果改变标志位zf
可以使用条件跳转指令
如JZ表示ax=bx的情况
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pig05121
2010-11-21 · TA获得超过599个赞
知道小有建树答主
回答量:234
采纳率:50%
帮助的人:134万
展开全部
标志位条件跳转指令分有符号数比较和无符号数比较,
无符号数:
= je
!= jne
> ja
>= jae
< jb
<= jbe
有符号数:
= je
!= jne
> jg
>= jge
< jl
<= jle
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式