注:下面说到的标志寄存器都是缩写,C就是CF,其他也一样

标志寄存器:C、P、A、Z、S、T、D、O的内容只会是0或1,0表示假,1表示真

  • O:溢出标志
    一个寄存器如果存放的值超过所能表示的范围,就称为溢出,O溢出时被置为1,否则,O的值被清为0。
    比如说EAX存放的最大值是11111111…(32个)转成16进制是7FFFFFFF,如果再加一就会溢出,我们用OD,修改当前的EAX值为7FFFFFFF,在执行add eax,1就会溢出,观察O标志位。

    执行,O标志位为1了,表示发生了溢出
  • P:奇偶标志位,偶数为1,奇数为0,
    一条指令的结果转为二进制,偶数个1,P=1,奇数个1,P=0.
    当前EAX的值为0,0个1,所以P=1

    我们让eax加1,十六进制的1转为二进制,1的个数为奇数,所以P=0
  • Z:0标志,如果一条语句的计算结果是0,Z=1,不是0,Z=0
    EAX修改成-1,再加1

    我们可以看到,结果为0,Z=1
  • S:符号标志位,如过指令运算结果是负数,S=1,反之,S=0

    我们看到现在的EAX是-8,我们让EAX加1,结果是-7,S=1
  • C:进位标志位,无符号运算的结果超过寄存器存放的最大值,C=1,没有超过,C=0

    设置EAX为FFFFFFFF,此时为EAX存放的最大值,再让EAX加一,C=1

A、T、D基本用不到,A是辅助进位标志位,T是定时器溢出标志,D是方向标志位,就不详细介绍了

标志寄存器:CF、PF、AF、ZF、SF、TF、DF、OF相关推荐

  1. 标志寄存器 CF PF AF ZF SF OF TF IF

    标志寄存器,里面有众多标记位,记录了CPU执行指令过程中的一系列状态,这些标志大都由CPU自动设置和修改: CF 进位标志 MOV AL,0XFF ADD AL,1这个时候AL超出FF的最大值就进位了 ...

  2. 汇编语言中常见的标志位: CF, PF, AF, ZF, SF,TF,IF,DF, OF

    一.运算结构标志位 1.CF(进位标志位):主要用来反映运算是否产生进位或借位,产生进位或借位则CF=1,否则CF=0. 2.PF(奇偶标志位):用于反映运算结果中"1"的个数的奇 ...

  3. 标志寄存器CF,OF,SF,ZF,PF以及相关练习

    CF(进位标识):进位标志位.在无符号运算时,记录了运算结果的最高有效位向更高位的进位值或从更高位借位,产生进位或借位时CF=1,否则CF=0: PF(奇偶标识):奇偶标志位.相关指令执行后结果所有b ...

  4. 汇编中OF,PF,AF,ZF,SF,CF各自的意义

    1.CF-Carry Flag(进位标志位) 主要用来反映运算是否产生进位或错位,产生进位或错位则CF = 1,否则CF = 0. Equals to 1 if a transfer occurs b ...

  5. 标志寄存器的状态标志

    百度百科说明https://baike.baidu.com/item/%E7%8A%B6%E6%80%81%E6%A0%87%E5%BF%97/2186277?fr=aladdin#5 状态标志是16 ...

  6. 汇编语言随笔(3)-条件转移指令和标志寄存器

    标志寄存器 标志寄存器通常具有以下三种作用:       1,用来存储相关指令的某些执行效果       2,用来为CPU执行相关指令提供行为依据       3,用来控制CPU的相关工作方式     ...

  7. 我是如何学习Java的~标志寄存器及其应用

    在8086CPU内部的寄存器中,还存在着一种特殊的寄存器,一些指令的执行会触发该寄存器中特定位的值的改变,以用来记录指令执行的一些结果情况.这个寄存器被称为标志寄存器. 标志寄存器也是16位,但不是每 ...

  8. 汇编中的通用寄存器、标志寄存器、段寄存器

    通用寄存器: 寄存器和变量差不多,目的都是用于保存一些即将操作的数据 EAX(accumulator) 寄存器:扩展累加寄存器(一般在乘/除中会被主动调用),也可以用于其他用途 ECX(Count) ...

  9. 《汇编语言(第三版)》标志寄存器

    标志寄存器 8086CPU中的flag寄存器包括: CF.PF.ZF.SF.OF.DF. 传送指令不影响标志寄存器 ZF标志寄存器 zf标志寄存器位于flag中的第6为,表示零标志位.(至于flag是 ...

  10. 汇编语言笔记(三): 标志寄存器

    章节目录 简介 ZF 标志寄存器 PF 标志寄存器 SF 标志寄存器 CF 标志寄存器 OF 标志寄存器 几条相关指令 DF 标志寄存器 PUSHF and POPF 标志寄存器 作者能力有限, 如果 ...

最新文章

  1. java话费清单_查询话费订单列表示例代码
  2. Android保存自定义路径的图片的一些问题
  3. Mac-ios下JDK的安装路径(java)
  4. java之StringBuider与StringBuffer
  5. JAVA爬取亚马逊的商品信息
  6. 消息中间件ActiveMQ学习笔记(一):安装
  7. 应用程序委托协议栈发送消息
  8. Hdoj 1064 Financial Management
  9. 分享一个在线301跳转代码生成工具
  10. css控制图片自适应大小
  11. oracle 11g查隐含参数,oracle隐含参数修改与查看
  12. 解决tensorflow2.x中使用tf.contrib.slim包时出现的No module named:tensorflow.contrib 问题
  13. 51驱动AD9850/AD9851—DDS信号发生器
  14. 注意论文投稿风险,现投期刊会不会成为预警期刊呢?
  15. 工业42、57、86、110步进电机
  16. 发送验证码-阿里云短信服务
  17. JDK9相比于JDK8,究竟变强了多少
  18. Laravel 接受Ajax的POST请求
  19. 图片批量压缩方法及步骤
  20. 【机器学习的高等数学基础】导数的几何意义和物理意义、函数的可导性与连续性之间的关系、平面曲线的切线和法线、基本导数与微分表、微分中值定理,泰勒公式、弧微分、曲率、曲率半径、洛必达法则、渐近线的求法等

热门文章

  1. 怎么得到scrollTop
  2. CSS3中的圆角边框属性详解(border-radius属性)
  3. css3制作广告栏效果的疑问?
  4. DOM BOM document window 区别
  5. td过长,将固定宽度table撑开
  6. Zabbix监控多个JVM进程
  7. 原生类型的autoboxing和auto-unboxing
  8. BZOJ - 4520 K远点对
  9. 故障公告:IIS应用程序池停止工作造成博客站点无法访问
  10. 函数 (四) 迭代器和生成器