您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 《计算机组成原理高分笔记》试读版本
天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!此文档由天勤论坛总结转载请注明出处!天道酬勤,厚德载物!天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!第二章数据的表示与运算····前篇:运算器的结构前篇:运算器的结构前篇:运算器的结构前篇:运算器的结构任何一种工具的产生,都是为了解决某种问题。挖土机的产生是为了挖土,空调的产生是为了调节室内温度等等。那运算器的产生当然也有它特定的作用。那就是进行算数运算(加减乘除)和逻辑运算(移位、与、或等等)。既然我们已经清楚了运算器产生的作用,那么应该怎么来设计运算器的结构呢?下面层层拨开!注意:考研大纲基本上没有涉及逻辑运算,讨论的都是算数运算!首先我们需要提出一个观点:任何算数运算都可以通过加法和移位两种操作来完成,只要这个观点成立,我们就可以得出运算器的核心部件就一定是加法器和移位器。至于这个观点是否正确,我们就来验证一下。(1)加法不用验证,肯定可以通过加法器来实现。(2)减法:下面我们来看一个十进制的例子:104-22=82,没错,结果正确,但是这个是减法,加法器不会做。那让我们换一种加法的思路来计算,即先求22相对于100的补码(补码后讲),即78;然后104+78=182,最后在对182取模,182mod100=82,可以得到一样的结果。就可以得出一个结论:减法确确实实可以用加法来实现。(3)乘法/除法:很明显,乘法可以用连续的加来实现,除法可以用连续的减(而减法又可用加法实现)来实现,进而乘法和除法都可以同加法来实现。综上,任何算数运算都可以通过加法和移位两种操作来完成。这个观点成立的话,我们就可以大致的画出运算器的基本结构了。如下图:从上面的分析可知,加法器和移位器是核心部件,下面的选择门和通用寄存器组是干什天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!么的?好像又看不懂了,别急,让我们来一一分析吧!首先我们分析一下加法器,加法器一般都是由与或非门或者半加器构成(后讲),这些器件都是没有记忆功能的。现在问题来了,参与运算的数和运算结果应该放在哪里?没错,放在通用寄存器里面,自然而然运算的结果就通过数据总线传递到通用寄存器组了。OK,通用寄存器组知道是干什么的,那选择门是什么东西?既然是叫寄存器组,说明至少得有2个寄存器吧。大家都知道加法是二目运算(需要2个操作数),那应该让哪2个寄存器里的数参与运算呢?没错,就需要选择门来进行选择。反过来想一想,如果通用寄存器组只有2个,显然选择门就可以不要了;甚至如果运算器有记忆功能,寄存器组都可以不要了。综上:运算的组成器件为:加法器、移位门、通用寄存器组、输入选择门、数据总线。运算器的结构讲解完毕,下面对考纲知识点一一突破!····大纲要求大纲要求大纲要求大纲要求一、数制与编码1.进位计数制及其相互转换2.真值和机器数3.BCD码4.字符与字符串5.校验码二、定点数的表示和运算1.定点数的表示无符号数的表示,有符号数的表示。2.定点数的运算定点数的移位运算,原码定点数的加/减运算,补码定点数的加/减运算,定点数的乘/除运算,溢出概念和判别方法。三、浮点数的表示和运算1.浮点数的表示浮点数的表示范围,IEEE754标准。2.浮点数的加/减运算四、算术逻辑单元ALU1.串行加法器和并行加法器2.算术逻辑单元ALU的功能和结构····本章知识体系框架图本章知识体系框架图本章知识体系框架图本章知识体系框架图天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!现实世界的信息文字十进制数二进制数表示二进制数运算加减号表示小数点表示(1)原码(2)补码(3)反码(4)移码(1)定点表示(2)浮点表示算数运算逻辑运算定点运算浮点运算(1)非(2)与(3)或(4)异或(1)加(2)减(3)乘(4)除(1)加(2)减····课本导读课本导读课本导读课本导读((((成书后会继续补充该模板成书后会继续补充该模板成书后会继续补充该模板成书后会继续补充该模板))))一、进位计数制及其相互转换【定位】无,请参考知识点总结与深度扩展1。【可能疑问点】无二、真值和机器数【定位】课本219页6.1.2,请参考知识点总结与深度扩展2。【可能疑问点】无三、BCD码【定位】课本215页附录5B,请参考知识点总结与深度扩展3。【可能疑问点】课本215页表5-3中的8421奇校验码和8421偶效验码的转换规律简单的解释一下:如果采用8421奇校验码,需要在高位补一位,至于是补0,还是补1,就要看8421效验码中1的个数了,如果后4位有奇数个1,那么高位补0,以保证最终1的个数为奇数,方便进行奇校验,其他以此类推。四、字符与字符串【定位】无,请参考知识点总结与深度扩展4。【可能疑问点】无五、校验码【定位】奇偶校验码:课本216页;循环冗余校验码:144页;海明码:课本100页;请参考知识点总结与深度扩展5。【可能疑问点】关于海明码的编码过程和校验过程,知识点总结与深度扩展5给出了通俗易懂的讲解,考生可不看教材的讲解。六、定点数的表示天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!【定位】课本219页6.1【可能疑问点】不少考生觉得运算器这一章比较晕,很大程度上是因为该章开头的时候就先把一些似乎很难理解的分段函数放在前面讲解,给你一个下马威。最好的解决办法就是不用理睬这些分段函数,比如课本220页整数原码的定义、小数原码的定义,然后根据定义来求真值的原码,这些全都直接跳过,考研根本不考,为什么要看,就是不看,我们只看要考的,后面有更简单的方法去计算真值的原码、补码、反码、移码,都是一句话解决问题,简单易懂。为什么要去研究这些晦涩难懂的方法?没错,以前是没有人告诉你,现在告诉你了,赶快跳过吧!关于定点数的表示请参考知识点扩展与深度总结6。七、定点数的运算【定位】课本234页,定点运算必备辅助知识请参考知识点扩展与深度总结7;移位运算请参考知识点扩展与深度总结8;运算器的加减法总结请参考知识点扩展与深度总结9;运算器的乘法请参考知识点扩展与深度总结10;运算器的除法请参考知识点扩展与深度总结11。【可能疑问点】乘除法的硬件配置不需要看,考研不可能会考查电路的设计。另外,乘除法一般不会考查大题,因为完全是死记硬背。但是也不能不看,万一抽出一点细节问题来出选择题也不是不可能,所以考生还是得将算法牢记于心。笔者推荐的办法是将乘除法的所有考查算法各举一个例子,抄写在错题本上,时不时拿出来过一遍。八、浮点数的表示和运算【定位】课本229页,浮点数的表示总结请参考知识点扩展与深度总结14;IEEE754标准总结请参考知识点扩展与深度总结15;浮点数的加减运算总结请参考知识点扩展与深度总结16;【可能疑问点】课本231页最上面为什么后者比前者可能会多出三位精度?这里不讲解,下面扩展知识点里面有详细讲解。九、算术逻辑单元ALU【定位】课本280页,串行加法器和并行加法器总结请参考知识点扩展与深度总结17;算术逻辑单元ALU的功能和结构总结请参考知识点扩展与深度总结18;【可能疑问点】无····知识点扩展与深度总结知识点扩展与深度总结知识点扩展与深度总结知识点扩展与深度总结1.二进制,八进制,十进制,十六进制的简单介绍及其之间的相互转换【解析】事实上该知识点并不局限于计算机组成原理这门课,很多的课程都会讲授相关的知识点。在此还是按照大纲要求进行一下基本的知识梳理,已掌握的读者可以跳过该知识点讲解。1、数制也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法。按进位的方法进行计数,称为进位计数制。在日常生活和计算机中采用的都是进位计数制。一般来说,比较常用到的进位计数制包括:二进制、八进制、十进制和十六进制。下面一一对其介绍。天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!十进制(DDDDecimalismecimalismecimalismecimalism):关于这个,似乎没必要多说什么,因为日常生活中的进位计数制都是十进制。表示方式:(1234567890)10、1234567890。二进制(BBBBinaryinaryinaryinary):二进制是计算技术中最广泛采用的一种数制,使用0和1两个数码来表示数。在计算机中,则是以电平的高低来表示,通常高电平代表“1”,低电平代表“0”。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。二进制具有实现简单,适合计算机运算,可靠性高等优点,但也存在着一定的不足,比如表示效率太低,书写不便。(如(255)10=(11111111)2,10进制255需要由二进制的8位来表示,当数码很大时,书写起来相当费事)。由此,便引进了八进制和十六进制。表示方式:(10)2、10BBBB。八进制(OctalOctalOctalOctal)和十六进制(HHHHexadecimalexadecimalexadecimalexadecimal):规则都是和二进制很相似的,八进制由0~7表示数码,进位规则是“逢八进一”,借位规则是“借一当八”;十六进制由0~9,A~F表示数码,A~F分别对应于十进制的10~15,进位规则是“逢十六进一”,借位规则是“借一当十六”。之所以说“引进”这两种进制,主要是为了书写的方便(具体解释见二进制和八进制及十六进制的转换),在机器内的表示并不区别,都仍为二进制。八进制表示方式:(12345670)8、12345670QQQQ(这里之所以用Q,而不是八进制Octal的首字母O,主要是为了书写中和0区别开);十六进制表示方式:(1234567890ABCDEF)16、1234567890ABCDEFHHHH、0x0x0x0x123456789ABCDEF(编程中使用十六进制的方式,比如一些内存地址都是用这种表示方式)。2、进制之间的相互转换:二进制、八进制、十六进制转为十进制。这里仅以二进制转十进制为例,八进制和十六进制转十进制的方法是一样的,只需调整每一位的权即可。以(10001.10)2为例。每位的位权:位权24232221202-12-2数位1000110每位的位权乘以各自的数位,得到的和相加:24×1+23×0+22×0+21×0+20×1+2-1×1+2-2×0=17.5至此,得到的17.5即为该二进制数对应的十进制数(八进制和十六进制,只需把位权中的基数2222换为8888和16161616即可,其余步骤一样)。十进制转为二进制、八进制、十六进制:这里仍然以十进制转为二进制为例。【例2.1】将(17.6875)10转换为二进制。解:在这个转换中,整数部分和小数部分应当分开来进行计算。整数计算规则可以归纳为“除2取余,由下而上”:17/2=9余19/2=4余14/2=2余02/2=1余01/2=0余1(结束的标志为相除之后的商为0000)天勤论坛:天勤论坛——专为计算机考研学子打造的专业交流平台期待你的加入!然后,将所有的余数,按照从下往上的顺序写出:10
本文标题:《计算机组成原理高分笔记》试读版本
链接地址:https://www.777doc.com/doc-5041773 .html