学习笔记——计算机组成原理第二章浮点数与算术逻辑单元

一、浮点数的表示

  • N = r E ∗ M \displaystyle N=r^E*M N=rEM
  • E是阶码,M是尾数,r是阶码的底,默认为 r = 2 \displaystyle r=2 r=2
J f J_f Jf J 1 J 2 . . . J m J_1J_2...J_m J1J2...Jm S f S_f Sf S 1 S 2 . . . S m S_1S_2...S_m S1S2...Sm
阶符阶码的数值部分数符尾数的数值部分

1.阶码

  • 用补码或者移码表示,用于表示范围

2.尾数

  • 用原码或者补码表示,尾数的位数反映精度


二、规格化浮点数

  • 含义:尾数最高位必须是个有效值,也就是不为0

1.左规

  • 当运算结果尾数最高位为0时,尾数数值部分全体左移一位,阶码减一

2.右规

  • 当运算结果发生符号位溢出时,尾数部分全体右移一位,阶码加一


三、IEEE754标准

1.规则概念

  • 自动省略尾数数值最高位的1
数符移码表示阶码尾数数值位用原码表示
  • 位数表

    数符阶码尾数数值总位数偏移量
    短浮点数182332127
    长浮点数11152641023
    临时浮点数115648016383
  • 真值表示

    短浮点数: ( − 1 ) 数 符 ∗ 1. M ∗ 2 E − 127 (-1)^{数符}*1.M *2^{E-127} (1)1.M2E127
    长浮点数: ( − 1 ) 数 符 ∗ 1. M ∗ 2 E − 1023 (-1)^{数符}*1.M *2^{E-1023} (1)1.M2E1023

2.一些规定

  • E = 0 且 M = 0 , 真 值 为 0 E=0且M=0,真值为0 E=0M=00
  • E = 0 且 M 不 等 于 0 , 为 非 规 格 化 数 。 真 值 = ( − 1 ) 数 符 ∗ 0. M ∗ 2 126 E=0且M不等于0,为非规格化数。真值=(-1)^{数符}*0.M *2^{126} E=0M0=(1)0.M2126
  • 254 ≥ E ≥ 1 时 , 正 常 计 算 真 值 \displaystyle254\geq E \geq 1时,正常计算真值 254E1
  • E = 255 且 M ≠ 0 时 , 真 值 为 N a N E=255且M≠0时,真值为NaN E=255M=0NaN
  • E = 255 且 M = 0 时 , 真 值 为 正 负 无 穷 ( 看 符 号 ) E=255且M=0时,真值为正负无穷(看符号) E=255M=0


四、浮点数加减运算

  • X = − 5 256 , Y = + 59 1024 , 按 补 码 进 行 X − Y 运 算 , 阶 符 取 2 位 , 阶 码 取 3 位 , 数 符 取 2 位 , 尾 数 取 9 位 \displaystyle X=-\frac{5}{256},Y=+\frac{59}{1024},按补码进行X-Y运算,阶符取2位,阶码取3位,数符取2位,尾数取9位 X=2565,Y=+102459,XY,2329

1.真值到机器数转换

  • X = − 101 ∗ 2 − 8 X=-101*2^{-8} X=10128 Y = + 111011 ∗ 2 − 10 Y=+111011*2^{-10} Y=+111011210
    X = − 0.101 ∗ 2 − 5 X=-0.101*2^{-5} X=0.10125 Y = + 0.111011 ∗ 2 − 4 Y=+0.111011*2^{-4} Y=+0.11101124
    X = − 0.101 ∗ 2 − 101 X=-0.101*2^{-101} X=0.1012101 Y = + 0.111011 ∗ 2 − 100 Y=+0.111011*2^{-100} Y=+0.1110112100

  • X = 11011 , 11.011000000 X=11011, 11.011000000 X=11011,11.011000000

  • Y = 11100 , 00.1111011000 Y=11100,00.1111011000 Y=11100,00.1111011000

2.对阶(小阶变大阶)

  • [ x ] 补 + [ − y ] 补 = 11011 + 00100 = 111111 [x]_{补}+[-y]_{补}=11011+00100=111111 [x]+[y]=11011+00100=111111
  • 阶码差为-1

3.尾数加减

  • 尾数进行 [ x ] 补 + [ − y ] 补 [x]_{补}+[-y]_{补} [x]+[y]

4.规格化

  • 将得到结果进行规格化

5.舍入

①0舍1入法
  • 类似十进制的四舍五入
    右移时,移去0,则舍去
    右移时,移去1,则尾数加1,可能尾数又溢出,此时再做一次右规
②恒置1法
  • 右移不论去1还是0,都把尾数末尾置1

6.溢出判断

  • 阶码上溢,需进行中断处理
  • 阶码下溢,按机器0处理
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值