求补操作前前后后

  格式:NEG OPR ;B/W

  执行的操作:(OPR)←(OPR)求补

  这条指令的执行影响全部标志位。

  下面就求补操作时对CF和OF两个标志位的影响做一个分析。求补操作即是把操作数按位求反后末位加1,即FFFFH-OPR+1=0-OPR。也就是说,对一个操作数求补,相当于用0减去此操作数。参加求补运算的操作数当然是有符号数。对于CF而言,只有对0求补时,CF=0,其余情况都使CF=1(有借位)。0减去负数应该是正数,但当操作数的值是80H(-128)或8000H(-32768)时,求补后其值保持不变,仍为负数,固产生溢出,OF=1。其余情况都使OF=0。

  求反指令NOT的操作是对操作数按位求反,即FFFFH-OPR。所以假定要对AX寄存器中的操作数进行求补,那么可以有如下几种方法:

  方法1:NEG AX

  方法2:NOT AX

  INC AX

  方法3:MOV BX,0

  XCHG AX,BX

  SUB AX,BX

  注意:由于求补运算的结果应在AX中,所以方法3中要使用交换指令将AX和BX互换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值