您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 计算机组成与体系结构(lindanull)第五章课后习题讲解
第五章课后题答案2、3、已知2M*16的主存储器的前两个字节中有如下的十六进制数值:字节0处为FE字节1处为01,如果这些字节保存的是一个16位2补整数,问如果按照如下的方式存储数据,那么实际存放的十进制数值分别是多少?a)存储器是大端格式b)存储器是小端格式答案:大端格式:FE01地址大端456789A1小端A1896745地址大端0000058A小端8A050000地址大端14148888小端88881414原码为:小端格式:01FE原码为:8、将下列表达式由中缀表示法变换成反向逆波兰(后缀)表示法:a)X*Y+W*Z+V*Ub)W*X+W*(U*V+Z)c)(W*(X+Y*(U*V)))/(U*(X+Y))答案:a)X*Y+W*Z+V*U=XY*+WZ*+VU*=XY*WZ*++VU*=XY*WZ*+VU*+b)W*X+W*(U*V+Z)=WX*+W*(UV*+Z)=WX*+W*(UV*Z+)=WX*+WUV*Z+*=WX*WUV*Z+*+c)(W*(X+Y*(U*V)))/(U*(X+Y))=(W*(X+Y*(UV*)))/(U*(XY+))=(W*(X+YUV**))/UXY+*=(W*(XYUV**+))/UXY+*=(WXYUV**+*)/UXY+*=WXYUV**+*UXY+*/9、将下列反向逆波兰式(后缀)表示法转换成中缀表示法:a)WXYZ-+*=WXY-Z+*=WX+Y-Z*=W*(X+Y-Z)b)UVWXYZ+*+*+=UVWXY+Z*+*+=UVWX*(Y+Z)+*+=UVW+X*(Y+Z)*+=UV*(W+X*(Y+Z))+=U+V*(W+X*(Y+Z))c)XYZ+VW-*Z++=XY+ZV-W*Z++=X(Y+Z)*(V-W)Z++=X(Y+Z)*(V-W)+Z+=X+((Y+Z)*(V-W)+Z)11、如果某台计算机的指令格式为:指令的长度共11位,而地址域的大小占4位,试证明采用这种指令格式的计算机是否可能有如下的指令形式,并验证你的答案:5个二地址指令45个一地址指令32个零地址指令000xxxxxxxx001xxxxxxxx010xxxxxxxx5个二地址指令011xxxxxxxx100xxxxxxxx45个一地址指令:1010000xxxx16条1011111xxxx1100000xxxx16条1101111xxxx1110000xxxx13条1111100xxxx32个0地址指令1111110000016条111111011111111111000016条11111111111b)假如某台采用上述指令格式的计算机体系结构,并设计了6个2地址指令和24个0地址指令,试问可以在该指令系统中添加的1地址指令的最大数目是多少?二地址:操作码地址码一地址码二一地址:操作码地址码零地址:操作码假设2地址这样用:000xxxxxxxx6个101xxxxxxxx0地址指令:24=3*8111111110008个11111111111111111100008个11111110111111111010008个11111101111一地址前三位110:1100000xxxx共16条1101111xxxx一地址前三位111:1110000xxxx共14条1111101xxxx∴最大数目是3013、如果有指令Load1000,并且已知存储器和寄存器RI中包含如下数值:存储器R110001100120013001400假设R1隐含在变址寻址方式中,试确定指令嵌入到累加器中实际数值,并填写下表:寻址方式装入AC的值立即寻址1000直接寻址1400间接寻址1300变址寻址10002001400400100011001300立即寻址:要操作的数据本身是指令的一部分,指令Load1000的操作就是将数值1000直接装入AC中。直接寻址:是指在指令中直接指定要引用的数值的存储器地址,指令Load1000:就是将存储器地址为1000的存储单元中的数值装入累加器AC中。间接寻址:地址域中的二进制数用来指定一个寄存器地址,该地址中的内容将被用作一个指针。操作数的有效地址是通过访问这个存储器地址来获得的。Load1000中的1400实际上是所要求的操作数的有效地址。变址寻址:用变址寄存器RI来存储一个偏移量,将偏移量和操作数相加,就产生了指令所要求的数据的有效地址:1000+200=1214、如果有指令Load500,已知存储器和寄存器RI中包含如下数值:存储器R1100400500600700假设R1隐含在变址寻址方式中,试确定指令嵌入到累加器中实际数值,并填写下表:寻址方式装入AC的值立即寻址500直接寻址100间接寻址600变址寻址80015.已知在某个非流水线系统中处理一项任务需要200ns.现在将相同的任务放到一个始终周期为40ns的5级流水线体系结构上进行处理。求出对于处理200项任务该流水线可以获得的加速比。比较非流水线单元,该流水线单元可以提升的最大加速比是多少?Ans.SpeedUp=(200nsx200)/((200+5-1)(40ns))=40000/8160=4.91MaxSpeedUp=519、已知一台计算机的存储器为256KB字,每个字字长为32位。计算机的指令格式具有4个区域:代码域、模式域,指定第1到第7种寻址方式;寄存器域,指定第1到第60个寄存器;存储器地址域。假定一条指令的长度为32位。试回200600300100500800答下列问题:a)模式域必须有多大?b)寄存器域必须有多大?c)地址域必须有多大?d)操作码域必须有多大?a)模式域,指定第1到第7种寻址方式:23=87,3位b)寄存器域,指定第1到第60个寄存器;26=6460,6位c)存储器为256KB=218,因此需要18位d)32-(3+6+18)=5位第六章1、假设某台计算机使用直接映射的高速缓存。计算机的主存储器的容量为202字,高速缓存有32个存储空间块,且每个高速缓存块包含16个字。问:a)主存储器可以划分为多少个信息块?202/16=202/42=162b)从高速缓存的角度来看,存储器地址采用的是什么格式?即分别说明地址中的标记域,块域和字域的大小主存储器的容量为202字,需要20位的地址块域:32=525位字域:16=424位标记域:11位c)存储器引用时,地址将会被映射到高速缓存中的那个空间块?直接映射方式的主存储器地址格式:11位5位4位标记块字160DB63=1101101101100011块域:10110即块号为223、假设某台计算机使用全关联高速缓存,其主存储器的容量为162字,高速缓存中有64个存储空间块,每个高速缓存块包含有32个字,问:a)主存储器中有多少个信息块?162/32=162/52=112b)高速缓存可以看到的存储器地址格式是什么样的?即分别说明地址的标记域、块域和字域的大小。主存储器的容量为162字,需要16位地址,每个块是32个字,字域:5位,标记:11位关联式映射的主存储器的地址格式11位5位标记字c)存储器引用时,地址F8C916将会被映射到高速缓存的那个存储空间块?全关联高速缓存,允许主存储器中的数据块映射到高速缓存的任意位置。6、一个由4个块组构成的2路的组关联高速缓存。主存储器有2KB块,每块包含8个字。a)说明主存储器的地址格式,可以利用这种格式将主存储器地址映射到高速缓存存储器,并确定地址中的各个域的大小。主存储器容量:2KB*8=112*32=142需14位地址,每块8个字,字域:3位高速缓存由4个组组成,组域:2位标记:9位b)如果一个程序执行三次从主存储器单元810到5110的循环操作,请计算其命中率。这里可以使用分数的形式来表示命中率。访问的数据在高速缓存中即为一次命中!第一次:没有命中:8、16、24、32、40、48共6次命中:(51-8+1)-6=38第二次:命中:5*8+4=44次第三次:命中:5*8+4=44次命中率:(38+44+44)/(44*3)=126/132
本文标题:计算机组成与体系结构(lindanull)第五章课后习题讲解
链接地址:https://www.777doc.com/doc-2100875 .html