2022年《计算机组成原理》课后习题问题详解 2.pdf
实用文档大全第1章 计算机组成原理考试大纲第一章计算机体系结构和计算机组成冯。诺伊曼体系的特点Amdahl 定律第二章数制和数制转换各种码制的表示和转换浮点数的表示补码加减法布思算法浮点数的加减法海明码的计算练习:5,6,7,8,10 1、已知 X=19,Y=35,用布思算法计算XY和 X(-Y)。2、使用 IEEE 754 标准格式表示下列浮点数:-5,-1.5,1/16,-6,384,-1/32。3、已知 X=-0.1000101 2-111,Y=0.0001010 2-100。试计算X+Y,X-Y,X Y和 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,7 1一个容量为16K 32 位的存储器,其地址线和数据线的总和是多少?用下列存储芯片时,各需要多少片?1K 4 位,2K8 位,4K4 位,16Kl 位,4K8 位,8K8 位2现有 1024l 的存储芯片,若用它组成容量为16K8 的存储器。(1)实现该存储器所需的芯片数量?名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 9 页 -实用文档大全 (2)若将这些芯片分装在若干块板上,每块板的容量为4K8,该存储器所需的地址线总数是多少?几位用于选片?几位用作片内地址?(3)画出各芯片的连接逻辑图。3设某机主存容量为4MB,Cache容量为 16KB,每块包含8 个字,每字32 位,设计一个4 路组相联映射(即 Cache每组内共有4 个块)的 Cache组织,要求:(1)画出主存地址字段中各段的位数。(3)若 Cache 的速度是主存的6 倍,试问有Cache和无 Cache相比,速度提高多少倍?第六章I/O 端口的编址方式中断处理的步骤第七章MAR,MBR,PC,IR 指令周期的概念,完整的周期包括哪些Pentium 处理器中的标志寄存器第八章操作码和地址码扩展操作码技术大端和小端寻址技术中缀和后缀表达式RISC和 CISC 的比较MMX 指令,回绕运算和饱和运算习题 1,2,4,5,6 1、有可能设计出一种12 位长的指令格式对下列指令进行编码吗?其中每个寄存器需要3 位编码。a.4 条 3 寄存器指令b.255 条单寄存器指令c.16 条 0 寄存器指令2、某机指令字长16 位,每个操作数的地址码为6 位,指令分为零地址、一地址、二地址三种格式。若两地址指令有K种,零地址指令有L 种,则一地址指令最多有几种?4、一台处理机具有如下指令格式:位位位位X OP 源寄存器目的寄存器地址格式表明有位通用寄存器(长度16 位),X指定寻址模式,主存实际容量为k 字。1)假设不用通用寄存器也能直接访问主存中的每一个单元,请问地址码域应分配多少位?指令字长度应有多少位?2)假设 X=11 时,指定的那个通用寄存器用做基值寄存器,请提出一个硬件设计规划,使得被指定的通用寄存器能访问1M主存空间中的每一个单元。5、请将下面的中缀表达式转换成逆波兰表达式。a.A+B+C+D-E b.(A-B)(C+D)+E c.(A B)+(C D)+E d.(A-B)(C-D E)/F)/G)H 6、请将下面的逆波兰表达式转换成中缀表达式。a.AB-C+D b.AB/CD/+c.ABCDE+/d.ABCDEF/+G-H/+第九章名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 9 页 -实用文档大全控制器的功能控制器的组成部件微操作命令分析输入控制信号和输出控制信号硬布线控制器的结构微程序控制器的组成部件固件的概念微指令的格式习题 3 1.假定某控制存储器是24 位宽。微指令格式的控制部分分成两个字段。一个13 位的微操作字段用来指定将要完成的微操作,一个地址选择字段用来指明能引起微指令转移的8 种条件。1)地址选择字段有多少位?2)地址字段有多少位?3)控制存储器容量有多大?第十章同时性和并发性并行计算机体系结构的分类流水线及其性能指标UMA 的主要特点题型:填空(10*2)选择(10*1)简答(4*5)综合(5*10)第2章 课后习题解答第二章习题2 设机器字长为8 位(含一位字符位在内),写出对应下列各真值的原码、反码和补码:-1011010B,-87,168 解:-1011010B-87168原码1,101 1010 1,101 0111-反码1,010 0101 1,010 1000-补码1,010 0110 1,010 1001-原码:最高位为符号位,数值部分是真值的绝对值。反码:正数的反码与原码相同;负数的反码符号位不变,数值部分各位取反。补码:正数的反码与原码相同;负数的补码符号位不变,数值部分各位取反后再加1。由于 8位有符号的数表示范围:-128127,所以 168 溢出。4已知 X=-66,Y=99。设机器字长为8 位,用补码运算规则计算X+Y和 X-Y。解:X原=1,100 0010 X补=1,011 1110 Y原=0,110 0011 Y补=0,110 0011 -Y补=1,001 1101 X+Y补=X补+Y补=1,011 1110+0,110 0011=00,010 0001 X-Y补=X补+-Y补=1,011 1110+1,001 1101=10,101 1011(溢出)5已知 X=19,Y=35,用布思算法计算XY 和 X(-Y)。解:无符号数乘法的规则:Q0=1:A-A+M,然后 C,A,Q 右移 Q0=0:C,A,Q 直接右移其中,C为进位标识符;辅助寄存器A的初始值为0;乘积的高n 位存放在辅助寄存器A中,乘积的低n名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 9 页 -实用文档大全位存放在寄存器Q中;移位时C标识符用0 扩展。X原=010011 Y原=100011 XY=010011100011 的运算过程和结果:C A Q M Qn-1 Q1Q0初值0 000000 10001 1 010011 A-(A+M)0 010011 10001 1 C,A,Q 右移0 001001 11000 1 A-(A+M)0 011100 11000 1 C,A,Q 右移0 001110 01100 0 C,A,Q 右移0 000111 00110 0 C,A,Q 右移0 000011 10011 0 C,A,Q 右移0 000001 11001 1 A-(A+M)0 010100 11001 1 C,A,Q 右移0 001010 01100 1 结果为: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,011101 X(-Y)=00100111011101 的运算过程和结果:A Q Q-1M 初值0000000 1011101 0 0010011 A-(A-M)1101101 1011101 0 A,Q,Q-1右移1110110 1101110 1 A-(A+M)0001001 1101110 1 A,Q,Q-1右移0000100 1110111 0 A-(A-M)1110001 1110111 0 A,Q,Q-1右移1111000 1111011 1 A,Q,Q-1右移1111100 0111101 1 A,Q,Q-1右1111110 0011110 1 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 9 页 -实用文档大全移A-(A+M)0010001 0011110 1 A,Q,Q-1右移0001000 1001111 0 A-(A-M)1110101 1001111 0 A,Q,Q-1右移1111010 1100111 1 结果为:11,110101100111B=-665 6使用 IEEE 754 标准格式表示浮点数:-5,-1.5,1/16,-6,384,1/32。解:最高位表示尾符;后续k 位表示阶码,在原数基础上加偏移值2k-1-1;尾数为纯小数表示时,小数点后面的值。-5=-101B=-1.01210尾符 1 位阶码 8 位尾数 23 位1 1000 0001 01-1.5=-1.1B=-1.120尾符 1 位阶码 8 位尾数 23 位1 0111 1111 101/16=2-4=1.02-100尾符 1 位阶码 8 位尾数 23 位0 0111 1011 00-6=-110B=-1.1210尾符 1 位阶码 8 位尾数 23 位1 1000 0001 10384=1 1000 0000=1.121000尾符 1 位阶码 8 位尾数 23 位0 1000 0111 101/32=2-5=-1.02-101尾符 1 位阶码 8 位尾数 23 位1 0111 1010 007已知 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-100=-0.1001*2-110 X=-0.1000101*2-111,Y=0.1010000*2-111阶码相加得:-111+(-111)=-1110 尾数相乘:-0.1000101*0.101000=1.1000101*0.101000=-0.01010110010000 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 9 页 -实用文档大全所以,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位,数据位依次从低到高的顺序填在剩余的空格里。其中,H3,H5,H7,H9,H11二进制编码的最低位都包含1,可以确定C1;H3,H6,H7,H10,H11二进制编码的倒数第2 位都包含1,可以确定C2;其余类推。排列位置H H12H11H10H9H8H7H6H5H4H3H2H1数据位 D D8D7D6D5D4D3D2D1海明码 C C4C3C2C1C1=H1=H3H5H7H9H11=01101=1 C2=H2=H3H6H7H10H11=01111=0 C3=H4=H5H6H7H12=1110=1 C4=H8=H9H10H11H12=0110=0 汉明码为:0101 第三章习题5.解释下列概念:PROM,EPROM,E2PROM,Flash Memory,FPGA,SRAM 和 DRAM 解:PROM 可编程只读存储器 EPROM 可擦除可编程只读存储器 E2PROM 电可擦除可编程只读存储器 Flash Memory 快闪存储器 FPGA 现场可编程逻辑阵列 SRAM 静态随机存取存储器 DRAM 动态随机存取存储器第四章习题2.什么是总线仲裁?常见的总线仲裁方式有哪些?解:系统中多个设备或模块可能同时申请对总线的使用权,为避免产生总线冲突,需由总线仲裁机构合理地控制和管理系统中需要占用总线的申请者,在多个申请者同时提出总线请求时,以一定的优先算法仲裁哪个应获得对总线的使用权。总线判优控制按照仲裁控制机构的设置可分为集中控制和分散控制两种。其中就集中控制而言,常用的总线仲裁方式有:菊花链仲裁、二维仲裁、同步通信方式、异步通信方式和半同步通信方式。3.试比较同步通信和异步通信。解:异步通信和同步通信的比较(1)异步通信简单,双方时钟可允许一定误差。同步通信较复杂,双方时钟的允许误差较小。(2)异步通信只适用于点 点,同步通信可用于点 多。(3)通信效率:异步通信低,同步通信高。第五章习题4一个容量为16K32 位的存储器,其地址线和数据线的总和是多少?用下列存储芯片时,各需要多少片?名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 9 页 -实用文档大全1K4 位,2K8 位,4K4 位,16K1 位,4K8 位,8K8 位解:由于 214=16K,地址线为 14 位;32 位的字宽需要32 根数据线。所以地址线和数据线的总和为46 位。组成 16K32 位的存储器需要以下芯片:1K4 位的片数:163214KK位位=128 2K8 位的片数:163228KK位位=32 4K4 位的片数:163244KK位位=32 16K1 位的片数:1632161KK位位=32 4K8 位的片数:163248KK位位=16 8K8 位的片数:163288KK位位=8 5现有 10241 的存储芯片,若用它组成容量为16K8 的存储器,则(1)实现该存储器所需的芯片数量多少?(2)若将这些芯片分装在若干块板上,每块板的容量为4K8,该存储器所需的地址线总数是多少?几位用于片选?几位用作片内地址?(3)画出各芯片的连接逻辑图。解:(1)所需的芯片数:16810241K位位=128(2)由于 214=16K,地址线为14 位;存储器所需的块板数16848KK位位=4,需要 2 位用于片选,14-2=12 位用于片内地址。(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 块,每组包含4 块,所以总共有128 组,需 7 位表示;名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 9 页 -实用文档大全主存的页数:4MB=222,内存地址为22 位,剩余的8 位。前三位段用于主存页的标记;后三个位段表示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.有可能涉及出一种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 种,则一地址指令最多有几种?解:扩展操作码技术:使操作码的长度随着地址数的减小而增加,不同地址数的指令可以具有不同长度的操作码。二地址指令:若设计 K种二地址指令,还有24-K 种可用于扩展。一地址指令:可用于扩展(24-K)26种一地址指令,若设计X 种一地址指令,还有(24-K)26-X 可用于扩展为零地址指令。零地址指令:可设计的零地址指令数为:(24-K)26-X)26=L 解方程得一地址指令最多有X=(24-K)26-6L2种。3.画出先变址再间址及先间址再变址的寻址过程示意图。5728Cache组号组内页号页内地址6 位6 位4 位操作码地址码 1 地址码 2 6 位10 位操作码地址码 1 16 位操作码名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 9 页 -实用文档大全4.一台处理机具有如下指令格式:2位 6位 3位 3位X OP 源寄存器目的寄存器地址格式表明有8 位通用寄存器(长度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地址空间中任何单元名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 9 页 -