浅谈限位数理论与计算机CPU设计.PDFVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈限位数理论与计算机CPU设计

浅谈限位数理论与计算机CPU 设计 姜咏江 对外经济贸易大学 关键词:计算机体系结构,限位数,硬件,软件 1 引言 计算机发展到今天,虽然各方面已经相当的完备,然而设计的基本理论和方法上仍然存在着“臃肿” 的问题。由于机器表数理论的不完整,使计算机运算器的设计复杂多变,不仅影响了人们对计算机的深 入理解,而且也为计算机的设计制造带来了不应有的成本损失。从西方传入我国的计算机数制理论不仅 庞杂,而且在理论思想上有些本末倒置,在没有给出实数如何表示的情况下,反过来定义二进制数表示 方法。例如,n 是非负整数时,“补码制”表示小数和整数是这样来定义的: 其中 (1)式表示小数,(2)式表示整数。 这种定义方式给计算机的数值计算设计造成了模棱两可的难题。这种定义带来的问题是: 问题 1,是不是只有二进制数才有补码,对数制来说有没有一般性? 问题2,补码中有没有小数点和正负号?机器将如何表示? 问题3,数值计算对机器来说没有统一的理论方法? 实际,在设计计算机的时候根本不需要什么小数点,也不需要什么符号位。如果非要按照这个定义 去搞计算机的运算器设计,那么繁琐是不可避免的。 我国计算机界长期不能很好地掌握计算机核心部件的设计方法,就和这种不着边际的补码制定义有 很大的关系。 2 机器表示数 我们将位数固定只用数码表示的数叫 “限位数”。为了表示出限位数的长度,无效数码不能够省略。 限位数适合用机器表示。在某种规定之下,限位数可以直接表示一定范围的正负数。 2.1 算盘记数 在人类的发展过程中,一项最伟大的发明就是用数码记数。我们将0、1、2、3、4、5、6、7、8、9 这十个数码按照 “逢十进一”的规则左右排列,就得到了无符号整数。如果我们 “认定”数码间的某一 位置是 “小数点”,再在数的最左边加上 “+”、“-”号,那么就可以表达我们实际当中所需要的任何正负 数了。用机器能不能这样表达这种数?这就是机器记数问题。 2.1.1 算盘记数的规定 算盘就是一种记数的机器。在设计算盘的时候,人们并没有给算盘单独设计小数点或正负号,因为 在使用算盘的时候,人们可以根据实际需要加以“认定”正负和小数点。使用算盘所需要的是如何表示 每一位数码,以及数码间的变换规则。图 1这种算盘每一位都可以用 “珠”表示十进制的数码,左右位 之间遵循 “逢十进一”,而上下档之间遵循 “上一替下五”的规则变化。 13 这个13位的算盘最多可以表示10 个不同的无符号整数,我们不妨称这总个数为 “限数”,因为它 - 1- 13 限制着 13位数的数量。能不能用这10 个无符号整数表示出正负整数和零?这是可以做到的。 图 1 算盘 2.1.2 用算盘表示正负数 13 我们可以将这10 个数从中间分开,用较大的那一部分表示较小哪一部分的相反数,对应的规则是: 如果两个数的和是限数。我们就用对应的大数代表较小数的相反数。由于0 没有一个13位数和它相加是 13 限数,所以0 没有正负。又因为这 10 个整数的中间分界是5000000000000,它和自身相加为限数,为 了避免 “二义性”,规定它是负数。于是这个算盘可以表示-5000000000000~+4999999999999 的整数。 我们将这种用限位数表示正负数的规定方法叫 “对称制”。 为了区分限位数表示的两种数值,我们将限位数直接表示的无符号数叫“面值”,而将隐含表示的有 符号十进制数叫 “值”。 由面值来得到值的方法分为两步,首先判别正负,其次求值。判断值为正负数的方法很简单,对十 进制来说,只要看面值的 “最高位”数码与 “5”的关系就可以了,“小于5是正数或零,不然是负数”。 13 如果由面值x 判断出是正数,那么值就是x。如果判断x 是负数,那么它的值是 –(10

文档评论(0)

suijiazhuang1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档