计算机组成原理学习笔记第3章3.7——浮点数加减运算

观前提示:该笔记系列内容适合复习以及在之前了解过计组、有一定基础的来进行观看,倘若您天资聪颖,可自动忽略这句话。

本篇笔记整理:Code_流苏(CSDN)

0.思维导图(自制)

①思维导图下载

自制思维导图文件(可下载后打开编辑.Xmind文件) 第3章 3.7——浮点数加减运算

提取码请见评论

②图示

在这里插入图片描述

1.规格化浮点数的概念

  • 由于浮点数是将数据的表示范围与精确度分别表示的数据表示方法,若不对浮点数的表示作出明确规定,同一个浮点数的表示就不唯一

  • 规格化浮点数是指把一个浮点数按指定的格式进行转换;

  • 以浮点数一般格式为例,规格化浮点数的尾数形式为:00.1Φ…Φ 或 11.0Φ…Φ。

2.浮点数规格化方法

  • 当尾数结果为 00.0Φ…Φ 或 11.1ΦΦΦΦ,需要左规格化即将尾数向左移动,每移动一次,阶码减1,直到尾数形式为 00.1Φ…Φ 或 11.0Φ…Φ。
  • 当尾数的结果为 01.Φ…Φ 或 10.ΦΦΦΦ, 表明尾数求和的结果 > 1,此时仅需要执行一次右移规格化, 阶码加 1 ,尾数形式即为00.1Φ…Φ 或 11.0Φ…Φ。

3.浮点数加减运算方法及步骤

设 x = 2^(Ex) • Mx y = 2^(Ey) • My
则: x + y = (2^(Ex-Ey) • Mx + My ) × 2^(Ey) (Ey ≥ Ex)

  • ①对阶
    a.求阶差;
    b.右移阶码小的浮点数的尾数并同步增加其阶码,直至两数阶码相等
  • ②尾数加/减:尾数加/减运算 (用对阶后的尾数)
  • ③结果规格化
  • ④舍入
    右移规格化时可能丢失一些低位的数值位, 为提高精度, 可采取舍入的方法:
    a.0 舍 1 入 : 若右移出的是1则在最低位加1;
    b.恒置 1 : 只要数字位1被移掉,就将最后一位恒置成1。
  • ⑤溢出处理
    浮点数的溢出标志: 阶码溢出
    a.阶码上溢 : 阶码的符号位为 01
    b.阶码下溢: 阶码的符号位为 10

4.浮点数加减运算举例

例1: 设 x = 2^(010) × 0.11011011 y = 2 ^(100) × (- 0.10101100) 求 x+y
: 先用补码形式表示x 和 y
        [X]补 = 00 010 , 00.11011011
        [Y]补 = 00 100 ,11.01010100
        (1) 对阶
        [ΔE]补 =[Ex]补 + [ - Ey]补 = 00010 + 11100 = 11 110
        ∴ ΔE = – 2 x 的阶码 小于 y 的阶码
        将x 的尾数向右移动2位,同时阶码加 2 ,对阶后的 x 为:
         [X]补 = 00 100 , 00.0011011011
        (2)尾数运算
        00.00110110 11
        +11.01010100
        ————————
        11.1000101011
        (3) 尾数规格化处理
        分析发现,只左移一次即可达到规格化要求。规格化后的结果为:
        [X+ Y]补=00 011 ,11 . 000101011
        (4) 舍入( 0 舍 1入)
        在结果尾数的最低位加1,最后的结果为:
         [X+ Y]补= 00 011 ,11. 00010110
         X+Y = – 0.11101010 × 2^(011)

例2: 浮点数加减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。若有两个数X=27×29/32,Y=25×5/8,则用浮点加法计算X+Y的最终结果是:
        A.00111 1100010  B.00111 0100010    
        C.01000 0010001  D. 发生溢出 (✔)
解题思路:
        a.X= 2 00111 × 0.11101; Y = 2 00101 × 0.101 ;对阶后大的阶码为00111
        b.位数相加后的结果为:01.00010
        c.尾数需右移规格化,同时阶码加1后变成 01 000

本篇笔记整理:Code_流苏(CSDN)
笔记内容学习资料:计算机组成原理微课版(谭志虎、秦磊华等编著)
课件资料及视频学习:MOOC计算机组成原理(华中科大)
计算机组成原理专栏——笔记及测验练习都在这
如果对大家有帮助的话,希望大家能多多点赞+关注!这样我动力会更足哦! ღ( ´・ᴗ・` )比心。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Code_流苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值