浮点数规格化和教案_第1页
浮点数规格化和教案_第2页
浮点数规格化和教案_第3页
浮点数规格化和教案_第4页
浮点数规格化和教案_第5页
已阅读5页,还剩1页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学习必备欢迎下载第一节X ( 1)S× (1.M)×2E 127e E 127X ( 1)S× (1.M)×2E 1023e E 1023我承认以前对这俩公式避之不及不予深究努力自己说服自己而未能得逞, 部分原因是跟“移码与真值的关系”扯上关系,这 “移码与真值的关系”想搞清先得把引入移码的充分理由给我个说法, 不幸玩过头正事误了。上回说了“补码省心移码悦目”能算是今时不同往日了吧,现在轮到对IEEE754 浮点数规格化表示法杀无赦去死吧。首先,“ IEEE 规格化形式”是对“传统规格化形式”进一步严格要求来的。IEEE 规格化形式唯一,而浮点数记法多种

2、多样。(1.75)10=1.11 × 20 (IEEE 规格化表示 )=0.111× 21 (传统规格化表示)=0.0111 ×22=0.00111 23×其次,既然 IEEE 想到对“传统规格化形式”进一步修订当然有目的,你以为作无用功呐,关键目的是什么?规格化的目的同理。修改阶码同时左右移小数点使尾数域最高有效位固定为1,尾数就以 ta 所可能变化成的最大形式出现,即使遭遇类似截断的操作仍可保持尽可能高的精度。有类错误我这种大秀逗极善于犯!就是不理会左右关系不经过大脑直接作问题少女状问很白的问题: “移码和真值的关系是E=27( 或 210)+X ,

3、那 X=E-27( 或 210),在怎么着里面数该是 128(或 1024),咋是 127(或 1023)?”当E=M=全0E(移码 )=全 0,对应真值 -128M( 补码 )=全 0,对应真值 0E=M= 全 0,真值 X=0 -128=0结合符号位 S 为 0 或 1 分正零和负零当 E=全 1,M= 全 0E(移码 )=全 1,对应真值 +127M( 补码 )=全 0,对应真值 0E=全 1, M= 全 0,真值 X=0 127=结合符号位 S 为 0 或 1 分+和 -要除去表示零和无穷大这2 种特殊情况指数偏移值不选 128(10000000) ,而选 127(01111111)对

4、 IEEE32 位规格化浮点数8 位移码 (隐含 1 位符号位 )原本表示范围是-128 +127(除去全 1(+127) 全 0(-128) 剩下 -127 +126 ?)实际可用指数值 (即阶码真值 )e 范围是 -126 +127加上偏移值后,阶码 E 的范围变为 1 254以 10 的幂表示,绝对值的范围是10-381038假设由 S,E,M 三个域组成的一个32 位二进制字所表示的非零规格化浮点数,真值表示为: ( 1)s× (1.M) × 2E 128它所表示的规格化的最大正数、最小正数、最大负数、最小负数是多少?第二节1 、什么是 IEEE754标准用来规范化

5、浮点数,其格式是学习必备欢迎下载( 1)32 位( 1) s×(1. ) ×2 127e127( 2)64 位( 1) s×(1. ) ×2 1023e 1023其中, s 是符号位, M 是尾数, E 是阶码, e 是实际的指数值表 三种形式的 IEEE754浮点数格式参数单精度浮点数双精度浮点数扩充精度浮点数浮点数字长326480尾数长度 P235264符号位 S111指数长度 E81115最大指数+127+1023+16383最小指数-126-1022-16382指数偏移量+127+1023+16383可表示的实数范围10 -38 10 3810

6、-308 10 30810 -4932 10 4932浮点数表示格式如下:数阶符符阶码E尾数M号EsS2 、为什么阶码的偏移量是127 ?先看下什么机器零:(1) 当浮点数尾数 M=0 ,无论阶码 E 为何值,则该浮点数为 0 值(2) 当阶码的值遇到比它所能表示的最小值还小时,不管尾数M 为何值,则浮点数为0 值(1) 、 (2) 中的零值称为机器零以 32 位浮点数为例:学习必备欢迎下载" 当阶码 E 为全 0 且尾数 M 也为全 0 时,表示的真值 x 为零,结合符号位 S 为 0 或 1,有正零和负零之分。当阶码 E 为全 1 且尾数 M 为全 0 时,表示的真值 x 为无穷

7、大,结合符号位 S 为 0 或 1 ,也有 + 和- 之分。这样在32 位浮点数表示中,要除去E 用全 0 (-128 )和全 1(255)10 表示零和无穷大的特殊情况,指数的偏移值不选128( 10000000),而选 127( 01111111)。对于规格化浮点数, E 的范围变为1 到 254 ,真正的指数值 e则为 -126 到+127。因此 32 位浮点数表示的绝对值的范围是 10 -38 1038 (以 10 的幂表示)。 " 引自 白中英 <<计算机组成原理 >>S(1 位)E(8 位)M(23 位 )N(32位)符00(-1) S *2 E-

8、127 ·(1.M)为规格化数0不等于 0(-1)S*2 -126*( 0 .M)为非规格化数号1到254之间不等于 0(-1)S *2 E-127 *( 1 .M)为规格化数255不等于 0NaN( 非数值 )位2550无穷大其中红色字 0、1表示隐含位,注意当数字 N 为非规格化数或是 0 时,隐含位是 0 。如果选择偏移值 128 时,假设指数(不是阶码)为 +127 ,则阶码为 127+128=255,全为 1,由上表可知 N 为 NaN 和无穷大假设指数为 0(包括正0 和负 0 ),正 0+128=128,负 0(补码) +128=0, 由上可知 E=0时,存在非规格化数

9、由于 8 位 E 中,7 位表示有效数字,不能从这7 位下手,只能更改偏移值为 127 (可以是 0127,IEEE745规定为127 )3 、为什么阶码表示的最小指数是-126呢?有 2 中描述可以得到,当偏移量为127 时,若最小指数是-127 ,则 127+(-127)=0,E=0,存在非规格化数故取 -126 ,这也符合 E 的表示范围1254。二进制浮点数的表示, 由于不同机器所选的基值、 尾数位长度和阶码位长度不同,因此对浮点数表示有较大差别, 这就不利于软件在不同计算机间的移植。 美国 IEEE (电子及电子工程师协会)为此提出了一个从系统结构角度支持浮点数的表示方法, 称之为

10、IEEE 标准 754(IEEE ,1985) ,当今流行的计算机几乎都采用这一标准。学习必备欢迎下载IEEE 754 在标识符点数时, 每个浮点数均由 3 个部分组成:符号位 S,指数部分 E 和尾数部分 M。浮点数可采用以下四种基本格式:(1)单精度格式 (32 位):E=8 位, M=23 位。(2)扩展单精度格式: E 11位, M 31 位。(3)双精度格式 (64) 位: E=11 位, M=52 位。(4)扩展双精度格式 (64 位): E 15位, M 63 位。其中,单精度格式 (32 位 )中的阶码为 8 位, 另有一位尾数的符号位 S,处在最高位。如图所示。应该指出的是,

11、浮点数的分数部分与有效位部分两者是不同的, 由于 IEEE754 标准约定在小数点左部有一位隐含位, 从而使其有效位实际有 24 位,这样便使尾数的有效值变为 1.M 。阶码部分采用移码表示, 移码值为 127 ,从而使阶码值的范围由原来的 1 到 254 ,经移码后变为 -126 到+127 。IEEE 754 标准的单精度和双精度浮点数表示格式。其中,阶码值0 和 255 分别用来表示特殊数值:当阶码值为255 时,若分数部分为 0,则表示无穷大;若分数部分不为 0,则认为这是一个 非数值 。当阶码和尾数均为0 时则表示该数值为 0,因为非零数的有效位总是1,因此特别约定,这表示为0。当阶

12、码为 0,尾数不为 0 时,该数绝对值较小,允许采用比最小规格化数还要小的数表示。概括起来,由 32 位单精度所表示的IEEE 754 标准浮点数 N 可以有如下的解释:若 E=0,且 M=0,则 N 为 0。若 E=0 ,且 M0,则 N=(-1) S·2-126·(0.M) 。为非规格化数。若 1 E 254,则 N=(-1) S·2E-127 ·(1.M) 。为规格化数。若 E=255 ,且 M0,则 N=NaN (非数值 )。若 E=255 ,且 M=0 ,则 N=(-1) S(无穷大)。由此可见, IEEE 754 标准使 0 有了精确表示,同

13、时也明确地表示了无穷大,所以,当 a/0(a 0)时得到结果值为 ±;当 0/0 时得到结果值较小的数,为了避免下溢而损失精度, 允许采用比最小规格化数还要小的数来表示, 这些数称为非规格化数 (Denormalnumber) 。应注意的是,非规格化数和正、负零的隐含位值不是1而是0。下面举两个例子来说明IEEE 754 标准浮点数的表示:(1)N=-1.5 ,它的单精度格式表示为:其中, S=1,E=127 ,M=0.5 ,因此 N=-1.5 。(2)以下的 32 位数所表示的单精度浮点数为多少?其中, S=1,E=129 ,M=0.25 ,由公式可知 N=-5 。第 1次课(第

14、1章第 1讲)授课章节课程简介第 1 章计算机系统概论学习必备欢迎下载1.1计算机的分类1.2计算机的发展简史1.3计算机的硬件学时安排课程简介-0.5 学时第 1 章 计算机系统概论 1.1 计算机的分类1.2计算机的发展简史-0.5 学时1.3计算机的硬件-1 学时教学目的本次课的主要内容为有关计算机系统的组织和构成进行概要性介绍,为以后的进一步学习打下基础。通过本次课的学习,要求学生:1.明确本课程的地位和作用;2.了解计算机的分类和发展简史;3.理解计算机硬件系统的构成,以及计算机进行数据处理的过程。教学难点和重点本次课的教学难点在于:计算机硬件系统的构成和作用。这点对于建立整机思想相当重要,类比人的计算处理过程进行介绍。授课安排本次课为课程的第一次课,首先要对课程在整个教学体系中的地位和作用进行讲解。同时该课程是本专业的考研统考课程,因此对于考研的要求也应结合考研大纲进行说明。在此次课程中, 主要对第一章的部分内容进行介绍。在介绍课本知识之前,要先带领学生一起认识计算机硬件各部件,并熟悉计算机硬件的功能划分。然后对于计算机的分类和发展简史, 这些内容应该在以前的引论课程中已经介绍,可以简单地回顾下,但这里有关计算机性能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论