定点小数在计算机中的应用,定点数在机器内的表示可表示定点小数和整数.PPT...

定点数在机器内的表示可表示定点小数和整数

* 计算机组成原理第二章 知识点一:机器层次的定点数表示 主讲教师:秦磊华 问题引入 数据是计算机处理的对象,计算机中如何表示定点数? 学习建议 ?系统观:与高级语言程序设计建立联系,关注计算机层数据类型的定义与程序设计中数据类型选择对运算器结果的影响;同时与运算方法与运算器设计建立联系。 ?构造观:定点数在机器层次的表示。 1.定点数在机器内的表示 ?可表示定点小数和整数。 ?表现形式:X0.X1X2X3X4……..Xn 定点小数 定点整数 2.常见的四种机器数据 1)真值:符号用“+”、“-”表示的数据表示方法。 2)机器数:符号数值化的数据表示方法, 用0、1表示符号。 3)设定点整数的形式为X0X1X2X3…Xn (X0为符号位) 4)原码 ?特点: a)表示简单   b)运算复杂:设置加法、减法器。(分同号和异号)   c)0的表示不唯一: 000…000 ,100…00 ?整数表示范围:?( 2n ? 1 ) ≤ [x]原 ≤ 2n ? 1 5)反码 ?x = ?10101 则 [x]反 = 101010 ?整数表示范围:?( 2 n ? 1 ) ≤ [x]反 ≤ 2 n ? 1 [x]反= 01101 [y]反 = 10101 01101 +10101 100010 + 1 00011 a)表示相对原码复杂;  b)运算相对原码简单:符号位参加运算, 只需要设置加法器。但符号位的进位位需要加到最低位; c)0的表示不唯一: 000…000 , 111…11。 ?特点: 6)补码 ?设 x= -10101 [x]补 = 101011 ?特点: a)表示相对复杂 b)运算简单:只需设置加法器; c)0的表示唯一。 ?模:符号位进位后所在位的权值 ?整数表示范围:? 2 n ≤ [x]补 ≤ 2 n ? 1 7)移码 ?对真值X上加偏置值,使X在数轴上偏移到非负区域; ?设 x= -10101 [x]移 = 001011 ?定点整数:[+0]移 =[-0]移 = 1000…0 ?移码定点整数的数据表示范围:-2n ≤[X]移 ≤ 2n ? 1 3.符号位扩展 ?一些情况下,为减少占用空间或使用方便,较小的数值常用比较少的bit位来表示而不是使用全字长 。 ?解决问题的方法:按字长进行符号位扩展 ?带来运算上的问题 :[x]补 = 010100 , [y]补 = 1011 010100 + 1011 011111 010100 + 11 1011 1 001111 20 ?5 = 15,结果显然不对 某计算机字长8位,三种机器数的符号扩展如下 X = - 101110101 补码10100 反码11011 原码 符号扩展通过符号扩展电路完成 4.应用举例 例1:32位机中,某C语言中有下列代码: Short s= ?8193; unsigned short us=s; 则执行上述代码后,us的值为多少? 分析:Short型数为16位, ?8193 对应的二进制数为:1101111111111111 变成无符号数后的值为65535 ? 8192 = 57343 体会数据格式变化对运算结果的影响! *

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值