- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机组成原理重点知识点讲解之CPU
计算机组成原理--重点知识点讲解之数据的表示和运算
溢出概念和判别方法溢出:计算机的字长是固定,所以它能够表示的数据范围也必然是确定的。在运算的过程中,结果超出了计算机可以表示的范围就是溢出。判别方法:书上给出的结论是如果原操作数符号相同,而结果与原操作数符号不同,就发生了溢出。溢出只有可能发生在:正+正, 负+负, 正-负, 负-正这4种情况下,正+正和负+负原操作数符号相同,符合判定方法的条件。而正-负,ALU中不存在减法器,减法实际上就是加补码完成的,而正-负实际上真正在ALU中的操作是正+(-负),而-负即为正,正-负实际情况其实就是正+正,同样负-正实际情况就是负+负。所以他们也是符合判定方法的条件。因此判定方法中的条件句“原操作数相同”则囊括了所有可能发生溢出的情况。到这里条件满足的只是可能,而不是一定。后面的条件“结果与原操作数符号不同”既出现了正+正=负,负+负=正的情况,出现这一情况的原因就是数值位产生了进位(这种进位不一定会溢出),但这个进位如果改变了结果按照正常原则应该出现的符号,则就是发生了溢出。这就是我对这个判定方法的感性认识。至于理性的数学证明,书上貌似是有的。这只是理论上的判定方法,如果严格按照这个方法来设计电路,判定电路仍然会很复杂,书上给出的是一位符号位判断溢出或2位符号位判断溢出,她们所利用的原理都是:数值位进位和符号位进位不同就产生溢出。我们按照前面的方法列出所有发生溢出的情况,然后用穷举法来说明这个结论的正确性。溢出发生的所有可能情况:符号位分别是 1 1,或者符号位是 0 0.按照前面的结果1 0是不会发生溢出的。如果数值位进位1,对于符号位1 1情况来说,1 1会进位1,数值位的进位进到符号位,符号位仍为1,符号未变没有发生溢出,此时符号位进位1,数值位进位1如果数值为进位0,对于符号位1 1来说,1 1进位1,数值位进位0会直接填入符号位,则符号位变成了0,符号发生改变,发生溢出,此时符号位进位1,数值位进位0如果数值位进位1,符号位为0 0,则符号位进位0,数值位进位1,填入符号位,则符号位变成了1,符号改变,发生溢出,此时符号位进位0,数值位进位1如果数值为进位0,符号位为0 0,符号位进位0,数值为进位0,填入符号位,符号未变,未发生溢出,此时符号位进位0,数值为进位1.统一前面4种情况,就能得出“数值位进位和符号位进位不同就产生溢出”。原码乘法器算是比较重点而且也应该是难点的章节了,希望我写下的东西能够对大家有所帮助,也希望有别人写下不同的看法。首先从10进制乘法开始理解,我们仔细看下竖式计算多位乘法(包括一位)的过程,理解乘法计算的过程是理解乘法器的重要基础。以具体例子来分析,比如132乘以124,我们无法直接得到结果,我们采用的乘法过程如下:首先拿乘数124的个位数4去乘以被乘数,得到一个结果528(这个结果一般是被记录在纸上).紧接着,我们又拿124的十进制位的2去乘以132,得到结果264.此时我们接着就把264左移一位得到2640,然后将这个结果加上528得到答案3168.再继续我们把124的百位1去乘以132,得到132,然后左移2位得到13200,然后加上之前的2640,得到15840.以上就是一个乘法的一般过程,它和我们常用的竖式乘法有一点点区别:竖式中所有结果一般是最后统一加起来,但我想一次一次加和统一加这并无本质区别。竖式中没有明显的左移过程,其实是有的,这点应该很容易看出来。因此一个乘法过程其实就是一个循环,(我们再不考虑符号位和硬件的限制)算法描述如下:mul(被乘数, 乘数){i = 0;
积 = 0;while(i 乘数长度) {j = 乘数第i位数值;临时积 = j * 被乘数;积 = 积 + (临时积左移i位);i++;
}
返回积;}
希望大家能够仔细理解这个,因为这才是理解乘法器的重中之重,至于其它2位,右移之类的内容,都是局限于硬件采用的技巧。2进制和十进制乘法比较:2进制乘法相对于十进制要简单很多,从注释里面可以看到。最后局限于硬件的限制,我只介绍下在硬件中,不局限单位还是双位,源码还是补码,只是他们公共部分个人觉的比较难以理解的部分.1.为什么采用右移?我们采用左移,计算机内部采用右移。这是为了方便而采用右移。我们的目的是的出乘法的结果,而对于这一目的积 = 积 + (临时积左移i位); 和左移积其实是完全等效的。而且算法里面我们每次要左移i位,右移积的话,每次在前面移动的基础上我们只需要移动一位。2.为什么可以把部分积结果左移溢出的部分放到乘数寄存器上去。我们从循环体可以看出 j = 被称数第i位数值而对于乘数已经被用过的位数,我们在后面的运算中完全不需要了,所以可以直接丢弃。(因为我们的目的是得到乘积的结果,至于要不要保护原来
您可能关注的文档
最近下载
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘笔试模拟试题及答案解析.docx VIP
- 人体结构与功能教案仅供参考.pptx VIP
- 物探报告范例.pdf VIP
- 三级养老护理员国家职业技能培训模块一项目三任务三协助老年人进行口腔吸痰.pptx VIP
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘考试备考题库及答案解析.docx VIP
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘笔试备考试题及答案解析.docx VIP
- 完整版2025年开学思政第一课.ppt VIP
- 2025年安徽皖江高速公路有限公司高速公路收费人员招聘考试备考试题及答案解析.docx VIP
- 写作载体与写作受体.ppt VIP
- 电子科技大学博士、硕士学位授权点一览表最终.docx VIP
文档评论(0)