关于cmp指令


cmp %rdi, (%rsi)
jge .else
为例:
1、用来设置条件位的是通过 (%rsi) - %rdi,
若M[(%rsi)] = 2, %rdi = 1,
那么ZF = 0(非零),SF = 0(不为负).

2、同时,jge也将基于(%rsi) - %rdi 进行跳转。
此处 (%rsi) greater than %rdi,因此将进行跳转。

3、不过需要注意的是,在C的 if 命令中,当if not expression 时才发生跳转。 那么假设%rsi = p, %rdi = a,的话,该两句先展示其逻辑即为:
if((*p) - a >= 0) goto else;

if(a > *p) do_if_statement;  
else do_else_statement;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值