6.2 数的定点表示和浮点表示_第1页
6.2 数的定点表示和浮点表示_第2页
6.2 数的定点表示和浮点表示_第3页
6.2 数的定点表示和浮点表示_第4页
6.2 数的定点表示和浮点表示_第5页
已阅读5页,还剩11页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

第第章章 计算机的运算方法计算机的运算方法 6.1 无符号数和有符号数无符号数和有符号数 6.3 定点运算定点运算 6.2 数的定点表示和浮点表示数的定点表示和浮点表示 6.4 浮点四则运算浮点四则运算 6.5 算术逻辑单元算术逻辑单元 2015/6/9 6.2 数的定点表示和浮点表示数的定点表示和浮点表示 一、定点表示一、定点表示 二、浮点表示二、浮点表示 1. 浮点数的表示形式浮点数的表示形式 2. 浮点数的表示范围浮点数的表示范围 3. 浮点数的规格化形式浮点数的规格化形式 4. 浮点数的规格化浮点数的规格化 三、举例三、举例 四、四、IEEE 754 标准标准 2015/6/9 哈尔滨工业大学 刘宏伟 3636 6.2 数的定点表示和浮点表示数的定点表示和浮点表示 小数点按约定方式标出小数点按约定方式标出 一、定点表示一、定点表示 Sf S1S2 Sn 数 符 数 符 数值部分数值部分 小数点位置小数点位置 Sf S1S2 Sn 数 符 数 符 数值部分数值部分 小数点位置小数点位置 或或 定点机定点机 小数定点机小数定点机 整数定点机整数定点机 原码原码 补码补码 反码反码 (1 2-n) +(1 2-n) (2n 1) +( 2n 1) 1 +(1 2-n) 2n +( 2n 1) (1 2-n) +(1 2-n) (2n 1) +( 2n 1) 6.2 数的定点表示和浮点表示数的定点表示和浮点表示 一、定点表示一、定点表示 二、浮点表示二、浮点表示 1. 浮点数的表示形式浮点数的表示形式 2. 浮点数的表示范围浮点数的表示范围 3. 浮点数的规格化形式浮点数的规格化形式 4. 浮点数的规格化浮点数的规格化 三、举例三、举例 四、四、IEEE 754 标准标准 2015/6/9 哈尔滨工业大学 刘宏伟 3838 二、浮点表示二、浮点表示 为什么在计算机中要引入浮点数表示?为什么在计算机中要引入浮点数表示? 浮点表示的格式是什么?浮点表示的格式是什么? 尾尾数数和阶码的基值必须是和阶码的基值必须是2吗?基值的影响?吗?基值的影响? 表数范围与精度和哪些因素有关?表数范围与精度和哪些因素有关? 为什么要引入规格化表示为什么要引入规格化表示? 目前浮点数表示格式的标准是什么?目前浮点数表示格式的标准是什么? 2015/6/9 哈尔滨工业大学 刘宏伟 3939 二、浮点表示二、浮点表示 为什么要引入浮点数表示为什么要引入浮点数表示 编程编程困难,程序员要调节小数点的位置;困难,程序员要调节小数点的位置; 数的表示范围小,为了能表示两个大小数的表示范围小,为了能表示两个大小 相差很大的数据,需要很长的机器字长相差很大的数据,需要很长的机器字长; 例如:太阳的质量是例如:太阳的质量是0.2*1034克,一个电子克,一个电子 的质量大约为的质量大约为0.9*10-27克,两者的差距为克,两者的差距为 1061以上,若用定点数据表示:以上,若用定点数据表示:2x1061,解解 的,的,x203位位。 数据存储单元的利用率往往很低。数据存储单元的利用率往往很低。 二、浮点表示二、浮点表示 N = Srj 浮点数的一般形式浮点数的一般形式 S 尾数尾数 j 阶码阶码 r 尾数的基值尾数的基值 计算机中计算机中 r 取取 2、4、8、16 等等 当当 r = 2 N = 11.0101 = 0.110101210 = 1.1010121 = 1101.012-10 = 0.001101012100 计算机中计算机中 S 小数、可正可负小数、可正可负 j 整数、可正可负整数、可正可负 规格化数规格化数 二进制表示二进制表示 6.2 2015/6/9 41 1. 浮点数的表示形式浮点数的表示形式 Sf 代表浮点数的符号代表浮点数的符号 n 其位数反映浮点数的精度其位数反映浮点数的精度 m 其位数反映浮点数的表示范围其位数反映浮点数的表示范围 jf 和和 m 共同表示小数点的实际位置共同表示小数点的实际位置 6.2 jf j1 j2 jm Sf S1 S2 Sn j 阶码阶码 S 尾数尾数 阶 符 阶 符 数 符 数 符 阶码的阶码的 数值部分数值部分 尾数的数值部分尾数的数值部分 小数点位置小数点位置 2015/6/9 4242 哈尔滨工业大学 刘宏伟 2. 浮点数的表示范围浮点数的表示范围 2( 2 m1) ( 1 2n) 2( 2 m1) 2n 2( 2 m1) ( 1 2n) 2( 2 m1) 2n 最小负数最小负数 最大负数最大负数 最大正数最大正数 最小正数最小正数 负数区负数区 正数区正数区 下溢下溢 0 上溢上溢 上溢上溢 215 ( 1 2-10) 2-15 2-10 215 ( 1 2-10) 设设 m = 4 n =10 上溢上溢 阶码阶码 最大阶码最大阶码 下溢下溢 阶码阶码 最小阶码最小阶码 按按 机器零机器零 处理处理 6.2 2-15 2-10 2015/6/9 4343 练习练习 设机器数字长为设机器数字长为 24 位,欲表示位,欲表示3万的十进制数,万的十进制数, 试问在保证数的最大精度的前提下,除阶符、数符各试问在保证数的最大精度的前提下,除阶符、数符各 取取1 位外,阶码、尾数各取几位?位外,阶码、尾数各取几位? 满足满足 最大精度最大精度 可取可取 m = 4,n = 18 解:解: m = 4,5,6, 如果是定点数如果是定点数15 位二进制数可反映位二进制数可反映 3 万之间的十进制数万之间的十进制数 215 = 32768 214 = 16384 6.2 215 0. n位位 2015/6/9 4444 哈尔滨工业大学 刘宏伟 3. 浮点数的规格化形式浮点数的规格化形式 r = 2 尾数最高位为尾数最高位为 1 r = 4 尾数最高尾数最高 2 位不全为位不全为 0 r = 8 尾数最高尾数最高 3 位不全为位不全为 0 4. 浮点数的规格化浮点数的规格化 r = 2 左规左规 尾数左移尾数左移 1 位,阶码减位,阶码减 1 右规右规 尾数右移尾数右移 1 位,阶码加位,阶码加 1 r = 4 左规左规 尾数左移尾数左移 2 位,阶码减位,阶码减 1 右规右规 尾数右移尾数右移 2 位,阶码加位,阶码加 1 r = 8 左规左规 尾数左移尾数左移 3 位,阶码减位,阶码减 1 右规右规 尾数右移尾数右移 3 位,阶码加位,阶码加 1 基数基数 r 越大,可表示的浮点数的范围越大越大,可表示的浮点数的范围越大 基数不同,浮点数的基数不同,浮点数的 规格化形式不同规格化形式不同 基数基数 r 越大,浮点数的精度降低越大,浮点数的精度降低 6.2 4545 例如:例如: 最大正数最大正数 = 215( 1210 ) 2+1111 0.1111111111 10 个个 1 最小正数最小正数 最大负数最大负数 最小负数最小负数 = 21521 = 215( 12 10 ) = 216 = 21521 = 216 2-1111 0.1000000000 9 个个 0 2-1111 ( 0.1000000000) 9 个个 0 2+1111 ( 0.1111111111) 10 个个 1 设设 m = 4,n = 10,r = 2 尾数规格化后的浮点数表示范围尾数规格化后的浮点数表示范围 6.2 2015/6/9 三、举例三、举例 例例 6.13 将将 + 写成二进制定点数、浮点数及在定点写成二进制定点数、浮点数及在定点 机和浮点机中的机器数形式。其中数值部分均取机和浮点机中的机器数形式。其中数值部分均取 10 位,位, 数符取数符取 1 位,浮点数阶码取位,浮点数阶码取 5 位(含位(含1位阶符位阶符),尾数),尾数 规格化。规格化。 19 128 解:解: 设设 x = + 19 128 二进制形式二进制形式 定点表示定点表示 浮点规格化形式浮点规格化形式 x原 原 = 1, 0010; 0. 1001100000 x补 补 = 1, 1110; 0. 1001100000 x反 反 = 1, 1101; 0. 1001100000 定点机中定点机中 浮点机中浮点机中 000 x = 0.0010011 x = 0.0010011 x = 0.10011000002-10 x原 原 = x补补 = x反反 = 0.0010011000 6.2 2015/6/9 x = 111010 0000 例例 6.14 将将 58 表示成二进制定点数和浮点数,表示成二进制定点数和浮点数, 并写出它在定点机和浮点机中的三种机器数及阶码并写出它在定点机和浮点机中的三种机器数及阶码 为移码、尾数为补码的形式(其他要求同上例)。为移码、尾数为补码的形式(其他要求同上例)。 解:解: 设设 x = 58 二进制形式二进制形式 定点表示定点表示 浮点规格化形式浮点规格化形式 x原 原 = 1, 0000111010 x补 补 = 1, 1111000110 x反 反 = 1, 1111000101 x原 原 = 0, 0110; 1. 1110100000 x补 补 = 0, 0110; 1. 0001100000 x反 反 = 0, 0110; 1. 0001011111 定点机中定点机中 浮点机中浮点机中 x阶移、尾补 阶移、尾补 = 1, 0110; 1. 0001100000 x = 111010 x = (0.1110100000) 2110 6.2 当浮点数当浮点数 尾数为尾数为 0 时,不论其阶码为何值时,不论其阶码为何值 按机器零处理按机器零处理 机器零机器零 当浮点数当浮点数 阶码等于或小于它所表示的最小阶码等于或小于它所表示的最小 数数 时,不论尾数为何值,按机器零处理时,不论尾数为何值,按机器零处理 如如 m = 4 n = 10 当阶码用移码,尾数用补码表示时,机器零为当阶码用移码,尾数用补码表示时,机器零为 0, 0 0 0 0;0. 0 0 0 1, 0 0 0 0 ; . , ; 0. 0 0 0 有利于机器中“有利于机器中“ 判判 0 ” 电路的实现电路的实现 当阶码和尾数都用补码表示时,机器零为当阶码和尾数都用补码表示时,机器零为 6.2 (阶码(阶码 = 16) 4

温馨提示

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

最新文档

评论

0/150

提交评论