《《计算机组成原理》课后习题答案.doc》由会员分享,可在线阅读,更多相关《《计算机组成原理》课后习题答案.doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流第1章第2章第3章 计算机组成原理课后习题答案【精品文档】第 - 8 - 页第4章 计算机组成原理 考试大纲第一章计算机体系结构和计算机组成冯。诺伊曼体系的特点Amdahl定律第二章数制和数制转换各种码制的表示和转换浮点数的表示补码加减法布思算法浮点数的加减法海明码的计算练习:5,6,7,8,101、 已知X=19,Y=35,用布思算法计算XY和X(-Y)。2、 使用IEEE 754标准格式表示下列浮点数:-5,-1.5,1/16,-6,384,-1/32。3、 已知X=-0.10001012-111,Y=0.00010102-100。试计算X+Y,X-
2、Y,XY和X/Y。4、 某浮点数字长12位,其中阶符1位,阶码数值3位,尾符1位,尾数数值7位,阶码和尾数均用补码表示。它所能表示的最大正数是多少?最小规格化正数是多少?绝对值最大的负数是多少?5、 求有效信息位为01101110的海明码校验码。第三章练习:5解释下列概念:PROM,EPROM,E2PROM,Flash memory,FPGA,SRAM和DRAM。第四章总线的分类总线操作周期的四个传输阶段总线仲裁的概念及其分类异步通信方式的种类总线的最大传输率第五章存储器的分类存储容量的扩展RAID的概念、特点以及分类Cache的地址映射Cache的写策略Cache的性能分析3C练习:4,5,
3、71一个容量为16K32位的存储器,其地址线和数据线的总和是多少?用下列存储芯片时,各需要多少片? 1K4位,2K8位,4K4位,16Kl位,4K8位,8K8位2现有1024l的存储芯片,若用它组成容量为16K8的存储器。 (1)实现该存储器所需的芯片数量? (2)若将这些芯片分装在若干块板上,每块板的容量为4K8,该存储器所需的地址线总数是多少?几位用于选片?几位用作片内地址? (3)画出各芯片的连接逻辑图。3设某机主存容量为4MB,Cache容量为16KB,每块包含8个字,每字32位,设计一个4路组相联映射(即Cache每组内共有4个块)的Cache组织,要求: (1)画出主存地址字段中各
4、段的位数。 (3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度提高多少倍?第六章I/O端口的编址方式中断处理的步骤第七章MAR,MBR,PC,IR指令周期的概念,完整的周期包括哪些Pentium处理器中的标志寄存器第八章操作码和地址码扩展操作码技术大端和小端寻址技术中缀和后缀表达式RISC和CISC的比较MMX指令,回绕运算和饱和运算习题1,2,4,5,61、 有可能设计出一种12位长的指令格式对下列指令进行编码吗?其中每个寄存器需要3位编码。a. 4条3寄存器指令b. 255条单寄存器指令c. 16条0寄存器指令2、 某机指令字长16位,每个操作数的地址码为6位,
5、指令分为零地址、一地址、二地址三种格式。若两地址指令有K种,零地址指令有L种,则一地址指令最多有几种?4、一台处理机具有如下指令格式: 位 位 位位XOP源寄存器目的寄存器地址格式表明有位通用寄存器(长度16位),X指定寻址模式,主存实际容量为k字。1) 假设不用通用寄存器也能直接访问主存中的每一个单元,请问地址码域应分配多少位?指令字长度应有多少位?2) 假设X=11时,指定的那个通用寄存器用做基值寄存器,请提出一个硬件设计规划,使得被指定的通用寄存器能访问1M主存空间中的每一个单元。5、请将下面的中缀表达式转换成逆波兰表达式。a. A+B+C+D-Eb. (A-B)(C+D)+Ec. (A
6、B)+(CD)+Ed. (A-B)(C-DE)/F)/G)H6、请将下面的逆波兰表达式转换成中缀表达式。a. AB-C+Db. AB/CD/+c. ABCDE+/ d. ABCDEF/+G-H/+第九章控制器的功能控制器的组成部件微操作命令分析输入控制信号和输出控制信号硬布线控制器的结构微程序控制器的组成部件固件的概念微指令的格式习题31.假定某控制存储器是24位宽。微指令格式的控制部分分成两个字段。一个13位的微操作字段用来指定将要完成的微操作,一个地址选择字段用来指明能引起微指令转移的8种条件。1)地址选择字段有多少位?2)地址字段有多少位?3)控制存储器容量有多大?第十章同时性和并发性并
7、行计算机体系结构的分类流水线及其性能指标UMA的主要特点题型:填空(10*2)选择(10*1)简答(4*5)综合(5*10)第5章 课后习题解答第二章习题2设机器字长为8位(含一位字符位在内),写出对应下列各真值的原码、反码和补码:-1011010B,-87,168解:-1011010B-87168原码1,101 10101,101 0111-反码1,010 01011,010 1000-补码1,010 01101,010 1001-原码:最高位为符号位,数值部分是真值的绝对值。反码:正数的反码与原码相同;负数的反码符号位不变,数值部分各位取反。补码:正数的反码与原码相同;负数的补码符号位不变
8、,数值部分各位取反后再加1。由于8位有符号的数表示范围:-128127,所以168溢出。4已知X=-66,Y=99。设机器字长为8位,用补码运算规则计算X+Y和X-Y。解:X原=1,100 0010 X补=1,011 1110Y原=0,110 0011 Y补=0,110 0011 -Y补=1,001 1101X+Y补=X补+Y补=1,011 1110 + 0,110 0011=00,010 0001X-Y补=X补+-Y补=1,011 1110 + 1,001 1101=10,101 1011(溢出)5已知X=19,Y=35,用布思算法计算XY和X(-Y)。解:无符号数乘法的规则:Q0=1:A-
9、A+M,然后C,A,Q右移 Q0=0:C,A,Q直接右移其中,C为进位标识符;辅助寄存器A的初始值为0;乘积的高n位存放在辅助寄存器A中,乘积的低n位存放在寄存器Q中;移位时C标识符用0扩展。X原=010011Y原=100011XY=010011100011的运算过程和结果:CAQMQn-1 Q1Q0初值0000000100011010011A-(A+M)0010011100011C,A,Q右移0001001110001A-(A+M)0011100110001C,A,Q右移0001110011000C,A,Q右移0000111001100C,A,Q右移0000011100110C,A,Q右移0
10、000001110011A-(A+M)0010100110011C,A,Q右移0001010011001结果为:001010011001B=665有符号数乘法的规则:Q0Q-1=01:A-A+M,A,Q,Q-1算术右移 Q0Q-1=10:A-A-M,A,Q,Q-1算术右移Q0Q-1=00或11:A,Q,Q-1算术右移其中,辅助寄存器A,Q-1的初始值为0;乘积的高n位存放在辅助寄存器A中,乘积的低n位存放在寄存器Q中;移位使用算术移位,高位采用符合扩展。X补=0,010011-X补=1,101101-Y补=1,011101X(-Y)=00100111011101的运算过程和结果:AQQ-1M初
11、值0000000101110100010011A-(A-M)110110110111010A,Q,Q-1右移111011011011101A-(A+M)000100111011101A,Q,Q-1右移000010011101110A-(A-M)111000111101110A,Q,Q-1右移111100011110111A,Q,Q-1右移111110001111011A,Q,Q-1右移111111000111101A-(A+M)001000100111101A,Q,Q-1右移000100010011110A-(A-M)111010110011110A,Q,Q-1右移11110101100111
12、1结果为:11,110101100111B=-6656使用IEEE 754标准格式表示浮点数:-5,-1.5,1/16,-6,384,1/32。解:最高位表示尾符;后续k位表示阶码,在原数基础上加偏移值2k-1-1;尾数为纯小数表示时,小数点后面的值。-5=-101B=-1.01210尾符1位阶码8位尾数23位11000 000101-1.5=-1.1B=-1.120尾符1位阶码8位尾数23位10111 1111101/16=2-4=1.02-100尾符1位阶码8位尾数23位00111 101100-6=-110B=-1.1210尾符1位阶码8位尾数23位11000 000110384=1 1
13、000 0000=1.121000尾符1位阶码8位尾数23位01000 0111101/32=2-5=-1.02-101尾符1位阶码8位尾数23位10111 1010007已知X= -0.1000101*2-111,Y= 0.0001010*2-100。试计算X+Y,X-Y,X*Y,X/Y。解:对阶操作:阶差为-100-(-111)=011,将X的尾数右移3位,得X= -0.0001000*2-100 将X和Y的尾数相加得:0.0000010所以,X+Y = 0.0000010*2-100=0.1*2-1001将X和Y的尾数相减得-0.0010010所以,X-Y=-0.0010010*2-10
14、0=-0.1001*2-110X=-0.1000101*2-111,Y=0.1010000*2-111阶码相加得:-111+(-111)=-1110尾数相乘:-0.1000101*0.101000=1.1000101*0.101000=-0.01010110010000所以,X*Y=-0.0101011*2-1110=-0.101011*2-1111阶码相减得:-111-(-111)=0尾数相除:-0.1000101/0.1010000=-0.1101110所以,X/Y= -0.110111*2010.求有效信息位为0110 1110的汉明码校验码。解:海明码Ci排放在第2i位,数据位依次从低
15、到高的顺序填在剩余的空格里。其中,H3,H5,H7,H9,H11二进制编码的最低位都包含1,可以确定C1;H3,H6,H7,H10,H11二进制编码的倒数第2位都包含1,可以确定C2;其余类推。排列位置HH12H11H10H9H8H7H6H5H4H3H2H1数据位DD8D7D6D5D4D3D2D1海明码CC4C3C2C1C1=H1=H3H5H7H9H11=01101=1C2=H2=H3H6H7H10H11=01111=0C3=H4=H5H6H7H12=1110=1C4=H8=H9H10H11H12=0110=0汉明码为:0101第三章习题5.解释下列概念:PROM,EPROM,E2PROM,F
16、lash Memory,FPGA,SRAM和DRAM解:PROM 可编程只读存储器 EPROM 可擦除可编程只读存储器 E2PROM 电可擦除可编程只读存储器 Flash Memory 快闪存储器 FPGA 现场可编程逻辑阵列 SRAM 静态随机存取存储器 DRAM动态随机存取存储器第四章习题2.什么是总线仲裁?常见的总线仲裁方式有哪些?解:系统中多个设备或模块可能同时申请对总线的使用权,为避免产生总线冲突,需由总线仲裁机构合理地控制和管理系统中需要占用总线的申请者,在多个申请者同时提出总线请求时,以一定的优先算法仲裁哪个应获得对总线的使用权。总线判优控制按照仲裁控制机构的设置可分为集中控制和
17、分散控制两种。其中就集中控制而言,常用的总线仲裁方式有:菊花链仲裁、二维仲裁、同步通信方式、异步通信方式和半同步通信方式。3.试比较同步通信和异步通信。解:异步通信和同步通信的比较(1)异步通信简单,双方时钟可允许一定误差。同步通信较复杂,双方时钟的允许误差较小。(2)异步通信只适用于点 点,同步通信可用于点 多。(3)通信效率:异步通信低,同步通信高。第五章习题4一个容量为16K32位的存储器,其地址线和数据线的总和是多少?用下列存储芯片时,各需要多少片?1K4位,2K8位,4K4位,16K1位,4K8位,8K8位解: 由于214=16K,地址线为14位;32位的字宽需要32根数据线。所以地
18、址线和数据线的总和为46位。组成16K32位的存储器需要以下芯片:1K4位的片数:=1282K8位的片数:=324K4位的片数:=32 16K1位的片数:=324K8位的片数:=168K8位的片数:=85现有10241的存储芯片,若用它组成容量为16K8的存储器,则(1)实现该存储器所需的芯片数量多少?(2)若将这些芯片分装在若干块板上,每块板的容量为4K8,该存储器所需的地址线总数是多少?几位用于片选?几位用作片内地址?(3)画出各芯片的连接逻辑图。解:(1)所需的芯片数:=128(2)由于214=16K,地址线为14位;存储器所需的块板数=4,需要2位用于片选,14-2=12位用于片内地址
19、。(3)7设某主机主存容量为4MB,Cache容量为16KB,每块包含8个字,每字32位,设计一个4路组相连映射(即Cache每组内共有4个块)的Cache组织,要求:(1)画出主存地址字段中各段的位数。(2)设Cache的初态为空,CPU依次从主存第0,1,2,99号单元读出100个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度提高多少倍?解:(1)每块的大小:8字32位/8位=32B,所以页内地址用5位表示;Cache中每组有四个块,需要2位表示;Cache的块数为16KB/32B=512块,每
20、组包含4块,所以总共有128组,需7位表示;主存的页数:4MB=222,内存地址为22位,剩余的8位。5位 7位 2位 8位 Cache组号组内页号页内地址前三位段用于主存页的标记;后三个位段表示Cache的地址。(2)第一次访问时,100个字都不能命中;由于它们能同时存放在Cache中,以后的7次访问都能命中。命中率为:7100/8100=87.5%(3) 设访问Cache的时间为t,则访问主存的时间为6t。无Cache时,访问的时间为8006t=4800t有Cache时,访问的时间为1006t+700t=1300t速度提高的倍数为:4800t/1300t=3.69第八章习题1.有可能涉及出
21、一种12位长的指令格式对下列指令进行编码吗?其中每一个寄存器需要3位编码。(1)4条3寄存器指令(2)255条单寄存器指令(3)16条0寄存器指令解:3条寄存器指令:可从212-3*3=8种编码中选4种,剩4个编码 单寄存器指令:可扩展出4*26=256种编码中选255种,剩1个编码 0寄存器指令:剩下一个编码与3位地址只能扩展出1*23=8种编码 所以,不能设计出一种12位长的指令格式以上指令进行编码。2某机指令字长16位,每个操作数的地址为6位,指令分为零地址,一地址,二地址3种格式。若两地址指令有K种,零地址指令有L种,则一地址指令最多有几种?解:扩展操作码技术:使操作码的长度随着地址数
22、的减小而增加,不同地址数的指令可以具有不同长度的操作码。6位 6位 4位 二地址指令:操作码地址码1地址码2若设计K种二地址指令,还有24-K种可用于扩展。6位 10位 一地址指令:操作码 地址码1可用于扩展(24-K)26种一地址指令,若设计X种一地址指令,还有(24-K)26-X可用于扩展为零地址指令。16位 操作码零地址指令:可设计的零地址指令数为:(24-K)26-X)26=L解方程得一地址指令最多有X=(24-K)26-种。3.画出先变址再间址及先间址再变址的寻址过程示意图。4.一台处理机具有如下指令格式: 2位 6位 3位 3位XOP源寄存器目的寄存器地址格式表明有8位通用寄存器(
23、长度16位),X指定寻址模式,主存实际容量为156K字。(1) 假设不用通用寄存器也能直接访问主存中得每一个单元,请问地址码域应分配多少位?指令字长度应有多少位?(2) 假设X=11,时,指定的那个通过通用寄存器用做基址寄存器,请提出一个硬件设计规则,使得被指定的通用寄存器能访问1M主存空间的每一个单元。解:(1)因为 256K=218所以 地址码域=18位因为 操作码域op=6位所以 指令长度=18+3+3+6+2=32位(2)此时指定的通用寄存器用作基址寄存器(16位) 但16位长度不足以覆盖1M字地址空间 所以 将通用寄存器左移,4位低位补0形成20位基地址 然后与指令字形式地址相加得有效地址,可访问主存1M地址空间中任何单元