汇编语言第十一章 标志寄存器

  1. 标志寄存器(flag)有16位,其中存储的信息统称为程序状态字(psw)

  2. List item
    第六位ZF,零标志位。在指令执行后如果结果为0,则ZF为1,如果不为0,ZF为0

  3. 第2位为PF(Parity Flag),奇偶标志位。结果所有bit位中1的奇偶个数为偶数PF=1,为奇数 pf=0

  4. 第7位SF(Sign Flag),符号标志位。如果结果为负,SF=1,如果非负则为0

  5. 第0位CF(Carry Flag),进位标志位。在进行无符号运算时,记录了运算结果的最高有效位向更高位的进值,或从更高位的借位值。
    假想最高位之上还有更高位,如在0-7里,还有8,例如98H+98H超过的一位本应该被丢弃,但是保存在CF中。

  6. 第11位OF(Overflow Flag),溢出标志位。记录有符号位计算结果是否发生溢出,有溢出则 OF =1,没有为0.

  7. 第10位DF,方向标志位。控制每次操作后的si,di的增减, df = 0,每次操作后si,di递增;df=0,每次操作后si,di递减。

  8. adc带进位加法指令。
    格式:adc 对象1,对象2
    对象1 = 对象 1 +对象 2 + CF

  9. sbb借位减法指令。例sub ax,bx 相当于 (ax) = (ax) - (bx) -CF

  10. cmp比较指令,相当于减法指令不保存结果。例 cmp 8,3
    zf =0,pf=1,cf=0, sf=0,of=0

  11. 转移是指能够修改ip ;“条件”是指根据某条件决定是否修改ip

  12. List item

  13. movesb串传送指令
    在这里插入图片描述
    movesw则是递增递减变为2
    在这里插入图片描述

  14. pushf是将标志寄存器的值压入栈中。pushf和popf读取标志寄存器。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值