计算机组成原理2009年12月期末考试复习大纲第一章1.计算机软件的分类。P11计算机软件一般分为两大类:一类叫系统程序,一类叫应用程序。2.源程序转换到目标程序的方法。P12源程序是用算法语言编写的程序。目标程序(目的程序)是用机器语言书写的程序。源程序转换到目标程序的方法一种是通过编译程序把源程序翻译成目的程序,另一种是通过解释程序解释执行。3.怎样理解软件和硬件的逻辑等价性。P14因为任何操作可以有软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。对于某一机器功能采用硬件方案还是软件方案,取决于器件价格,速度,可靠性,存储容量等因素。因此,软件和硬件之间具有逻辑等价性。第二章1.定点数和浮点数的表示方法。P16定点数通常为纯小数或纯整数。X=XnXn-1…..X1X0Xn为符号位,0表示正数,1表示负数。其余位数代表它的量值。纯小数表示范围0≤|X|≤1-2-n纯整数表示范围0≤|X|≤2n-1浮点数:一个十进制浮点数N=10E.M。一个任意进制浮点数N=RE.M其中M称为浮点数的尾数,是一个纯小数。E称为浮点数的指数,是一个整数。比例因子的基数R=2对二进制计数的机器是一个常数。做题时请注意题目的要求是否是采用IEEE754标准来表示的浮点数。32位浮点数S(31)E(30-23)M(22-0)64位浮点数S(63)E(62-52)M(51-0)S是浮点数的符号位0正1负。E是阶码,采用移码方法来表示正负指数。M为尾数。P18P182.数据的原码、反码和补码之间的转换。数据零的三种机器码的表示方法。P21一个正整数,当用原码、反码、补码表示时,符号位都固定为0,用二进制表示的数位值都相同,既三种表示方法完全一样。一个负整数,当用原码、反码、补码表示时,符号位都固定为1,用二进制表示的数位值都不相同,表示方法。1.原码符号位为1不变,整数的每一位二进制数位求反得到反码;2.反码符号位为1不变,反码数值位最低位加1,得到补码。例:x=(+122)10=(+1111010)2原码、反码、补码均为01111010Y=(-122)10=(-1111010)2原码11111010、反码10000101、补码10000110+0原码00000000、反码00000000、补码00000000-0原码10000000、反码11111111、补码100000003.定点数和浮点数的加、减法运算:公式的运用、溢出的判断。P63已知x和y,用变形补码计算x+y,同时指出结果是否溢出。(1)x=11011y=00011(2)x=11011y=-10101(3)x=-10110y=-00001已知x和y,用变形补码计算x-y,同时指出结果是否溢出。(1)x=11011y=-11111(2)x=10111y=11011(3)x=11011y=-10011P63设阶码3位,尾数6位,按浮点运算方法,完成下列取值的[x+y],[x-y]运算.(2)x=2-101*(-0.010110)y=2-100*(0.010110)P29溢出的判断:第一种方法是采用双符号位法(变形补码)。任何正数,两个符号位都是“0”,任何负数,两个符号位都是“1”,如果两个数相加后,其结果的符号位出现“01”或“10”两种组合时,表示发生溢出。最高符号位永远表示结果的正确符号。第二种方法是采用单符号位法。P304.运算器可以执行哪些运算?算术运算:加法,减法运算,乘法,除法运算。逻辑运算:逻辑与,或,非运算等。5.数据的不同进制表示。P18一、二进制数转换成十进制数由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为按权相加法。二、十进制数转换为二进制数十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。1.十进制整数转换为二进制整数十进制整数转换为二进制整数采用除2取余,逆序排列法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。2.十进制小数转换为二进制小数十进制小数转换成二进制小数采用乘2取整,顺序排列法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。三、二进制数转换成八进制数三位二进制数,得一位八进制数。101010011=(101)5(010)2(011)3=523四、八进制数转换成二进制数一位八进制数,得三位二进制数。523=(101)5(010)2(011)3=101010011五、二进制数转换成十六进制数四位二进制数,得一位十六进制数。1101000101100=(1010)A(0010)2(1100)C=A2C六、十六进制数转换成二进制数一位十六进制数,得四位二进制数。A2C=(1010)A(0010)2(1100)C=1101000101100十进制整数转二进制整数:除2取余用2辗转相除至结果为1将余数和最后的1从下向上倒序写就是结果例如302302/2=151余0151/2=75余175/2=37余137/2=18余118/2=9余09/2=4余14/2=2余02/2=1余0故二进制为100101110二进制转十进制从最后一位开始算,依次列为第0、1、2...位第n位的数(0或1)乘以2的n次方得到的结果相加就是答案例如:01101011.转十进制:第0位:1乘2的0次方=11乘2的1次方=20乘2的2次方=01乘2的3次方=80乘2的4次方=01乘2的5次方=321乘2的6次方=640乘2的7次方=0然后:1+2+0+8+0+32+64+0=107.二进制01101011=十进制107.第三章1.主存的性能指标有哪些?存储容量,存取时间,存储周期,存储器带宽。存取时间,存储周期,存储器带宽反映了主存的速度指标。2.存储器容量的扩充方法及应用。P731.字长位数扩展2.字存储容量扩展P1011.设有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少个字节的信息?(2)如果存储器由512K*8位SRAM芯片组成,需要多少片?(3)需要多少位地址做芯片选择?解:(1)220*32/8=222=4M字节(2)(1024K*32)/(512K*8)=2*4=8片(3)1位5.要求用256K*16位SRAM芯片设计1024K*32位的存储器。SRAM芯片有两个控制端:当CS有效时,该片选中。当W/R=1时执行读操作,当W/R=0时执行读操作。解:需要(1024K*32)/(256K*16)=4*2=8片SRAM芯片,需要log2(1024K/256K)=2位地址做芯片选择7.某机器中,已知配有一个地址空间为0000H-3FFFH的ROM区域。现在再用一个RAM芯片(8K*8)形成40K*16位的RAM区域,起始地址为6000H。假设RAM芯片有CS和WE信号控制端。CPU的地址总线为A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(访存),要求:(1)画出主存地址框图。(2)画出组成连接框图。解:(1)需要(40K*16)/(8K*8)=5*2=10片SRAM芯片,log2(40K/8K)≈2.2取3位地址做芯片选择(2)3.双端口存储器和多体交叉存储器的工作原理。P86双端口存储器采用空间并行技术,具有两组相互独立的控制电路,进行并行的独立操作。多体交叉存储器采用时间并行技术,具有多个相互独立,容量相同的模块,各模块的读写过程采用流水线方式重叠进行。4.cache存储器的原理、映射方式、写回方式及相关的计算。P93CPU与cache之间的数据交换是以字为单位,而cache与主存之间的数据交换是以块为单位。一个块由若干字组成,是定长的。当CPU读取主存中一个字时,便发出此字的内存地址到cache和主存。此时cache控制逻辑依据地址判断此字当前是否在cache中:若是,此字立即传送给CPU;若非,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。P94映射方式1.全相联映射方式2.直接映射方式3.组相联映射方式cache的数据块大小称为行,主存的数据块大小称为块。行与块是等长的。在全相联映射方式中,将主存中一个块的地址(块号)与块的内容(字)一起存于cache的行中,其中块地址存于cache行的标记部分中。这种带全部块地址一起保存的方法,可使主存的一个块直接拷贝到cache中的任意一行上。直接映射方式:一个主存块只能拷贝到cache的一个特定行位置上去。cache的行号i和主存的块号j有如下函数关系:i=jmodm式中m为cache中的总行数。在直接映射方式中,cache将s位的块地址分成两部分:r位作为cache的行地址,s-r位作为标记(tag)与块数据一起保存在该行。组相联映射方式:将cache分成u组,每组v行。主存块存放到哪个组是固定的,至于存到该组哪一行是灵活的,即有如下函数关系:m=u*v组号q=jmodu块内存地址中s位块号划分成两部分:低序的d位(2d=u)用于表示cache组号,高序的s-d位作为标记(tag)与块数据一起存于此组的某行中。P99写回方式1.写回法2.全写法3.写一次法写回法:当CPU写cache命中时,只修改cache的内容,而不立即写入主存;只有当此行被换出时才写回主存。全写法:当CPU写cache命中时,cache与主存同时发生写修改,因而较好地维护了cache与主存的内容的一致性。写一次法:写命中与写未命中的处理方法与写回法基本相同,只是第一次写命中时要同时写入主存。P1029.CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。第四章1.指令的格式由哪两部分组成,各部分的作用。P105由操作码字段和地址码字段组成。指令的操作码表示该指令应进行什么性质的操作。指令的地址码指明指令中所需操作数的地址。2.根据操作码,进行有关指令条数的计算。P1254.指令格式结构如下所示,试分析指令格式及寻址方式特点。指令格式及寻址方式特点:(1)操作码字段6位,可指定64种操作。第10到第7位留空。指令长度为32位,双字长二地址指令,用于访问存储器。(2)RS型指令,一个操作数在通用寄存器(共16个),另一个操作数在主存中。(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。3.指令和数据的寻址方式。P112指令的寻址方式:1.顺序寻址方式2.跳跃寻址方式数据的寻址方式:1.隐含寻址2.立即寻址3.直接寻址4.间接寻址5.寄存器寻址6.寄存器间接寻址7.偏移寻址8.段寻址9.堆栈寻址7.偏移寻址:相对寻址,基址寻址,变址寻址。P1257.某计算机字长为32位,主存容量为64K字,采用单字长单地址指令,共有40条指令。试采用直接,立即,变址,相对四种寻址方式设计指令格式。P12612.根据操作数所在位置,指出其寻址方式(填空):(1)操作数在寄存器中,为(寄存器)寻址方式。(2)操作数地址在寄存器中,为(寄存器间接)寻址方式。(3)操作数在指令中,为(立即)寻址方式。(4)操作数地址(主存)在指令中,为(直接)寻址方式。(5)操作数的地址,为某一寄存器内容与位移量之和,可以是(相对,基址,变址)寻址方式。第五章1.CPU的功能和组成部分。P127CPU的功能:指令控制,操作控制,时间控制,数据加工。CPU的组