为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 杭电_计算机组成原理_包建_课后作业答案

杭电_计算机组成原理_包建_课后作业答案

2023-04-21 8页 doc 4MB 25阅读

用户头像 个人认证

is_177944

20余年电工实际工作经验,目前在国企担任电工工程师

举报
杭电_计算机组成原理_包建_课后作业答案《运算器》P613.3写出下列各数的原码、反码和补码,机器数长度为8位:真值二进制真值原码反码补码(1)000000000,00000000,00000000,00000001,00000001,1111111(2)-127-11111111,11111111,00000001,0000001(3)-0.5-0.10000001.10000001.01111111.1000000(4)-19/128-0.00100111.00100111.11011001.1...
杭电_计算机组成原理_包建_课后作业答案
《运算器》P613.3写出下列各数的原码、反码和补码,机器数长度为8位:真值二进制真值原码反码补码(1)000000000,00000000,00000000,00000001,00000001,1111111(2)-127-11111111,11111111,00000001,0000001(3)-0.5-0.10000001.10000001.01111111.1000000(4)-19/128-0.00100111.00100111.11011001.1101101(5)10011001000,11001000,11001000,1100100(6)23/640.0101110.01011100.01011100.0101110P613.4写出下列各机器数的二进制真值X:(1)[X]补=0,1001X=1001(2)[X]补=1,1001X=-111(3)[X]原=0,1101X=1101(4)[X]原=1,1101X=-1101(5)[X]反=0,1011X=1011(6)[X]反=1,1011X=-100(7)[X]移=0,1001X=-111(8)[X]移=1,1001X=+1001(9)[X]补=1,0000000X=-10000000B,X=-128(10)[X]反=1,0000000X=-1111111B,X=-127(11)[X]原=1,0000000X=-0(12)[X]移=1,0000000X=0P1074.1 X=0.1101Y=-0.0110(设机器数长度为8位)[X]补=0.1101000[-X]补=1.0011000[2X]补=溢出[-2X]补=溢出[X/2]补=0.0110100[-X/2]补=1.1001100[Y]补=1.1010000[-Y]补=0.0110000[2Y]补=1.0100000[-2Y]补=0.1100000[Y/2]补=1.1101000[-Y/2]补=0.0011000[-Y/4]补=0.0001100P61:5、阶码(6位移码)尾数(6位原码)X=-25/64=-0.011001B,Y=2.875=10.111B[X]浮=0,111111.11001=7F9H[Y]浮=1,000100.10111=897H[Z]浮=9F4H=1,001111.10100=-80P61:6、机器数字长16位无符号整数:原码示的定点整数:1,111…11~0,111…11即补码表示的定点整数:1,00…000~0,111…11即补码表示的定点小数:1.00…000~0.111…11即非规格化浮点数:阶码(8位移码)尾数(8位补码)最大数=阶码=1,1111111尾数=0.1111111最小数=阶码=1,1111111尾数=1.0000000最大负数=阶码=0,0000000尾数=1.1111111最小正数=阶码=0,0000000尾数=0.0000001规格化浮点数:最大数=阶码=1,1111111尾数=0.1111111最小数=阶码=1,1111111尾数=1.0000000最大负数=阶码=0,0000000尾数=1.0111111最小正数=阶码=0,0000000尾数=0.1000000P107:2、(1)(2)P108:4-14-2P108:55-1补码BOOTH算法5-2补码BOOTH算法P108:6、6-1原码恢复余数算法6-1原码加减交替算法6-2原码恢复余数算法6-2原码加减交替算法P1087-1补码加减交替算法7-2补码加减交替算法P108:8-1阶码(5位补码)尾数(6位补码)(1)X=-1.625=-1.101BY=5.25=101.01BX+YX-Y:1、对阶同上2、尾数相减:11.1100110+11.01011[EX-Y]补=11.00100103、结果不需规格化4、舍入处理:[EX-Y]补=1.00101[X-Y]=0,00111,00101P108:8-2X=0.2344=0.00111Y=-0.1133=-0.00011X-Y:1、对阶同上2、尾数相减:00.11100+00.01100[EX-Y]补=01.01000发生正溢尾数右移,阶码加1[EX-Y]补=0.10100[Mx-y]=1.11113、结果不需规格化4、舍入处理:[EX-Y]补=0.10100[X-Y]=1,11110,10100P108:9-1阶码(5位移码)尾数(6位补码)(1)X=5.25=101.01BY=-1.625=-1.101BX*Y9-1X/Y:9-2X*Y9-2X/Y《存储体系》P225:2、P225:3、最大主存容量=共需芯片;若采用异步刷新,则刷新信号的周期为每块8字节,则Cache容量为,即c=9,Cache采用2路组相联映射,则r=1。主存容量为,即m=16。每块包含4个字,每字包含2个字节。主存字地址=462EH=00010001,10001011,10;因此该字映射到Cache的第139组。分析地址:128K的RAM区由SRAM芯片构成;分为8组,组与组之间进行字扩展;每个组内有2片进行位扩展。P225:5、平均访问时间其中:ta——平均访问时间;tc——Cache的存储周期;tm——主存的存储周期;tp——磁盘的存储周期;hc——Cache的命中率;hm——主存的命中率。所以,P168:6、命中率平均访问时间e=tc/ta=40/45=8/9P168:7、4路组相联映射,所以r=2每块4字,所以b=2;每字32位,所以每字包含4字节。Cache容量为,故c=9主存容量为,故m=20Cache共分为:2c-r=29-2=128组。P226:8、4路组相联映射,所以r=2每块64字,所以b=6;Cache容量为,故c=7主存容量为,故m=12主存字地址0~8447,位于主存的哪几块内呢?,即主存的第0~8447字位于连续的132块内。,因此这132块连续分布在第0~4大组内,其中在第4大组中只有4块。CPU第1次依次访问主存的0~8447字时不命中132次。Cache的变化如图所示CPU从第2次开始直到第21次访问主存的0~8447字时,每轮不命中20次(从第0~4大组的前4块都不命中,其余都命中),Cache的变化如图所示因为,命中率设使用Cache比不使用Cache在速度上提高x倍,则《指令系统》12、地址指令0019HOPMOD001AHDISP第一条转移指令:0019HJMP001AH0006H(PC)=001AH,执行该JMP指令后(PC)=001AH+0006H=0020H第二条转移指令:0019HJMP001AH0025H(PC)=001AH,执行该JMP指令后(PC)=001AH+0025H=003FH13、寄存器-存储器型指令是指一个操作数来自寄存器,另一个操作数来自存储器。(1)指令字长32位:OP(6)MOD(3)REG(4)ADDR(19)直接寻址时EA=ADDR,因此主存最大存储空间为219字。(假设存储器按字编址)间接寻址时EA=(ADDR),因此操作数地址存放在主存地址为0~219-1的单元内,假设存储器按字编址,则EA应该是32位的地址,则主存最大存储空间为232字。(2)其实用32位通用寄存器做基址寄存器,类似于80X86机器上存储器分段管理。EA=32位基地址+偏移地址,所以EA是32位,则主存最大存储空间为232字。16、设某机寄存器字长16位,用16进制表示,已知:变址寄存器内容为0004H,PC的内容为0003H,内存中部分单元内容如下:地址:内容地址:内容0002H:000AH0007H:000AH0003H:0002H0008H:0002H0004H:0007H0009H:0003H0005H:0004H000AH:0009H0006H:0005H000BH:0008H指令为双字长指令,格式如下:操作码,寻址方式码,寄存器号(16位)0002H直接地址/间接地址/立即数/相对位移量/形式地址(16位)0007H若当前指令分别为下列寻址方式时,试求出操作数填入下表。寻址方式EA=操作数直接0007H000AH间接000AH0009H立即/0007H变址0004H+0007H000bH某机器字长16位,采用单字长指令,每个地址码6位。试采用操作码扩展技术,设计14条二地址指令,80条一地址指令,60条零地址指令。请给出指令编码示意图。双操作数指令格式:OP(4位)A1(6位)A2(6位)14条双操作数指令OP=0000…OP=1101A1(6位)A2(6位)单操作数指令格式:OP(10位)A1(6位)80条双操作数指令OP=1110000000…OP=1110111111OP=1111000000…OP=1110001111A1(6位)无操作数指令格式:OP(16位)60条双操作数指令OP=1110010000000000…OP=1110010000111011设某8位计算机,除HALT指令外,指令均为双字长,格式如下:OP(4位)M(2位)Rd(2位)A(8位)Rd为目的操作数的寄存器号,编码分配如下:00——R001——R110——R211——R3M为源操作数的寻址方式,编码分配如下:00—立即数寻址01—直接寻址10—相对寻址11—变址寻址(变址寄存器为R3)A为源操作数的立即数、直接地址、间接地址或偏移地址。OP为操作码,编码分配如下:0000——ADD0001——SUB0010——AND0011——MOV0100——JMP0101——INC(自增1)……1111——HALT(动态停机)其中,假设:PC的内容为22H;变址寄存器R3的内容为30H;主存部分单元的内容如下:主存地址:内容主存地址:内容主存地址:内容20H:22H27H:02H2EH:00H21H:33H28H:21H2FH:01H22H:35H29H:0FH30H:02H23H:20H2AH:48H31H:03H24H:01H2BH:01H32H:04H25H:20H2CH:55H33H:05H26H:1DH2DH:F0H34H:06H问:CPU启动执行指令到停机,期间执行了哪几条指令?写出每条指令的功能、寻址方式、操作数及执行结果。解:由于(PC)=22H,即程序的第一条指令地址为22H,从22H开始,执行到2DH(HALT指令)为止,共五条指令。经分析,所有指令的目的操作数的寻址方式均为寄存器寻址方式,为R1。下面列出每条指令的功能、源操作数的寻址方式、源操作数及执行结果。PC指令助记符寻址方式EA源操作数执行结果22H35HMOV直接寻址20H(20H)=22H(R1)=22H23H20H24H01HADD立即数——20H(R1)=(R1)+20H=42H25H20H26H1DHSUB变址寻址(R3)+02H=32H(32H)=04H(R1)=(R1)-04H=3EH27H02H28H21HAND立即数——0FH(R1)=(R1)·0FH=0EH·29H0FH2AH48HJMP相对(PC)+01H=2CH+01H=2DH——(PC)=2DH2BH01H2CH55H——————————2DHF0HHALT——————停机《控制器》6、设某机平均执行一条指令需要两次访问内存,平均需要三个机器周期,每个机器周期包含4个节拍周期。若机器主频为25MHz,试回答:1)若访问主存不需要插入等待周期,则平均执行一条指令的时间为多少?2)若每次访问内存需要插入2个等待节拍周期,则平均执行一条指令的时间是又多少?解:(1)(2)7、设某机主频为8MHz,每个机器周期包含4个节拍周期,该机平均指令执行速度为1MIPS。试回答:1)该机的平均指令周期是多少时间?2)平均每条指令周期包含几个机器周期?解:(1)(2)8、参见图7-41的数据通路,指令“INCR1”将R1寄存器的内容加1,画出其指令周期微程序图,并根据表7-11和表7-12写出每一条微指令码。解:INCR1;(R1)+1R1BTOOTBFUNCFSS3-S0MCi空M6-M011011100010000000000001001100001000000000000001100000000110000000001000000101100000000000000010010000100000000000000019、根据图7-41所示的模型机结构和数据通路,写出以下指令从取址到执行的全部微操作序列,说明各条指令需要哪几个机器周期,需要几次访问内存及完成什么操作。1)SUBA,R,该指令完成(A)-R→(A),源操作数一个为寄存器寻址,目标操作数为指令提供的内存有效地址A。2)JMP偏移量,该指令完成PC+偏移量→PC。解:(1)SUBA,R;(A)-R→(A)指令为双字节格式:OP(SUB)**RdAddr所以,共需要8个机器周期,共访存4次。(2)JMPDISP;(PC)+DISP→PC所以,共需要7个机器周期,共访存2次10、假设某机器主要部件有:程序计数器PC、指令寄存器IR、通用寄存器R0~R3、暂存器DD1和DD2、ALU、移位器、存储器地址寄存器MAR及存储器M。1)要求采用单总线结构,画出包含上述部件的逻辑框图,并注明数据流动方向。2)画出ADD(R1),(R2)指令在取指和执行阶段的操作步骤流程图。R1寄存器存放目标操作数地址,R2寄存器存放源操作数地址。3)写出各操作步骤所需的全部微操作命令。解:(1)(2)(3)取ADD指令的微指令①PC-B#、B-MAR、PC+1②M-R#、B-IR③指令译码信号MAP#有效执行ADD指令的微指令R2-B#、B-MARM-R#,B-DD1R1-B#、B-MARM-R#,B-DD2“+”,ALU-B#,M-W#11、假设某机共有76条指令,平均每一条指令由11条微指令组成,其中有一条取指令的微指令是所有指令公共的,该机共有微命令31个,微指令的微操作码采用直接控制法。试问:1)该机微指令长度为多少?2)控制存储器的容量应为多少?解:设微指令共有N条,N=76*11-75=761条;下址字段长为X位,2X≥761,则X≥10(1)所以,该机微指令长度=31+10=41位(2)控制存储器的容量应该≥761×41位,取1024×41位。12、某机采用微程序控制方式,其存储器容量为512×48(位),微程序在整个控制存储器中实现转移,可控制微程序的条件共4个,判别测试字段采用编译法。微指令采用水平型格式,后继微指令地址采用判定方式,如图所示:微命令字段判别测试字段下地址字段←操作控制→←——————顺序控制————————→微指令中的三个字段分别应多少位?画出对应这种微指令格式的微程序控制器逻辑框图。解:(1)22=4,512=29控制字段(48-9-2=37位)判别测试字段(2位)下址字段(9位)(2)14、图7-46为某模型机的微程序流程图,图中每一个框表示一条微指令。在点(1)处为指令译码后转入指令的微程序入口的多路分支点,由指令寄存器IR的I5I4两位来决定转入哪一个入口。在点(2)处根据状态条件F实现条件转移,微指令中判断测试位为直接控制法。控存容量能容纳图7-46所列出的微指令即可。1)微指令的判断测试位需要几位二进制?微指令的下址字段需要几位?2)在图中标出每条微指令的微地址。3)写出每条微指令的下址字段内容及判断测试字段码。4)画出微地址转移逻辑电路图。解:所列出的微指令共25条,控存容量能容纳这25条微指令即可,则下址字段长5位;(1)因为微指令中判断测试位为直接控制法,只有2种转移测试和顺序执行,所以判断测试位需要3位二进制。(2)假如微指令B的下址字段为10000B,设微程序入口地址根据I5I4两位修改微指令B的下址字段的末两位,则微程序入口地址=100I5I4B。假如微指令G的下址字段为11000B,设条件转移地址根据F位修改微指令G的下址字段的第1位,则条件转移地址=1100FB。则每条微指令的微地址如图所示。设3位判断测试字段码:判断测试字段码=1H:顺序执行(后继微地址=下址字段)判断测试字段码=2H:微程序入口散转(后继微地址=下址字段末两位ANDI5I4)判断测试字段码=4H:条件转移(后继微地址=下址字段第1位ANDF)微指令判断测试字段码下址字段内容微指令判断测试字段码下址字段内容A1H01HN1H0CHB2H10HO1H15HC1H02HP1H16HD1H06HQ1H05HE1H0AHR1H09HF1H0FHS1H0DHG4H18HT1H0EHH1H07HU1H16HI1H08HV1H16HJ1H14HW1H0EHK1H03HX1H16HL1H04HY1H00HM1H08H(4)
/
本文档为【杭电_计算机组成原理_包建_课后作业答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索