1. 什么是状态标志寄存器

状态标志位(Status Flags):

状态标志被分配到到一个称为标志寄存器(Status Flags Register)的特殊寄存器中。

该寄存器包含:

Zero Flag(ZF):判断存储数是否等于0

Sign Flag(SF):判断存储数是否为负数

Overflow Flag(OF):判断存储数是否溢出

Carry Flag(CF):判断运算是否有进位

标志寄存器结构:

当标志位为1时,表示其代表的状态存在


2. 各标志位如何工作的

2.1 Zero Flag(ZF):

ZF=所有位做 或非 运算(只有全为0时才会输出1)

2.2 Sign Flag(SF):

SF为符号位,即第一位bit

SF=1时为负数,SF=0时为正数

2.3 Overflow Flag(OF):

Cin=0,Cout=1:上溢出(overflow)

        Cin=1,Cout=0:下溢出(underflow)

OF案例:

Case 1:4+5 ==0100+0101=1001=-7 答案错误

原因:Cin=1,Cout=0,OF=1 下溢出

Case 2:-6-5==1010+1011=0001=1  答案错误

原因:Cin=0,Cout=1,OF=1 上溢出

Case 3: -3-4==1101+1100=1001=-7 答案正确

原因:Cin=1,Cout=1,OF=0

注:(1) 4bit有符号加法范围为(7,-8]

(2) Cin和Cout计算方法详见:加法器复习_就叫你天选之人啦的博客-CSDN博客

2.4 Carry Flag(CF):

详见:加法器复习_就叫你天选之人啦的博客-CSDN博客

状态标志与状态标志寄存器相关推荐

  1. 汇编语言——标志(状态字)寄存器PSW

    标志寄存器PSW 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 OF DF IF TF SF ZF AF PF CF 零 标志 标志寄存器PSW(程序状态字寄存器PSW) ...

  2. Ollydbg中C标志位P标志位A标志位Z标志位以及S,T,D,0标志位含义详解

    转载自https://www.cnblogs.com/whzym111/p/6374855.html 知识点: l 标志位 置位相关指令   l 标志寄存器PSW 标志寄存器PSW(程序状态字寄存器P ...

  3. flutter 局部状态和全局状态区别_给 Android 开发者的 Flutter 指南

    这篇文档旨在帮助 Android 开发者利用既有的 Android 知识来通过 Flutter 开发移动应用.如果你了解 Android 框架的基本知识,你就可以使用这篇文档作为 Flutter 开发 ...

  4. 【Java 并发编程】线程锁机制 ( 锁的四种状态 | 无锁状态 | 偏向锁 | 轻量级锁 | 重量级锁 | 锁竞争 | 锁升级 )

    文章目录 一.悲观锁示例 ( ReentrantLock ) 二.重量级锁弊端 三.锁的四种状态 ( 无锁状态 | 偏向锁 | 轻量级锁 | 重量级锁 ) 四.锁的四种状态之间的转换 ( 无锁状态 - ...

  5. TCP协议 状态解析和状态统计

    一.三次握手和四次挥手 1.建立连接(三次握手) (1)服务器会处于listen状态,客户端发送一个带SYN标志的TCP报文到服务器. (2)服务器端回应客户端的请求,这是三次握手中的第2个报文,这个 ...

  6. Linux程序文件状态,linux 文件状态标识和IO操作方式

    转自:http://book.2cto.com/201212/11767.html 来自<UNIX/Linux程序设计教程> 文件状态标签指明文件的打开属性,它们由open()的flags ...

  7. flutter 局部状态和全局状态区别_Android 开发者遇到 5G、AI,写给 Android 开发者的 Flutter 指南

    ​前言 Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生 UI 的移动 SDK.Flutter 兼容现有的代码,免费并且开源,在全球开发者中广泛被 ...

  8. 关于对来电状态和去电状态的区分

    首先网上查到的那些说"没有专门用于接收来电的action,所以,非去电即来电",这是不对的! 同时在onReceive()方法中进行电话状态监听器的注册也是有问题的,因为每个Int ...

  9. linux 中 ACPI 电源管理 G 状态、S 状态、D 状态、C 状态、P 状态

    ACPI 高级电源管理 ACPI 中定义了 G.D.S.C.P 这 5 个大的电力状态. G 状态 Global system state G 状态表示的是用户看到的整个系统的电力状态. G0 运行模 ...

最新文章

  1. 联想无线网卡 linux驱动,ubuntu14.04手动安装博通官方无线网卡驱动时报错,
  2. 服务器的文件共享,服务器文件共享
  3. ASP.NET MVC Action Filters
  4. 生成特定分布随机数的方法:Python seed() 函数numpy scikit-learn随机数据生成
  5. Linux系统编程---11(会话,守护进程,创建守护进程)
  6. linux中shell编写数组排序,linux bash shell实现对数组快速排序(升序)
  7. SpringBoot 使用AOP功能
  8. centos8搭建k8s集群
  9. 亚信安全中标南方电网网络架构优化调整项目 智能联动抑制未知威胁
  10. 2018Oracle11g下载与安装菜鸟教程(一)
  11. 计算机病毒是通过内存传播吗,计算机病毒的工作过程
  12. Java实现家庭账户收支记录表
  13. CleanMyPC比360管家好用N倍的电脑清理软件
  14. 对象存储OSS云存储
  15. GetLastError()函数返回值对照列表
  16. Intel 助力移动云百万 IOPS 云硬盘,打造极速云存储体验
  17. Termux外置硬盘挂载——rclone WebDav 挂载网盘
  18. 字体设计编辑软件Glyphs 2 for mac中文版v2.6.6(1350)
  19. EOJ Monthly 2019.3 (based on March Selection) -D .宇恒棋
  20. golang入门笔记——kitex

热门文章

  1. 洛谷 P1361 小猫爬山
  2. 联想Thinkpad E420 重装系统
  3. Echarts (option.yAxis) Y轴 的属性
  4. 神经网络模型结果怎么看,神经网络模型怎么评估
  5. PTA习题 7-4 定义抽象类Person、派生类Student和类Teacher
  6. 下载的中文文件名乱码,如何转码
  7. Python 数组的长度
  8. 解决winform自定义窗体在扩展显示器最大化不能充满屏幕
  9. 基于FPGA的DDS直接数字频率合成器,频率和相位控制字可配置,在vivado2019.2平台中verilog开发.含testbench
  10. JavaEE项目实战_流程审批之二