计算机组成原理-第2章 信息表示与编码.

上传人:我** 文档编号:117122813 上传时间:2019-11-18 格式:PPT 页数:79 大小:883.50KB
返回 下载 相关 举报
计算机组成原理-第2章 信息表示与编码._第1页
第1页 / 共79页
计算机组成原理-第2章 信息表示与编码._第2页
第2页 / 共79页
计算机组成原理-第2章 信息表示与编码._第3页
第3页 / 共79页
计算机组成原理-第2章 信息表示与编码._第4页
第4页 / 共79页
计算机组成原理-第2章 信息表示与编码._第5页
第5页 / 共79页
点击查看更多>>
资源描述

《计算机组成原理-第2章 信息表示与编码.》由会员分享,可在线阅读,更多相关《计算机组成原理-第2章 信息表示与编码.(79页珍藏版)》请在金锄头文库上搜索。

1、计计 算算 机机 组组 成成 原原 理理 第二章 * 信息表示与编码 1、进位计数制以及相互转换 十进制,二进制,八进制,十六进制 2、数值数据和非数值数据的表示方法 数值数据 定点数-原反补移 浮点数-IEEE754 BCD码 非数值数据 ASCII、汉字 本讲安排本讲安排 本讲将解决的主要问题本讲将解决的主要问题 计算机中 数值数据 非数值数据 是如何表示? 1、进位计数制 进位计数制:用少量的数字符号,按先后次序把它们排成数位 ,由低到高进行计数,计满进位,这样的方法称为进位计数制 基数:进位制基本特征数,即所用到的数字符号个数 例如10进制 :09 十个数码表示,基数为10 权:进位制

2、中各位“1”所表示的值为该位的权 常见的进位制: 2,8,10,16进制 十进制数的多项式表示: N10=dn-1 10n-1 + dn-2 10n-2 + d1 101 + d0 100 + d-1 10-1 + d-2 10-2 + d-m 10-M m,n为正整数,其中n为整数位数;m为小数位数。Di表 示第i位的系数,10i称为该位的权. 1、十进制(Decimal) 基数:10; 符号:0,1,2,3,4,5,6,7,8,9 计算规律:“逢十进一 ”或“借一当十” 例如:一个十进制数123.45的表示 123.45 =1102+ 2101+ 3 100 + 410-1+ 510-2

3、注:等式左边为并列表示法等式右边为多项式表示法 2、二进制(Binary) 二进制的多项式表示: N2=dn-1 2n-1 + dn-2 2n-2 + d1 21 + d0 20 + d-1 2-1 + d-2 2-2 + d-m 2-m 其中n为整数位数;m为小数位数。Di表示第i位的系数,2i 称为该位的权. 基数:2 符号:0,1 计算规律:逢二进一或借一当二 3、十六进制(Hexadecimal) 二进制的多项式表示: N16=dn-1 16n-1 + dn-2 16n-2 + d1 161 + d0 160 + d-1 16-1 + d-2 16-2 + d-m 16-m 其中n为整

4、数位数;m为小数位数。Di表示第i位的系数,16i 称为该位的权. 基数:16 符号:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 计算规律:逢十六进一或借一当十六 例如十六进制数 (2C7.1F)16的表示 (2C7.1F)16=2 162+ 12 161+ 7 160+ 1 16-1+ 15 16-2 4 、进位计数制之间的转换 1)R进制转换成十进制的方法 按权展开法:先写成多项式,然后计算十进制结果. N= dn-1dn-2 d1d0d-1d-2 d-m =dn-1 Rn-1 + dn-2 Rn-2 + d1 R1 + d0 R0 + d-1 R-1 + d-2 R-

5、2 + d-m R-m 例:写出(1101.01)2,(237)8,(10D)16的十进制数 (10D)16=1162+13160=256+13=269 (1101.01)2=123+122+021+120+02-1+12-2 =8+4+1+0.25=13.25 (237)8=282+381+780 =128+24+7=159 2)十进制转换成二进制方法 一般分为两个方法: 方法1、整数部分的转换 除2取余法(基数除法) 小数部分的转换 乘2取整法(基数乘法) 方法2、减权定位法 除基取余法:把给定的除以基数,取余数作为最低位的系 数,然后继续将商部分除以 基数,余数作为次低位系数,重 复操作

6、直至商为 0 例如:用基数除法将(327)10转换成二进制数 2 327 余数 2 163 1 2 81 1 2 40 1 2 20 0 2 10 0 2 5 0 2 2 1 2 1 0 2 0 1 (327)10 =(101000111) 2 把给定的十进制小数乘以 2 ,取其整数作为二进制小数 的第一位,然后取小数部分继续乘以2,将所的整数部分作为 第二位小数,重复操作直至得到所需要的二进制小数 例如:将(0.8125) 10 转换成二进制小数 整数部分 0. 2 0.8125=1.625 1 2 0.625 =1.25 1 2 0.25 =0.5 0 2 0.5 =1 1 (0.8125

7、) 10 =(0.1101) 2 乘基取整法(小数部分的转换) 例:将(0.2)10 转换成二进制小数 整数部分 0 0.2 2 = 0.4 0 0.4 2 = 0.8 0 0.8 2 = 1.6 1 0.6 2 = 1.2 1 0.2 2 = 0.4 0 0.4 2 = 0.8 0 0.8 2 = 1.6 1 0.6 2 = 1.2 1 (0.2)10 = 0.001100110011. 2 减权定位法 将十进制数依次从二进制的最高位权值进行比较,若够减则对 应位置1,减去该权值后再往下比较,若不够减则对应位为0,重复操作 直至差数为0。 512 256 128 64 32 16 8 4 2

8、 1 例如:将 (327)10 转换成二进制数 256M 自动丢失, x补= X (Mod M) 当X0时 X + M = M - | X | M, x补= X + M (Mod M) 若定点小数的补码形式为 x0. x1 x2 xn,则补码表示的定 义是: (2)定点小数 x0 x 1 2 + x = 2 |x| -1 x 0 x补 = (mod 2) 例: x = +0.1011, 则 x补= 0.1011 x = -0.1011, 则 x补=10+x = 10.0000-0.1011= 1.0101 对于0,+0补-0补0.0000 (mod 2) 注意:0的补码表示只有一种形式。 若定

9、点整数的补码形式为 x0 x1 x2 xn,则补码表示的定义 是: (3)定点整数 x 2n+1 + x = 2n+1 |x| -2n x 0 0 x 2n x补 = (mod 2n+1 ) 例: x = +0111, 则 x补=00111 x = -0111, 则 x补=24+1 |-0111|=100000 0111=11001 n+1位补码整数: -2n _ 2n -1 n+1 位补码小数: - 1 _ 1- 2-n 若补码小数的位数是8位时,其该数表示的最大值、最小值: - 1 _ 1- 2-7 即 -1 127/128 若补码整数的位数是8位,其表示的最大值、最小值: -128 -

10、127 补码的表数范围 +0补=0.0000= +0原 -0原=1.0000 -0补=1.1111+0.0001=0.0000= +0补 在补码表示法中1.0000用作比最小的负数还小的一个数:-1 补码最高一位为符号位,0正1负; 补码零有唯一编码; 补码能很好用于加减运算。 (4)特点 补码满足 -x补+ x补=0 +7补=00111 最高位参与演算,与其它位一样对待。 -7补=11001 扩展方便。5位的补码扩展为8位 00111 00000111 11001 11111001 算术移位。假设 x补= x0. x1 x2 xn, x/2补= x0. x0 x1 x2 xn-1 最大的优点

11、就是将减法运算转换成加法运算。 X+Y补= X补+Y补 X - Y补 = X补+ -Y补 例如: X=(11)10=(1011)2 Y=(5)10=(0101)2 已知字长n=5位 X补+ -Y补 =01011+11011=100110=00110=(6)10 注: 最高1位已经超过字长故应丢掉 X - Y补= 0110补=00110 例 设x=1010,y=-1010,求x补和y补。 解:根据补码的编码方法,正数的补码与它的二进制表示相同 ,所以加上符号位0后得 x补=01010 x补=00001010 负数的补码的编码方法 1)将二进制代码前加0 0 1 0 1 0 2)再全部按位取反 1

12、 0 1 0 1 3)然后在最低位上加1 1 0 1 1 0 y补=10110 正数的补码在其二进制代码前加上符号位0; 负数的补码是将二进制代码前加0后,再全部按位取反,然后在 最低位上加1。 补码编码的简便方法 原码与补码之间的转换 已知原码求补码 正数 X补=X原 负数 符号除外,各位取反,末位加1 例:X= -1001001 X原=11001001 X补=10110110+1=10110111 X补= 27+1 +X=100000000-1001001= 10110111 1 0 0 0 0 0 0 0 0 - 1 0 0 1 0 0 1 1 0 1 1 0 1 1 1 更简单的方法是

13、? 由X补求-X补 运算过程是:将X补连同符号一起将各位取反,末位再加 1。 例:设字长N=8位 X= +100 1001 X补 = 0100 1001 各位取反 1011 0110 末位再加1 1011 0111 即: -X补= 1011 0111 求值方法 x = -x02 n + x 12 n-1 + + xn-12 + xn 例如:10000100 的真值为-128+4=-124 补码与真值之间的转换 补码 符号位为“1”-负,余下求补为数值部分 符号位为“0”-正,余下为数值部分 例:X补 = 0100 1001 X= 0100 1001 例:X补 =1000 0000 X=- 1000 0000B = 80H =-128 (1)定点小数定义 x (2 2-n) + x -1 x 0 0 x 1 x反 = 一般情况下, 对于正数 x = +0.x1x2xn, 则有: x反= 0.x1x2xn 对于负数 x = -0.x1x2xn,则有 x反= 1.x1x2xn 3、反码表示法 所谓反码, 就是二进制的各位数码0变为1,1变为0。 例: x = 0.10110 -0.10110 0.0000 x 反= (2)由反码求补码的公式 (2-2-n) + xx反 = 2 + x x补 = 由反码与补码的定义 得 : x反

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号