计算机体系结构第四章练习题参考解答(共6页)

上传人:29 文档编号:45501414 上传时间:2021-12-07 格式:DOC 页数:6 大小:94.50KB
收藏 版权申诉 举报 下载
计算机体系结构第四章练习题参考解答(共6页)_第1页
第1页 / 共6页
计算机体系结构第四章练习题参考解答(共6页)_第2页
第2页 / 共6页
计算机体系结构第四章练习题参考解答(共6页)_第3页
第3页 / 共6页
资源描述:

《计算机体系结构第四章练习题参考解答(共6页)》由会员分享,可在线阅读,更多相关《计算机体系结构第四章练习题参考解答(共6页)(6页珍藏版)》请在装配图网上搜索。

1、精选优质文档-倾情为你奉上第 四 章 4.52 浮点数系统使用的阶码基值re=2,阶值位数q=2,尾数基值rm=10,尾数位数p=1,即按照使用的二进制位数来说,等价于p=4。计算在非负阶、正尾数、规格化情况下的最小尾数值、最大尾数值、最大阶值、可表示的最小值和最大值及可表示数的个数。解: 最小尾数值:rm-1 = 10-1 = 0.1最大尾数值:1- rm-p =1-10-1 = 0.9最大阶值:2q-1=3可表示数的最小值:1rm-1 = 10-1 = 0.1可表示数的最大值:rm2q-1(1- rm-p)=103(1-10-1)= 900可表示数的个数:2qrmp(rm-1)/rm =

2、22101(10-1)/10 = 364.53 一台机器要求浮点数的字长的精度不低于10-7.2,表数的范围正数不小于1038,且正负对称。尾数用原码、纯小数表示,阶码用移码、整数表示。设计这种浮点数的格式。解 依题意,取表数范围N =1038,表数精度=10-7.2。由式(4-4)得: = 6.99,上取整,得到阶码字长q=7。由式(4-5)得:,上取整,得到尾数字长p=24。从而加上一个尾数符号位和一个阶码符号位,浮点数的总字长为:p+q+2=24+7+2=33。实际浮点数总字长应为8的倍数,故取浮点数总字长为40位。多出的7位可以加到尾数字长p中用于提高浮点数的表数精度,也可以加到阶码字

3、长q中来扩大浮点数的表数范围。暂且让p增加6位,q增加1位,即p=30,q=8。如图4-8所示是设计出来的浮点数格式。长度 1 p=30 1 q=8位序 39 38 9 8 7 0尾符S 尾数M 阶符F 阶码E图4-8 例4.2浮点数的设计格式4.58 用于文字处理的某专用机,每个文字符用4位十进制数字(09)编码表示,空格用表示。在对传送的文字符和空格进行统计后,得出它们的使用频度如下:0.20 0:0.17 1:0.06 2:0.08 3:0.11 4:0.085: 0.05 6:0.08 7:0.13 8:0.03 9:0.01(1)若对数字09和空格采用二进制编码,试设计编码平均长度最

4、短的编码。(2)若传送106个文字符号,且每个文字符号后均自动跟一个空格,按最短的编码,共需传送多少个二进制位?若传送波特率为9600bPS,共需传送多少时间?(3)若对数字09和空格采用4位定长码编码,重新计算问题(2)。解:(1)操作码编码的平均长度最短为Huffman编码,生成的Huffman树,如图所示,相应的Huffman编码如表所示。l=li = 3.23(位)。(2)根据题意,每个字符的二进制码的平均长度为:3.23(41)=16.15(位)。若要传输106个字符,则要传输二进制位数为:10616.15 =1.615107(位)若波特率为56Kb/s,则传输时间为:1.61510

5、7/(56103)=288(s)。1.000.010.040.090.200.400.030.050.110.200.080.060.140.270.600.160.080.130.330.170.08(3)当采用四位定长编码时,则需要传输二进制位数为:1064(41)=2107(位),传输时间为:2107/(56103)=357(s)。 1 0 1 0 1 0 1 0 1 0 1 0 3 7 0 5 1 6 4 2IiPiHuffman编码Li020102001700037013010330111103200800104400800114600801104100601114500511104

6、80031111059001111115 9 84.60 一台模型机共有7条指令,各指令的使用频度分别为:35%,25%,20%,10%,5%,3%,2%,有8个通用数据寄存器,2个变址寄存器。(1)要求操作码的平均长度最短,请设计操作码的编码,并计算操作码编码的平均长度。(2)设计8位字长的寄存器寄存器型指令3条,16位字长的寄存器一存储器型变址寻址方式指令4条,变址范围不小于正、负127。请设计指令格式,并给出指令各字段的长度和操作码的编码。解:(1)操作码编码的平均长度最短为Huffman编码,生成的Huffman树如图所示,相应的Huffman编码如表所示。l=li = 2.35(位)

7、1.000.020.050.100.200.400.030.050.100.200.250.600.35IiPiHuffman编码Li2-4编码(3/4)LiI1035002002I2025012012I3020102102I4010110311004I50051110411014I600311110511104I700211111511114(2)由于通用寄存器有8个,则指令中通用寄存器字段应为3位;操作码字段2位可有4个码点,用三个码点表示三条指令,另一个码点则作为扩展标志。所以3条8位长的寄存器寄存器型指令格式如下:操作码(2位)寄存器1(3位)寄存器2(3位)由于变址寄存器有2个,则指

8、令中变址寄存器字段应为1位;变址范围-127+127,则指令中相对位移字段应为8位;操作码字段前2位可有4个码点,用三个码点表示三条指令,另一个码点则作为扩展标志。扩展2位正好可表示四条指令,操作码字段则为4位。所以4条16位长的寄存器存储器型指令格式如下:操作码(4位)寄存器(3位)变址寄存器(1位)相对位移(8位)特别地,当采用3/4扩展编码时,使用频度高的用短码表示,使用频度低的用长码表示,其相应的编码如表所示。4.65 某模型机9条指令使用频度为:ADD(加) 30% SUB(减) 24% JOM(按负转移)6% STO(存) 7%JMP(转移)7% SHR(右移)2% CIL(循环左

9、移)3% CLA(清除)20%STP(停机)1%要求有两种指令字长,都按双操作数指令格式编排,采用扩展操作码,并限制只能有两种操作码码长。设该机有若干通用寄存器,主存为16位宽,按字节编址,采用按整数边界存储,任何指令都在一个主存周期中取得,短指令为寄存器-寄存器型,长指令为寄存器-主存型,主存地址应能变址寻址。(1)仅根据使用频度,不考虑其它要求,设计出全Huffman操作码,计算其平均码长;(2)考虑题目全部要求,设计优化实用的操作码形式,并计算其操作码的平均码长;(3)该机允许使用多少可编址的通用寄存器?(4)画出该机两种指令字格式,标出各字段之位数;(5)指出访存操作数地址寻址的最大相

10、对位移量为多少个字节?解:(1)根据给出的使用频度,在构造Huffman树的过程中,有两个结点可供合并,因此可生成不同的Huffman树,其中给出一棵如图所示,相应的Huffman编码如表所示。 Huffman编码的平均长度为:l=lil=0.320.2420.220.0740.0740.0640.0350.0260.016=2.61(位)0.560.010.030.060.120.260.020.030.060.070.141.000.200.070.440.240.30 ADD CLA SUB J0M JMP STO CIL 指令IiPiHuffman编码Li2-5编码(3/6)LiADD

11、I1030012002SUBI2024112012CLAI3020102102STOI400700114110015JMPI500700104110105JOMI600600014110115CILI7003000015111005SHRI80026111015STPI90016111105 STP SHR (2)任何指令都在一个主存周期中取得,那么短指令字长为8位,长指令字长为16位。又指令都是二地址指令,所以短指令寄存器-寄存器型的格式为:操作码(2位)寄存器1(3位)寄存器2(3位)长指令为寄存器-主存型的格式为:操作码(5位)寄存器(3位)变址寄存器(3位)相对位移(5位)由题意可知:

12、指令操作码采用扩展编码,且只能有两种码长。从指令使用频度来看,ADD、SUB和CLA三条指令的使用频度与其它指令的使用频度相差较大,所以用两位操作码的三个码点来表示三条指令,一个码点作为扩展码点,且扩展三位来表示六条指令,即采用2-4扩展编码构成3/6编码,2-4扩展编码如表所示。 2-4扩展编码(3/6)的平均长度为:l=li=2.78(3)(4)由短指令寄存器-寄存器型的格式可知,寄存器号字段长度为3位,寄存器个数为8个。则各字段长度如图格式所标识。而对于长指令寄存器-主存型,一般变址寄存器是某通用寄存器,则变址寄存器号的字段长度为3位,则各字段长度如图格式所标识。(5)由于相对位移字段长

13、度为5位,因此访存地址寻址的最大相对位移量为25=32字节。4.79 下面是一段数据块搬家程序。在RISC处理机中,为了提高指令流水线的执行效率,通常要采用指令取消技术。START:MOVE AS,R1 ;把源数组的起始地址送入变址寄存器R1MOVE NUM,R2 ;把传送的数据个数送入R2LOOP: MOVE (R1),ADAS(R1) ;ADAS为地址偏移量,在汇编过程中计算INC R1 ;增量变址寄存器DEC R2 ;剩余数据个数减1BGT LOOP ;测试N个数据是否传送完成HALT ;停机NUM: N ;需要传送的数据总数(1)如果一条指令的执行过程分解为“取指令”和“分析”两个阶段

14、,并采用两级流水线。为了采用指令取消技术,请修改上面的程序。(2)如果N=100,采用指令取消技术后,在程序执行过程中,能够节省多少个指令周期?(3)如果把一条指令的执行过程分解为“取指令”、“分析”(包括译码和取操作数等)和“执行”(包括运算和写回结果等)三个阶段,并采用三级流水线。仍然要采用指令取消技术,请修改上面的程序。 解:(1)START:MOVE AS,R1MOVE NUM,R2MOVE (R1),ADAS(R1)LOOP:INC R1DEC R2BGT LOOPMOVE (R1),ADAS(R1)HALTNUM:N (2)解决转移指令引起的流水线断流可插入一条无效的空操作指令(NOP)。空操作指令也要占用一个机器周期,又不执行任何实际的操作。当N=100时,则要浪费100个机器周期(50个指令周期)。采用指令取消技术后,仅在转移不成功时取消指令,浪费1个机器周期(0.5个指令周期)。因此可节省49.5个指令周期。(3)START:MOVE AS,R1MOVE NUM,R2MOVE (R1),ADAS(R1)INC R1LOOP:DEC R2BGT LOOPMOVE (R1),ADAS(R1)INC R1HALTNUM:N 专心-专注-专业

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!