- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 运算方法和运算器;2.1 数据与文字的表示方法;定点纯小数的表示范围:;[例]:某机器采用8位定点整数表示方式,尾数是7位,数符是1位,问最大的正数是多少?最小的负数是多少?若采用16位定点整数表示方式,尾数是15位,数符是1位,问最大的正数是多少?最小的负数是多少?;2)浮点表示:定点数表示的数的范围有限,为了扩展数的表示范围,按照科学记数法表示数据的方式,任何一个二进制数N都可以表示成如下的格式:;定点表示---机器码
一般书写所表示的数据称为真值,在计算机中通常把符号位和数字位一起编码来表示相应的数,这些编码称为机器码。常用的机器码有原码、反码、补码和移码。;原码的特点:
原码的数值部分是该数的绝对值,最高位表示符号位,最高位为0是正数,最高位为1是负数。
表示范围: -2nX2n (若n=8即:-128X128);2)补码
我们以钟表对时为例说明补码的概念。假设现在的标准时间为4点正;而有一只表已经7点了,为了校准时间,可以采用两种方法:
一是将时针向后退3格,即7-3=4 mod 12;
一是将时针向前拨9格,即7+9=4 mod 12;
这两种方法都能对准到4点,由此可以看出,-3和+9在对12求余数时是等价的,我们称9是(-3)对12的补码,可以用数学公式表示: -3=+9(mod12)
同理: -4=+8(mod12) -5=+7(mod12)
mod12的意思就是12模数,这个“模”表示被丢掉的数值。上式在数学上称为同余式。;0;考虑计算机中的8位补码表示:;补码的优点
1)补码表示的负数范围可以到2n
2)补码表示的数据没有符号位(我们还是习惯上认为补码最高位为符号位); 对于一个真值x,用n位定点整数表示的补码形式为xn-1…x1x0, xn-1为“符号位”,其补码表示的定义是:;3)反码:正数的反码等于原码,负数的反码等于除符号位外其余二进制数码0变成1,1变成0。
正数: [x]反 = [x]原 = x
负数: 符号位不变,其余变反;补码规则:正数的补码等于原码,负数的补码等于反码加1。
正数: [x]补= [x]原
负数: [x]补= [x]反 +1 采用8位定点移码表示,以x表示真值,则:
[x]移=27+x = 128 + x?
例如:当正数x=+1010101时:
[x]移=27+x=27 +10101011,1010101
当负数x=-1010101时:
[x]移=27+x=27 -10101010,0101011
注意:移码中最左边一位是符号位。显然,移码中符号位表示的规律与原码、补码、反码相反。即1表示正数,0表示负数。;(1.75)10 =(1.11)2
=1.11×20
=0.111×21
=0.0111×22 ??? ;E位(8bit):阶码,IEEE754规定此阶码是比实际数据的指数真值多127。如果浮点数的指数真值是e,则阶码E=e+127 ;M位(23)位:尾数,小数点在尾数域的最前面,为了尾数的表示精度提高一位,IEEE规格化浮点数规定小数点左边一位必须为1,即1.M(如1.75=1.11×20),该位经常不予存储,所以M位存储的是有效数据的小数部分,因此尾数域M所表示的值应该是1.M。;???????????????????????????????????????????
指数e=阶码-12701111111=(3)10
尾数1.M=1.011 0110 0000 0000 0000 0000=1.011011
于是有x=(-1)s×(1.M)×2e
=+(1.011011)×23=+1011.011=(11.375)10 ;???????????????????????????????????????????
指数e=阶码-12701111111=(-1)10
尾数1.M=1.001 0001 0000 0000 0000 0000=1.0010001
于是有x=(-1)s×(1.M)×2e
=+(1.0010001)×2-1=+0(0.5625)10 ;首先分别将整数和分数部分转换成二进制数:
(20.59375)
文档评论(0)