本文只针对定点的加减运算(补码加减法实现),不涉及定点数的乘除运算以及浮点数运算

补码加减法

  1. 公式

    1. 补码加法: [x+y]补=[x]补+[y]补 [ x + y ] 补 = [ x ] 补 + [ y ] 补 [x+y]_补=[x]_补+[y]_补
    2. 补码减法: [x−y]补=[x]补+[−y]补 [ x − y ] 补 = [ x ] 补 + [ − y ] 补 [x-y]_补=[x]_补+[-y]_补
      注意: [−y]补=[y]补 [ − y ] 补 = [ y ] 补 [-y]_补= [y]_补包括符号位取反且最末位加1,这里的取反是包括符号位的,与求反码的不同
  2. 例子
    1. 例1: x=-0.1011,y=0.0111,求 [x+y]补 [ x + y ] 补 [x+y]_补
      [x]补=1.0101 [ x ] 补 = 1.0101 [x]_补=1.0101
      [y]补=0.0111 [ y ] 补 = 0.0111 [y]_补=0.0111
      [x+y]补=[x]补+[y]补=1.0101+0.0111=1.1100 [ x + y ] 补 = [ x ] 补 + [ y ] 补 = 1.0101 + 0.0111 = 1.1100 [x+y]_补=[x]_补+[y]_补=1.0101+0.0111=1.1100
    2. 例 2: x=+0.11011,y=-0.11111,求 [x−y]补 [ x − y ] 补 [x-y]_补
      [x]补=0.11011 [ x ] 补 = 0.11011 [x]_补=0.11011
      [y]补=1.00001 [ y ] 补 = 1.00001 [y]_补=1.00001
      [−y]补=0.11111 [ − y ] 补 = 0.11111 [-y]_补=0.11111
      [x−y]补=[x]补+[−y]补=1.11010 [ x − y ] 补 = [ x ] 补 + [ − y ] 补 = 1.11010 [x-y]_补=[x]_补+[-y]_补=1.11010

溢出检测

  1. 概念:
    在定点整数机器中,数的表示范围为 |x|<(2n−1) | x | < ( 2 n − 1 ) |x|,若运算的过程中出现大于此字长绝对值的现象,则称之为”溢出”
    但n位二进制补码数的表示范围是 −2n−1 − 2 n − 1 -2^{n-1}到 2n−1−1 2 n − 1 − 1 2^{n-1}-1,详见https://blog.csdn.net/alinyua/article/details/79702879
  2. 可能出现溢出的情况:
    1. 两正数加,变负数,上溢(正溢)(大于机器所能表示的最大数)
    2. 两负数加,变正数,下溢(负溢)(小于机器所能表示的最小数)
  3. 检测方法

    1. 双符号位法
      1.参与加减运算的数采用变形补码表示(正数的两个符号位是”00”,负数的两个符号位是”11”,尾数规则同补码)
      2.连同符号位参与运算
      3.根据两个符号位判断结果是否溢出(机器中用异或门判断)

      符号位SF1 符号位SF2 结果
      0 0 正确(正数)
      0 1 上溢
      1 0 下溢
      1 1 正确(负数)

      例子:x=-1100,y=-1000,求x+y
      [x]补=110100 [ x ] 补 = 110100 [x]_补=110100
      [y]补=111000 [ y ] 补 = 111000 [y]_补=111000
      [x]补+[y]补=101100 [ x ] 补 + [ y ] 补 = 101100 [x]_补+[y]_补=101100
      由于两个符号位出现”10”,表示下溢

    2. 单符号位法

      1. 连同符号位参与运算
      2. 分别求符号位产生的进位 Cf C f C_f和最高有效位产生的进位 C0 C 0 C_0
      3. 根据 Cf C f C_f和 C0 C 0 C_0判断结果是否溢出(机器中用异或门判断)
      符号位进位 Cf C f C_f 最高位进位 C0 C 0 C_0 结果
      0 0 正确(正数)
      0 1 上溢
      1 0 下溢
      1 1 正确(负数

关于原码,反码,移码的概念和计算参考https://blog.csdn.net/alinyua/article/details/79702879

定点加减运算(补码加减法及溢出检测)相关推荐

  1. 考前自学系列·计算机组成原理·补码定点加减运算和溢出判断,浮点数的加减运算,原码的乘法

    补码定点加减运算和溢出判断 浮点数的加减运算 原码乘法

  2. 计组之数据运算:5、加减运算与溢出判断

    5.加减运算与溢出判断 思维导图 原码的加减运算 补码的加减运算 溢出判断 1.采用一位符号位直接判断 2.采用一位符号位用进位判断 3.采用双符号位判断 符号扩展 思维导图 原码的加减运算 补码的加 ...

  3. 浮点加减运算中关于结果规格化的思考

    对于两个浮点数x和y满足: 完成x与y的加减法有四个步骤: 0操作数检查.即检查是否有一个操作数为0,是的话直接得到结果,一般在计算机中不进行这一步. 比较阶码大小并完成对阶.要让两个浮点数的尾数能够 ...

  4. 浮点数加减运算左规右规

    当尾数用二进制表示时,浮点规格化的定义是尾数M应满足:  1/2   ≤  |M|<1 显然对于正数而言,有M = 00.1φφ-φ:对于负数,其补码形式为11.0φφ-φ(即-0.0***** ...

  5. 原码/补码的加减运算and溢出判断

    小数点的处理: 任意一个二进制数S都可以表示为 研究小数点就要研究阶码E的取值: 若E=0,则表示纯小数--代表定点小数: 例0.1111表示+0.1111,1.1111表示-0.1111. 若E=n ...

  6. 补码加减运算及判断溢出方法

    一.补码加减运算 二.判断溢出方法 1.符号位判溢出方法 对于加减运算,两个异号数相加或者两个同号数相减,结果的绝对值一定比任何一个数的绝对值要小,不会发生上溢出.两个异号数相减或者两个同号数相加的绝 ...

  7. 补码的加减运算和溢出判断

    补码的加减运算 定义:两个操作数用补码表示,连同符号位一起表示,结果也用补码表示 补码的加减运算公式:(X+Y)补 = X补 + Y补                 (X-Y)补 = X补 + (- ...

  8. 使用全加器实现补码的加减运算

    引言: 我们都知道,在计算机中的加减运算都是由补码来实现的,那么,计算机是如何运用电路来实现补码的加减的呢?在计算机中,所有的加减运算其实都变成了加法后来参与运算的,那么仅需要一个加法器就可以实现了. ...

  9. 微型计算机原理计算两数和,微型计算机原理及汇编语言 第2章-2 补码及加减运算.ppt...

    微型计算机原理及汇编语言 第2章-2 补码及加减运算 2.4 数的定点与浮点表示法 2.4.1 定点表示 所谓定点表示法,是指小数点在数中的位置是固定的.原理上讲,小数点的位置固定在哪一位都是可以的, ...

最新文章

  1. Open3d学习计划—高级篇 7(颜色映射)
  2. C 语言编程 — uint8_t / uint16_t / uint32_t /uint64_t
  3. Ubuntu 16.04下Caffe-SSD的应用(四)——ssd_pascal.py源码解读
  4. UNIX再学习 -- 信号
  5. [翻译] C# 3.0语言规范 收藏
  6. KVM虚拟机相关步骤
  7. C和指针之动态内存分配堆、栈、全局区(静态区)、常量区对比总结学习笔记
  8. c语言around用法,KET基础语法:介词among和around的用法及例句
  9. linux gcc延时怎么写,Clang / GCC是否真的支持延迟加载功能?
  10. 报告漏洞后 马斯克宣布撤回FSD Beta 10.3版本
  11. C/C++代码调试:快速定位内存的申请和释放的位置
  12. android之uniapp调用weex的module
  13. springboot做网站_Github点赞接近100k的SpringBoot学习教程+实战推荐!牛批!
  14. 持久化/Session和SessionFactory线程非安全和安全/Hibernate的优势
  15. 格雷码Gray Code详解
  16. 批量归一化Batch Normalization 动手学深度学习v2
  17. 房友手机服务器安装文件,房友软件服务器地址
  18. 使用iptables+脚本实现只允许中国IP访问服务器
  19. 极坐标梯度公式_一般坐标系下的梯度散度旋度及拉普拉斯形式
  20. Python3实现基于百度AI开放平台和图灵机器人API聊天机器人

热门文章

  1. 图书管理系统E-R图
  2. 通过反射获取属性以及属性的值
  3. DSP入门必看(下)
  4. Remote desktop web access
  5. erp5开源制造业erp安装和学习入门指南
  6. echarts中国地图使省份选择性滑动或点击高亮
  7. Assignment写作步骤流程详细分析
  8. 【Maven】Maven本地仓库无法下载依赖解决方案
  9. 2022年探头扫描式显微镜市场前景分析及研究报告
  10. 【vijos】【图论】【最短路径】【SPFA】想越狱的小杉