【详解】指令系统中跳转指令与OF,SF,CF,ZF的关系

2023-11-17

目录

无符号跳转表示法

有符号跳转表示法

无符号跳转表示法详解

有符号跳转表示法详解


无符号跳转表示法

小于                 CF=1

大于等于         CF=0

小于等于        ​​CF + ZF = 1

大于                CF+ZF=0

有符号跳转表示法

小于                 SF\oplus OF = 1

大于等于         SF\oplus OF = 0

小于等于        (SF\oplus OF)+ZF = 1

大于                (SF\oplus OF)+ZF = 0

无符号跳转表示法详解

我在学习这部分的最大的困惑点就是 ZF 和 = 并不直接相关,彼此是交错的。

当然或许有人会说,不满足“小于”条件的自然是“大于等于”。既然“小于”是CF=0,那“大于等于”就是CF=1.然后“小于等于”时与ZF取“或”就好。

这样理解自然没有问题,也方便记忆。只要记住以“小于”为基点就可以推出剩下的关系式。

但问题就在于为什么是“小于”,而不是“大于”。

原因如下。

在无符号数减法“a-b”中,“CF=1”一定表示a不够减,a<b;但"CF=0"不一定表示a>b,还有可能是“a=b”。

更本质的关系可以从下面的推导中看出

a < b CF = 1, ZF = 0
a > b CF = 0, ZF = 0
a = b CF = 0, ZF = 1

在 a < b 中,根据卡诺图的规则,合并第二列的两项,CF = 1.(在卡诺图的规则中, “CF=1,OF=1" 的 “-” 项可以随意与 “1” 项合并,即表达式为 CF = 1.)

CF = 0 CF = 1
ZF = 0 0 1
ZF = 1 0 -

在 a > b 中,\bar{CF}\bar{ZF} = 1, 两边取反,即CF+ZF=0

CF = 0 CF = 1
ZF = 0 1 0
ZF = 1 0 -

在 a <= b 中,用卡诺图得出关系式,CF+ZF=1

CF = 0 CF = 1
ZF = 0 0 1
ZF = 1 1 -

在 a >= b 中,用卡诺图得出关系式,合并第一列的两项,CF = 0

CF = 0 CF = 1
ZF = 0 1 0
ZF = 1 1 -

有符号跳转表示法详解

相比于无符号数,有符号数稍微复杂,不过差别也只在于“CF”这一项变成了"OF,SF"这两项。从最开始的关系式看出SF\oplus OFCF的功能是完全等价的。换句话说,只要我们能证明OF\oplus SF = 1一定表示在有符号数减法“a-b”中,a不够减即可。

观察下表

a < b

a,b都为正,SF = 1, OF = 0, ZF = 0

a,b都为负,SF = 1, OF = 0, ZF = 0

a为负,b为正,SF = 1, OF = 0, ZF = 0(没溢出)

a为负,b为正,SF = 0, OF = 1, ZF = 0(溢出)

a > b

a,b都为正,SF = 0, OF = 0, ZF = 0

a,b都为负,SF = 0, OF = 0, ZF = 0

a为正,b为负,SF = 1, OF = 1, ZF = 0(溢出)

a为正,b为负,SF = 0, OF = 0, ZF = 0(没溢出)

a = b SF = 0, OF = 0, ZF = 1

可以看出在所有可能的9种情况中,OF\oplus SF = 1是a<b的充要条件。因此可以用OF\oplus SF代替无符号中的CF

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【详解】指令系统中跳转指令与OF,SF,CF,ZF的关系 的相关文章

  • STM32Cube HAL库——ADC电压采集

    STM32Cube HAL库 ADC电压采集 一 ADC基本介绍 模拟数字转换器 即A D转换器 或简称ADC Analog to Digital Converter 通常是指一个将模拟信号转变为数字信号的电子元件 通常的模数转换器是将一个
  • [USF-XSim-62] ‘elaborate‘ step failed with errors.[Vivado 12-4473] Detected error while running sim

    USF XSim 62 elaborate step failed with error s Please check the Tcl console output and Vivado 12 4473 Detected error whi
  • OVP电路应用(一)_12V电源_DIO1280

    目录 前言 一 基本信息 二 基本电气特性 1 PIN定义 2 电气特性 3 OVP值的设置 4 时序 5 其他 三 实际设计案例 1 电路原理图 PCB Layout 2 测试 3 问题与对策 四 USB的VBUS应用 其他举例 1 电路
  • 恒流源电路简介

    一 NPN三极管恒流源 如上图 假设D1 D2正向导通压降Vf为0 7V 那么三极管Q1基级电压Ub 2Vf 1 4V 假设三极管Q1基级和发射级之间压降Ube为0 7V 那么Q1发射级的电压Ue则为Ub Ube 1 4 0 7 0 7V
  • 模拟电路设计(11)--- 运算放大器实际使用注意事项

    判断是否负反馈状态 我们先来说下什么是负反馈 凡是将放大电路输出量 电压或电流 直流或交流 的一部分或全部 通过一定的电路 称为反馈电路 以一定的方式 串联或并联 反送到放大电路的输入电路 减小净输入量 从而使输出量比无反馈时也随之减小的反
  • MS5543单通道、16位、串行通信、高速ADC转换芯片

    产品简述 MS5543 是一款单通道 16 位 串行输入 电压输出的数模 转换器 采用 2 7V 至 5 5V 单电源供电 输出范围为 0V 至 V REF 在输出范围内保证单调性 在温度范围为 40 C 至 85 C 能够提供 1LSB
  • 光耦基础知识

    1 光耦 光耦合器 optical coupler 英文缩写为OC 亦称光电隔离器或光电耦合器 简称光耦 在电源当中 光耦和TL431一般都是一起出现的 它们组合一起的作用是用来控制初次级反馈环路的稳定 从而实现输出电压的稳定 有插件的 也
  • DCDC输入输出电容的选择和计算(转载)

    文章转自MPS论坛 https forum monolithicpower cn t topic 2105 目前市面上的电容种类繁多 在为我们的电源电路选择输入输出电容的时候难免会挑花了眼 本文就来浅析一下如何选择输入输出电容及其相关的计算
  • 【详解】指令系统中跳转指令与OF,SF,CF,ZF的关系

    目录 无符号跳转表示法 有符号跳转表示法 无符号跳转表示法详解 有符号跳转表示法详解 无符号跳转表示法 小于 大于等于 小于等于 大于 有符号跳转表示法 小于 大于等于 小于等于 大于 无符号跳转表示法详解 我在学习这部分的最大的困惑点就是
  • 蛇形走线的长度受控问题

    目录 序言 分析 结束语 序言 有一次 小编的layout同事问了一个问题 蛇形走线时是否需要控制绕线的长度 小编一时竟难以回答 不是这个问题有多复杂 只是 这个问题不容易量化 解释起来颇费周章 因此 有必要将其单独列为一个话题进行讨论 具
  • DDR的VTT有源端接和无源端接(slua886a笔记)

    DDR的VTT有源端接和无源端接 slua886a笔记 背景 对于DDR的VTT端接 一直有说法是有源端接可降低功耗 之前一直没仔细理解其中原因 现在找了些相关的资料来介绍和对比有源和无源端接 理解有源端接的优点和降低功耗的原理 主要基于读
  • 关键元器件选型设计指引--通用逻辑器件(逻辑IC)

    1 物料分类 标准逻辑器件 标准数字逻辑IC集成电路可以从工艺 功能和电平三个方面划分 列表所示 注 常见的逻辑电路有54军用系列和74商用系列 两者电路功能一致 本文仅讨论74系列 按照制造工艺特点分类 工艺 逻辑器件产品族 优点 不足
  • Allegro如何导出和导入设计规则操作指导

    Allegro如何导出和导入设计规则操作指导 当需要借用另外一款PCB的设计规则时候 Allegro支持把PCB设计规则导入到另外一块PCB中 如下图 具体操作如下 打开规则管理器 打开后如下图
  • PCIe 5.0 规范最新更新及PCIe 5.0测试挑战​

    PCIe 5 0 基础规范 v1 0 在 2019 年年中发布以后 Synopsys 发布了世界上第一款支持 PCIe 5 0 基础规范 v1 0 的 IP 并展示了在其实验室验证发射机 接收机 Tx Rx 性能的环境 Intel 也在 2
  • N沟道和P沟道MOS管的四个不同点

    作者 快捷芯 功率半导体创新品牌 1 芯片材质不同 虽然芯片都是硅基 但是掺杂的材质是不同 使得N沟道MOS管是通过电子形成电流沟道 P沟道MOS管是用空穴流作为载流子 具体原理可以参考一些教科书 属于工艺方面的问题 2 同等参数P沟道MO
  • AD20/Altium designer——如何对PCB添加图片丝印、自定义LOGO、专属图案

    本篇介绍如何在PCB添加图案丝印并调节大小 主要步骤 图片转单色图 bmp格式 复制粘贴进word文档 再次复制到AD 1 选择图片用电脑自带的画图软件打开 2 将图片另存为 bmp格式 3 查看图片效果是否理想 图片是否需要取反色 选做
  • IC数字后端

    在 innovus 里面 有时候我们需要控制 tie cell 的 fanout 和 net length 来避免 tie cell 可能出现 max transition 或者 max fanout 的违例 一般来说 只要 fanout
  • 硬件系统工程师宝典(30)-----降压式Buck电路分析

    各位同学大家好 欢迎继续做客电子工程学习圈 今天我们继续来讲这本书 硬件系统工程师宝典 上篇我们说到DC DC变换中的开关调节模式有功耗小 效率高并且稳压范围宽的特点以及DC DC的指标参数和设计要求 今天我们来分析一下DC DC中的一个典
  • CAN FD基础

    CAN FD基础 一 CAN FD与CAN 2 0的区别 1 CAN FD的优势 该协议能够支持更高的速率 可以更快的刷写ECU 在单个数据帧内传送率可达64字节 避免了经常发生的数据分拆传输的状况 对汽车行业而言 CAN FD协议显得非常
  • 无线网络管理系统与无线路由器的区别

    第5章 波形发生器软件设计 本章我们将介绍系统的软件设计 系统中控制软件占有很重要的地位 它不仅要产生波形数据 控制波形的发生 还要控制显示电路和键盘电路 因此系统软件的好坏直接决定着系统的功能和稳定 5 1软件的总体结构 在本系统中 由于

随机推荐

  • 内网情况下 MAVEN不加载本地库的问题

    第一种解决方式 settings gt maven的配置里勾选 work offline即可解决问题 在这里插入图片描述 在这里插入图片描述 https img blog csdnimg cn cebc5829e3014aa3a3dc4f9
  • 面经分享-阿里、网易实习生面试题(附答案)

    4 23更新 已收到网易短信offer 阿里面试 先说下阿里吧 前段时间找师兄内推了阿里巴巴实习生 特此记录一下面试的感受 阿里确实是技术的圣地 目前为止我遇到的面试官都很nice 无论是语气还是技术都让人佩服 我就根据印象回忆一下面试的情
  • 使用ajax从数据库动态加载下拉框(select)数据,可编辑下拉框。

    div span style margin left 100px width 18px span div
  • JavaScript编程语言-代码结构,js的特性,调试,资源面板,控制台,代码风格,语法,花括号,

    JavaScript 特性 本章简要回顾我们到现在为止学到的 JavaScript 特性 并特别注意了一些细节 代码结构 语句用分号分隔 alert Hello alert World 通常 换行符也被视为分隔符 因此下面的例子也能正常运行
  • 密钥交换算法DH(Java实现)

    密钥交换算法 DH 1 简述 1976年 W Diffie和M Hellman在发表的论文中提出了公钥加密算法思想 但当时并没有给出具体的实施方案 原因在于没有找到单向函数 也就是消息摘要算法 但在该论文中给出了通信双方通过信息交换协商密钥
  • Linux删除任务未执行排查解决

    写了一个定时删除日志的脚本 用于删除超过30天的日志 到了指定的时间 发现定时任务并没有执行 find usr local tomcat logs mtime 30 name log exec rm rf 百思不得其解之际 将命令逐段执行f
  • Shell脚本编写教程【一】——Shell 变量

    Shell脚本编写教程 一 Shell 变量 目录 https blog csdn net shn111 article details 131590488 参考教程 https www runoob com linux linux she
  • github使用入门 之GIT GUI Windows版

    申明下是原创 这二天网上也看了不少关于github使用的文章 github对代码管理也开始用起来了 这篇给github新手看 大牛们请跳过 github说白了就是版本管理库 最常用的就是程序代码管理了 不过我也在github上看到有人在用它
  • python or的用法_python and or用法详解

    and 和 or 是python的两个逻辑运算符 可以使用and or来进行多个条件内容的判断 下面通过代码简单说明下and or的用法 1 or 当有一个条件为真时 该条件即为真 逻辑图如下 测试代码如下 a raw input plea
  • ipconfig命令

    ipconfig命令 ipconfig release 释放 IP 地址租约 ipconfig flushdns 清除本地 DNS 缓存 ipconfig displaydns 显示本地 DNS 内容 ipconfig registerdn
  • SQL知识整理一:触发器、存储过程、变量表、临时表

    pre class javascript dd2 draggable proxy clone 一 触发器 create trigger tr name on table view for after instead of update in
  • 大数据课程L8——网站流量项目的SparkStreaming整合代码

    文章作者邮箱 yugongshiye sina cn 地址 广东惠州 本章节目的 掌握网站流量项目的工程Pom配置文件代码 掌握网站流量项目的SparkStreaming整合Kafka代码 掌握网站流量项目的SparkStreaming整合
  • 电机高频注入原理_STM32 TALK

    电机在各种应用中 都是最广泛 最核心的存在 随着传统应用转变翻新 新兴应用层出不穷 这几年的电机界 如果不会FOC 都不好意思说自己是做电机的 八月底 在电堂联合ST举办的 STM32 TALK 电机控制私享会 上 艾思科技作为STM32的
  • 图像仿射变换原理1:齐次坐标来龙去脉详解

    老猿Python博文目录 https blog csdn net LaoYuanPython 仿射变换博文传送门 带星号的为付费专栏文章 图像仿射变换原理1 齐次坐标来龙去脉详解 图像仿射变换原理2 矩阵变换 线性变换和图像线性变换矩阵 图
  • [刷题记录]牛客面试笔刷TOP101

    牛客笔试算法必刷TOP101系列 每日更新中 主要是记录自己的刷题 所以描述的可能不是很清楚 但如果刚好能帮助到你就更好了 后续后头复习的时候 记得是看正解啊 别对着错的例子傻傻看了 目录 1 合并有序链表2023 9 3 2 链表是否有环
  • 第14.18节 爬虫实战4: request+BeautifulSoup+os实现利用公众服务Wi-Fi作为公网IP动态地址池

    写在前面 本文相关方法为作者独创 仅供参考学习爬虫技术使用 请勿用作它途 禁止转载 一 引言 在爬虫爬取网页时 有时候希望不同的时候能以不同公网地址去爬取相关的内容 去网上购买地址资源池是大部分人员的选择 老猿所在的环境有电信运输商部署的对
  • [Python学习] 专题五.列表基础知识 二维list排序、获取下标和处理txt文本实例

    通常测试人员或公司实习人员需要处理一些txt文本内容 而此时使用Python是比较方便的语言 它不光在爬取网上资料上方便 还在NLP自然语言处理方面拥有独到的优势 这篇文章主要简单的介绍使用Python处理txt汉字文字 二维列表排序和获取
  • 橘子学java之java中的协程

    一 关于协程 最近jdk19上了 java开始支持虚拟线程了 也就是所谓的协程 java的协程库是官方是这个https openjdk org projects loom 我指的是oracle的java 阿里那个well的早就支持了 只是官
  • stm32——Fatfs文件系统读写文件

    因项目需求需要移植fatfs文件系统 参考了正点原子的战舰例程 使用mcu为stm32f103zet6 spi的sd卡模块 8Gsd卡 例程为mini板 mcu stm32f103rct6 的 ALIENTEK MINISTM32 实验29
  • 【详解】指令系统中跳转指令与OF,SF,CF,ZF的关系

    目录 无符号跳转表示法 有符号跳转表示法 无符号跳转表示法详解 有符号跳转表示法详解 无符号跳转表示法 小于 大于等于 小于等于 大于 有符号跳转表示法 小于 大于等于 小于等于 大于 无符号跳转表示法详解 我在学习这部分的最大的困惑点就是