浮点数的加减运算

我们可以先通过十进制的浮点数加减运算步骤来类推二进制的

十进制浮点数加减运算步骤:

浮点数加减运算包括五个步骤:① 对阶② 尾数加减③ 规格化④ 舍入⑤ 判溢出

例如:计算9.85211 × 1012 + 9.96007 × 1010

解:

二进制浮点数的加减运算

上面我们进行了十进制的浮点数的加减运算,下面我们可以以此类推,也按照上面五个步骤来做

直接看一个例题:已知十进制数X=−5/256、Y=+59/1024,按机器补码浮点运算规则计算X−Y,结果用二进制表示,浮点数格式如下:阶符取2位,阶码取3位,数符取2位,尾数取9位

解:

首先我们先用补码表示阶码和尾数,

5D = 101B,1/256 = 2-8 → X = - 101 × 2-8 = - 0.101 × 2-5 = - 0.101 × 2-101

59D = 111011B,1/1024 = 2-10 → Y = + 111011 × 2-10 = + 0.111011 × 2-4 = + 0.111011 × 2-100

再转化成补码形式

X:11011,11.011000000

(X是负数 转化成补码取反+1 阶码 尾数都一样操作)

Y:11100,00.111011000

1. 对阶

使两个数的阶码相等,小阶向大阶看齐,尾数毎右移一位,阶码加1

① 求阶差:[ΔE]补=11011+00100=11111,知ΔE=−1

② 对阶:

X:11011,11.011000000 → 11100,11. 101100000

X = - 0.0101 × 2-100

2. 尾数加减

-Y:11100,11.000101000

(求码的负数的方法:连符号位一块取反+1)

然后让X加上-Y

11.101100000

+ 11.000101000

10.110001000

所以X-Y:11100, 10.110001000

3. 规格化

X-Y:11100, 10.110001000 à 11101,11.011000100

4. 舍入

无舍入

5. 判溢出

常阶码,无溢出,结果真值为2−3×(−0.1001111)2

浮点数的加减运算——舍入规则

“0”舍“1”入法:

类似于十进制数运算中的“四舍五入”法,即在尾数右移时,被移去的最高数值位为0,则舍去;被移去的最高数值位为1,则在尾数的末位加1。这样做可能会使尾数又溢出,此时需再做一次右规。

恒置“1”法:

尾数右移时,不论丢掉的最高数值位是“1”还是“0”,都使右移后的尾数末位恒置“1”。这种方法同样有使尾数变大和变小的两种可能。

例如

强制类型转换

转化的可操作性

char → int → long → double

float → double

int → float:可能损失精度

float → int:可能溢出及损失精度

结论:范围、精度从小到大,转换过程没有损失

原因:拿32位来说:

int:表示整数,范围 -231 ~ 231-1 ,有效数字32位

float:表示整数及小数,范围 ±[2-126 ~ 2127×(2−2−23)],有效数字23+1=24位

计算机组成原理强制类型转换规则,计算机组成原理——浮点数加减运算强制类型转换...相关推荐

  1. (计算机组成原理)第二章数据的表示和运算-第三节3:浮点数加减运算

    文章目录 一:以十进制下的科学计数法的加减运算为例说明浮点数加减运算 二:浮点数的加减运算(不舍入) 三:浮点数的加减运算(舍入) 四:浮点数强制类型转换 一:以十进制下的科学计数法的加减运算为例说明 ...

  2. 【Computer Organization笔记06】浮点数的数据表示,浮点数加减运算

    本次笔记内容: P11 计算机组成原理(11) P12 计算机组成原理(12) 本节课对应幻灯片:组成原理13 data,第72页起.此外,本节课内容"浮点数"已经在"汇 ...

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

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

  4. 2.3.2 浮点数的加减运算

    加油哦棒棒哒(●• ̀ω•́ )✧取快递 要如何实现浮点数的运算呢?所以这个小节我们要探讨的是浮点数如何实现加减运算,那除了加减运算的实现之外,我们还会探讨浮点数,还有定点数之间的一个强制类型转换的问 ...

  5. 计算机组成原理白学了,再次回顾浮点数加减

    大二学的计算机组成原理,回顾下其中的知识 文章目录 一个加法引发的思考 计算机中的原码.反码.补码.移码 原码 反码 补码 移码 为什么计算机中要用这些来表示数? 计算机中如何表示小数? 浮点数的转换 ...

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

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

  7. 2.3.3 浮点数的加减运算与强制类型转换

    文章目录 0.思维导图 1.浮点数的加减运算 2.强制类型转换 0.思维导图 1.浮点数的加减运算 我们直接以一道题目来进行了解: 一般都要先转换格式: 2.强制类型转换

  8. 浮点数——科学计数法、浮点数表示、加减运算和浮点数的使用

    目录 1.2浮点数 1.2.1 科学计数法 1.2.2 浮点数表示 1 符号位 2价码位 1.2.3 加减运算 1.2.4 浮点数的使用 1.2浮点数 浮点数是采用科学计数法来表示的,由符号位.有效数 ...

  9. HTML5实现浮点数的加减运算,浮点数表示例题

    设 A=–0.101101*2-3,B= 0.101001*2-2,先将A.B表示为规格化的浮点数.要   N=(+-)M2E   其中:M代表尾数,E代表阶码.   计算机中浮点数只用尾数和阶码表示 ...

  10. 浮点数的运算 —— 浮点数的加减运算

    题目 阶码运算和尾数运算分开进行.浮点数的加减运算一律采用补码. 一.真值到机器数的转换 二.对阶 使两个数的阶码相等,小阶向大阶看齐,尾数每右移一位,阶码加1 三.尾数加减 将对阶后的两个尾数按定点 ...

最新文章

  1. 人工智能领域的经典著作!
  2. VirtualBox安装kali linux过程及安装后无法全屏问题解决方法(2)
  3. Debian 编译内核全过程[转]
  4. vue3.x全局toast、message、loading组件
  5. suse 9 图形安装出现4画面
  6. 我中的第一标:4000人中脱颖而出的威客
  7. Python练习题10道(含答案)
  8. adapter java_Java 实现适配器(Adapter)模式
  9. 项目十大管理(三)进度管理
  10. BP神经网络(算法整体思路及原理+手写公式推导)
  11. 学好python需要学哪些知识_学习Python需要掌握哪些知识?
  12. HTML5 浏览器检测
  13. 手把手刷数据结构-1.手把手刷链表算法
  14. [高级]pdf生成(可水印)、pdf预览(可分页)、pdf打印:全栈一条龙方案
  15. vtp协议服务器配置,VTP协议
  16. 固实压缩文件容易损坏_请慎重使用固实压缩文件
  17. android播放语音,切换听筒模式遇到的问题
  18. Tanzu学习系列之TKGm 1.4 for vSphere 组件集成(二)
  19. H5+JavaScript 剪刀石头布小游戏完整代码
  20. HashMap 之元素删除

热门文章

  1. matlab 暂态稳定性,基于MATLAB的电力系统暂态稳定性仿真
  2. 谈谈eXeScope这款exe修改器
  3. PowerBuilder通过JDBC连接MySQL数据库
  4. 数据库系统工程师考点笔记
  5. CSND自定义模块管理
  6. 动易 当前服务器不允许上传文件,动易网站详细安说明及常见疑难解答.doc
  7. 网络安全-wifi攻防
  8. 结构力学计算软件_辽宁网格修复软件价格如何
  9. 中科院-杨力祥视频教程 02课程
  10. GNS3中下载路由器