CPU习题课练习
唐朔飞《计算机组成原理》课后习题详解(CPU的结构和功能)【圣才出品】

8.2课后习题详解1.CPU有哪些功能?画出其结构框图并简要说明每个部件的作用。
答:CPU功能:CPU具有控制程序的顺序执行、产生完成每条指令所需的控制命令、控制各种操作的执行时间、对数据进行算术和逻辑运算以及处理中断等功能,其框图如图8-5所示。
图8-5图中寄存器包括专用寄存器(如程序计数器、指令寄存器、堆栈指示器、存储器地址寄存器、存储器数据寄存器、状态寄存器等)以及通用寄存器(存放操作数);CU产生各种微操作命令序列;ALU完成算术和逻辑运算;中断系统用于处理各种中断。
2.什么是指令周期?指令周期是否有一个固定值?为什么?答:指令周期是CPU每取出并执行一条指令所需的全部时间,也即CPU完成一条指令的时间。
操作指令又可以分为:取指,分析,执行指令。
取指阶段完成取指令和分析指令的操作,又称取指周期;执行阶段完成执行指令的操作,又称执行周期。
指令周期=取指周期+执行周期。
因为各种指令操作功能不同,所以各种指令的指令周期也不同,指令周期的长度主要受到指令在执行阶段的访存次数和执行阶段需要完成的操作的影响。
如图8-6所示,各种指令周期的比较结果表明指令周期没有固定值。
图8-6各种指令周期的比较3.画出指令周期的流程图,分别说明图中每个子周期的作用。
答:指令周期图如图8-7所示:取指周期完成取指令和分析指令的操作;间址周期用于取操作数的有效地址;执行周期完成执行指令的操作;中断周期是当CPU响应中断时,由中断隐指令完成保护程序断点、硬件关中断和向量地址送PC(硬件向量法)的操作。
图8-74.设CPU内有这些部件:PC、IR、SP、AC、MAR、MDR和CU。
(1)画出完成间接寻址的取数指令“LDA @X”(将主存某地址单元的内容取至AC 中)的数据流(从取指令开始)。
(2)画出中断周期的数据流。
答:CPU数据流向与所采用的数据通路结构直接相关,不同的数据通路中的数据流是不一样的。
通常用的数据通路结构方法有直接连接、单总线、双总线、三总线等形式。
第五章中央处理器习题参考答案1.请在括号内填入适当答案。在CPU中

第五章中央处理器习题参考答案1.请在括号内填入适当答案。
在CPU中:(1) 保存当前正在执行的指令的寄存器是(指令寄存器IR);(2) 保存当前正在执行的指令地址的寄存器是(程序计数器AR);(3) 算术逻辑运算结果通常放在(通用寄存器)和(数据缓冲寄存器DR)。
2.参见下图(课本P166图5.15)的数据通路。
画出存数指令"STA R1 ,(R2)"的指令周期流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。
标出各微操作信号序列。
解:"STA R1 ,(R2)"指令是一条存数指令,其指令周期流程图如下图所示:3.参见课本P166图5.15的数据通路,画出取数指令"LDA(R3),RO"的指令周期流程图,其含义是将(R3)为地址的主存单元的内容取至寄存器R0中,标出各微操作控制信号序列。
5.如果在一个CPU周期中要产生3个脉冲 T1 = 200ns ,T2 = 400ns ,T3 = 200ns,试画时序产生器逻辑图。
解:节拍脉冲T1 ,T2 ,T3 的宽度实际等于时钟脉冲的周期或是它的倍数,此时T1 = T3 =200ns ,T2 = 400 ns ,所以主脉冲源的频率应为 f = 1 / T1 =5MHZ 。
为了消除节拍脉冲上的毛刺,环型脉冲发生器可采用移位寄存器形式。
下图画出了题目要求的逻辑电路图和时序信号关系。
根据关系,节拍脉冲T1 ,T2 ,T3 的逻辑表达式如下:T1 = C1·, T2 = , T3 =6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的。
已知微指令长度为32位,请估算控制存储器容量。
解:微指令条数为:(4-1)×80+1=241条取控存容量为:241×32/8=964B7. 某ALU器件使用模式控制码M,S3,S2,S1,C来控制执行不同的算术运算和逻辑操作。
微机原理练习题..

例1:8088属于多少位微处理器?数据线和地址线根数分别是多少?寻址空间多大?答:1.8088属于准16位微处理器;有8根数据线,20根地址线;寻址空间为220B,即1MB)。
例2:在8086/8088 CPU中,物理地址和逻辑地址是指什么?已知逻辑地址为1F86:38A5H,如何计算出其对应的物理地址?答:物理地址是 CPU访问存储器所用的地址。
逻辑地址是段地址和偏移地址形式的地址,即汇编语言程序中使用的存储器地址。
若已知逻辑地址为1F00:38A0H,则对应的物理地址=1F00H x 16+38A0H=228A0H。
例3:设(BL)=1100 1011B,变量V AR的内容为0011 0010B,求下列指令单独执行后BL的内容:(1)XOR BX,VAR;(2)AND BX,V AR;(3)OR BX,V AR;(4)XOR BX,11110000B;(5)AND BX,00001111B;解:(1)F9H (2)2H(3)0FBH(4)3BH(5)0BH例4:分析下列指令,对正确指令写出源操作数的寻址方式,对错误指令写出原因(设V AR为字变量)。
(1)MOV BX,V AR[SI](2)MOV BP,AL(3)MOV CS,AX(4)MOV DS,0100H (5)MOV AX,BX解:(1) ,寄存器相对寻址(2) ,类型不一致(3) ,CS不能作为目的操作数(4) ,当DS、ES、SS作为目的操作数时,源操作数不能是立即数(5) ,寄存器寻址例5.已知中断向量表中,001C4H中存放着2200H,001C6H中存放着3040H,则其中断类型码是____H,中断服务程序的入口地址的物理地址和逻辑地址分别是_____H和______H:_________.答:71H,32600H和3040H:2200H例6.8086CPU响应外部中断请求是在_ __A.一条指令执行结束B.一个机器周期结束C.立即响应D.根据中断类型决定例7.硬件中断可分为_ __和_____(答案:非屏蔽中断和可屏蔽中断)例8.下面是某8086微机内存中的部分数据,则中断类型号为11H的中断服务程序的入口地址存放在___A.0000H:0011HB. 0000H:0022HC. 0000H:0033HD. 0000H:0044H例9.当有如下中断请求时,微处理器执行完当前指令后,优先级别最底的响应是_ __A.INT0B.NMIC.INTRD.单步中断例10.在计算机系统中,微处理器对存储器单元和I/O端口的编址方法有统一编址和独立编址两种方法,8086/8088 CPU对I/O端口编址采用的是方法,当8088 CPU工作在最小方式时,用于区分访问存储器或I/O端口的控制信号(即引脚)为。
微机原理课后习题答案

第二章1.8086CPU由哪两部分组成?它们的主要功能是什么?8086CPU由总线接口部件BIU和指令执行部件EU组成,BIU和EU的操作是并行的。
总线接口部件BIU的功能:地址形成、取指令、指令排队、读/写操作数和总线控制。
所有与外部的操作由其完成。
指令执行部件EU的功能:指令译码,执行指令。
2.8086CPU中有哪些寄存器?各有什么用途?8086CPU的寄存器有通用寄存器组、指针和变址寄存器、段寄存器、指令指针寄存器及标志位寄存器PSW。
4个16位通用寄存器,它们分别是AX,BX,CX,DX,用以存放16位数据或地址。
也可分为8个8位寄存器来使用,低8位是AL、BL、CL、DL,高8位是AH、BH、CH、DH,只能存放8位数据,不能存放地址。
指针和变址寄存器存放的内容是某一段内地址偏移量,用来形成操作数地址,主要在堆栈操作和变址运算中使用。
段寄存器给出相应逻辑段的首地址,称为“段基址”。
段基址与段内偏移地址结合形成20位物理地址。
指令指针寄存器用来存放将要执行的下一条指令在现行代码中的偏移地址。
16位标志寄存器PSW用来存放运算结果的特征,常用作后续条件转移指令的转移控制条件。
5.要完成下述运算或控制,用什么标志位判断?其值是什么?⑴比较两数是否相等?将两数相减,当全零标志位ZF=1时,说明两数相等,当ZF=0时,两数不等。
⑵两数运算后结果是正数还是负数?用符号标志位SF来判断,SF=1,为负数;SF=0,为正数。
⑶两数相加后是否溢出?用溢出标志位来判断,OF=1,产生溢出;OF=0,没有溢出。
⑷采用偶校验方式。
判定是否要补“1”?用奇偶校验标志位判断,有偶数个“1”时,PF=1,不需要补“1”;有奇数个“1”时,PF=0,需要补“1”。
(5)两数相减后比较大小?●ZF=1时,说明两数是相等的;●ZF=0时:无符号数时,CF=0,被减数大;CF=1,被减数小。
带符号数时,SF=OF=0或SF=OF=1,被减数大;SF=1,OF=0或SF=0,OF1,被减数小。
操作系统习题课2

• 最早结束的程序为B,最后结束的程序为C。
• 程序A为250ms。程序B为220ms。程序C为 310ms。
• CPU利用率为(310-120)/310=61.3%
第二章
• 11 有5个批处理作业A到E均已到达计算中心,其运行时间 分别2、4、6、8和10分钟;各自的优先级分别被规定为1、 2、3、4和5,这里5为最高级。对于(1)时间片轮转算法、 (2)优先数法、(3)短作业优先算法、(4)先来先服务调 度算法(按到达次序C、D、B、E、A),在忽略进程切换时 间的前提下,计算出平均作业周转时间。(对(1)每个作 业获得相同的2分钟长的时间片;对(2)到(4)采用单道运 行,直到结束。)
(4)SJF调度算法
• 20,有一个四道作业的操作系统,若在一段时间内先后
到达6个作业,它们的提交和估计运行时间由下表给出:
• 作业 提交时间 估计运行时间(分钟)
• 1 8:00 60
• 2 8:20 35
• 3 8:25 20
• 4 8:30 25
• 5 8:35
5
• 6 8:40 10
• 系统采用剩余SJF调度算法,作业被调度进 入系统后中途不会退出,但作业运行时可 被剩余时间更短作业抢占。(1)分别给出6个 作业的执行时间序列、即开始执行时间、 作业完成时间、作业周转时间。(2)计算平 均作业周转时间。
• (4) 根据进程调度可抢占原则,J3第一个做完。而这时J5、 J6均己进入后备队列,而J5可进入主存。
• (5) 因J5最短,故它第二个完成。这时J6方可进入主存。 因J6最短,故它第三个完成。
• (6) 然后是:J4、J2和J1
• (7) T=(155+95+20+55+15+20)/6=60
(完整版)微机原理课后单元习题-单元2-8086cpu

习题二 8086微处理器答案主要内容:主要介绍8086/8088CPU内部结构。
了解80X86CPU的特点。
2.1 8086 CPU在内部结构上由哪几部分组成?其功能是什么?【答】8086的内部结构分成两部分。
总线接口部件BIU,负责控制存储器与I/O端口的信息读写,包括指令获取与排队、操作数存取等。
执行部件EU负责从指令队列中取出指令,完成指令译码与指令的执行行。
2.2 8086的总线接口部件有那几部分组成? 其功能是什么?【答】8086的总线接口部件主要由下面几部分组成:4个段寄存器CS/DS/ES/SS,用于保存各段地址;一个16位的指令指针寄存器IP,用于保存当前指令的偏移地址;一个20位地址加法器,用于形成20位物理地址;指令流字节队列,用于保存指令;存储器接口,用于内总线与外总线的连接。
2.3 8086的执行单元(部件)由那几部分组成?有什么功能?【答】8086的执行单元部件主要由下面几部分组成:控制器、算数逻辑单元、标志寄存器、通用寄存器组。
(1)控制器,从指令流顺序取指令、进行指令译码,完成指令的执行等。
(2)算数逻辑单元ALU,根据控制器完成8/16位二进制算数与逻辑运算。
(3)标志寄存器,使用9位,标志分两类。
其中状态标志6位,存放算数逻辑单元ALU 运算结果特征;控制标志3位,控制8086的3种特定操作。
(4)通用寄存器组,用于暂存数据或指针的寄存器阵列。
2.4 8086内部有哪些通用寄存器?【答】四个16位数据寄存器AX、BX、CX、DX,二个指针寄存器SP、BP, 二个变址寄存器SI、DI。
这些寄存器使用上一般没有限制,但对某些特定指令操作,必须使用指定寄存器,可参考后面指令系统章节。
2.5 8086内部有哪些段寄存器?各有什么用途?【答】四个16位段寄存器:CS、DS、SS、ES,分别保存代码段、数据段、堆栈段与扩展段的段地址。
2.6 8086CPU状态标志和控制标志又何不同?程序中是怎样利用这两类标志的? 8086的状态标志和控制标志分别有哪些?【答】(1)标志分两类:状态标志(6位),反映刚刚完成的操作结果情况。
第8章习题参考答案

第8章习题参考答案1. 如果认为CPU等待设备的状态信号是处于非工作状态(即踏步等待),那么在下面几种主机与设备之间的数据传送中:A主机与设备是串行工作的;B 主机与设备是并行工作的,C 主程序与设备是并行运行的。
A .程序查询方式B .程序中断方式C . DMA方式2. 中断向量地址是B。
A•子程序入口地址 B •中断服务程序入口地址C•中断服务程序入口地址指示器 D •例行程序入口地址3•利用微型机制作了对输入数据进行采样处理的系统。
在该系统中,每抽取一个输入数据就要中断CPU 一次,中断处理程序接收采样的数据,将其放到主存的缓冲区内。
该中断处理需时x秒,另一方面缓冲区内每存储n个数据,主程序就将其取出进行处理,这种处理需时y秒。
因此该系统可以跟踪到每秒 A 次的中断请求。
A . n/ (n 次 + y)B . n/(x + y) n C. min(1 /x, n/y)4•采用DMA方式传送数据时,每传送一个数据就要占用一个 C 的时间。
A .指令周期B .机器周期C.存储周期 D .总线周期5. 通道的功能是:⑴ 控制外围设备,⑵ 组织外围设备和内存之间进行数据传输______ 。
按通道的工作方式分,通道有选择通道、数组多路通道和字节多路通道三种类型。
6. 在图8.9中,当CPU对设备B的中断请求进行服务时,如设备A提出请求,CPU能够响应吗?为什么?如果设备B 一提出请求总能立即得到服务,问怎样调整才能满足此要求?答:不能,因为A、B是同级别的中断。
要使设备B一提出请求总能立即得到服务,除非将B提高到上一级,并令IM3=0,即构成一个3级IR。
7. 在图& 9中,假定CPU取指并执行一条指令的时间为t1,保护现场需t2,恢复现场需t3,中断周期需t4,每个设备的设备服务时间为t A , t B,…,t G。
试计算只有设备A , D, G时的系统中断饱和时间。
答:依次处理设备A,设备D,设备G的时间为:T1 = t1+t2+t3+t4+t AT2 = t1+t2+t3+t4+t DT3 = t1+t2+t3+t4+t G总时间为T = T1+T2+T 3 = 3*( t 1+t2+t3+t4)+ t A + t D + t G&设某机有5级中断;L o, L1, L2, L3, L4,其中断响应优先次序为:L o最高,L1次之,L4最低。
课后习题三(第三、六、八、九章)

课后习题三(第三、六、八、九章)1、CPU是指( B )A. 控制器B. 运算器和控制器C. 运算器、控制器和主存D. 运算器、控制器、主存和I/O2、指令系统中采用不同寻址方式的目的主要是( B )A. 可降低指令译码难度B. 缩短指令字长、扩大寻址空间、提高编程灵活性C. 实现程序控制D. 提高指令执行速度3、零地址运算指令在指令格式中不给出操作数地址,它的操作数来源自( C )A. 立即数和栈顶B. 暂存器C. 栈顶或隐含约定的位置D. 存储器4、单地址指令中,为完成两个数的算术运算,除地址译码指明的一个操作数外,另一个数常采用( C )A. 堆栈寻址方式B. 立即寻址方式C. 隐含寻址方式D. 基址寻址方式5、二地址指令中,操作数的物理位置安排,描述正确的是( C )A. 两个主存单元(且依然在现指令系统中采用)B. 栈顶和次栈顶C. 主存单元或寄存器D. 两个同时为寄存器不允许使用6、操作数在寄存器中的寻址方式称为( C )寻址A. 直接B. 立即C. 寄存器直接D. 寄存器间接7、寄存器间接寻址方式中,操作数在( C )A. 通用寄存器B. 堆栈C. 主存单元D. I/O外设中8、变址寻址方式中,操作数的有效地址是( C )A. 基址寄存器内容加上形式地址B. 程序计数器内容加上形式地址C. 变址寄存器内容加上形式地址D. 形式地址本身9、采用基址寻址可扩大寻址范围,且( B )A. 基址寄存器内容由用户确定,在程序执行过程中一般不可变B. 基址寄存器内容由操作系统确定,在程序执行过程中一般不可变C. 基址寄存器内容由用户确定,在程序执行过程中可随意变化D. 基址寄存器内容由操作系统确定,在程序执行过程可随意变化10、变址寻址和基址寻址的有效地址形成方式类似,但是( C )A. 变址寄存器内容在程序执行过程中是不可变的B. 在程序执行过程中,变址寄存器和基址寄存器的内容可以随意变化C. 在程序执行过程中,变址寄存器的内容可随意变化D. 以上均不对11、堆栈寻址中,设A为累加器,SP为栈顶指针,[SP]为其指向的栈顶单元,如果进栈的动作顺序是(SP)-1→SP,(A)→[SP],那么出栈的动作顺序是( A )A. [SP] →(A),(SP)+1→SPB. (SP)+1→SP,[SP] →(A)C. (SP)-1→SP,[SP] →(A)D. [SP] →(A),(SP)-1→SP12、设变址寄存器为X,形式地址为D,某机具有先变址再主存间址的寻址方式,则这种寻址方式的有效地址为( C )A. EA=(X)+DB. EA=(X)+(D)C. EA=((X)+D)D. EA=((X))+D13、设变址寄存器为X,形式地址为D,某机具有先主存间址再变址的寻址方式,则这种寻址方式的有效地址为( B )A. EA=(X)+DB. EA=(X)+(D)C. EA=((X)+D)D. EA=((X))+D14、运算型指令的寻址和转移类指令的寻址不同点在于( A )A. 前者取操作数,后者决定程序转移地址B. 前者计算转移地址,后者取操作数C. 前者是短指令,后者是长指令D. 前者是长指令,后者是短指令15、指令的寻址方式有顺序和跳跃两种,采用跳跃寻址方式可以实现( C )A. 程序的条件转移B. 程序的无条件转移C. 程序的条件转移和无条件转移D. 以上均不对16、设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量(补码表示),若CPU每当从存储器取出一个字节时,即自动完成(PC)+1 PC。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、设某运算器只由一个加法器和A,B 两个D 型边沿寄存器组成,A,B 均可接加法器输出,A 还可接收外部数据,如图所示,问:(1)外部数据如何才能传送到B (2) 如何实现A+BA 和A+BB(3) 如何估算加法执行时间解:(1) 外部数据传送到B 的操作:S 选D ,CPA,A ∑,M,CPB(2) 实现A+B A 的操作:A ∑,B ∑,+,S 选∑,CPA 实现A+BB 的操作:A∑,B∑,+,CPB(3) 影响加法速度的关键因素是进位信号的传递问题,所以估算加法执行时间要看∑加法器采用何种进位方式,分析进位信号的产生时间。
2、四位运算器框图如图2所示。
ALU 为算术逻辑单元,A 和B 为三选一多路开关,预先已通过多路开关A 的SW 门向寄存器R1、R2送入数据如下,R1=0101,R2=1010,寄存器BR 输出端接四个发光二极管进行显示,其运算过程依次如下:显示灯(1) R1(A )+ R2(B ) BR(1010);(2)R2(A )+ R1(B ) BR(1111); (3) R1(A )+ R1(B ) BR(1010);(4)R2(A )+ R2(B ) BR(1111); (5) R2(A )+ BR (B ) BR(1111); (6)R1(A )+ BR (B ) BR(1010); 试分析运算器的故障位置,说明理由。
FLA∑加AB二CPA B S CCD图2解:运算器的故障位置在多路开关B,其输出始终为R1的值。
分析如下:(1) R1(A)+ R2(B)= 1010,输出结果错(2) R2(A)+ R1(B)= 1111,结果正确,说明R2(A),R1(B)无错(3) R1(A)+ R1(B)= 1010,结果正确,说明R1(A),R1(B)无错由此可断定ALU和BR无错(4) R2(A) + R2(B) =1001,结果错,由于R2(A)正确且R2(A)=1010推知R2(B)=0101,显然多路开关B有问题(5) R2(A) + BR(B) =1111,结果错,由于R2(A)=1010,BR(B)=1111,但现推知BR(B)=0101,证明开关B输出有错(6)R1(A)+BR(B) =1010,结果错,由于R1(A)=0101,本应BR(B)=1111,但现推知BR(B)=0101,证明开关B输出有错综上所述,多路开关B输出有错。
故障性质:多路开关B输出始终为0101,这有两种可能:一是控制信号BS0,BS1始终为01,故始终选中寄存器R 1;二是多路开关B 电平输出始终嵌在0101上。
3、某运算部件的基本结构如图3所示,假定此部件只有加(+)和减(-)两种基本操作,要求:(1) 给出运算部件的所有微命令。
(2) 指出哪些微命令是相容的,哪些是相斥的(3)试用位数最少的操作控制字段来表示全部微命令。
图3解:(1)运算部件的微命令如下图所示。
(2)R2Y 与R1Y 是相斥的;+与-是相斥的;DBUS R1与DBUSR2是相容的;R1X 与R2Y 是相容的。
(3) 微命令采用字段直接编码法。
DBUSR1与DBUSR2在指令的执行过程中不会同时出现,可以将它们放在同一字段,用2位来控制。
+与-也是相斥的,放在同一字段,用2位来控制,但由于能放在同一字段的微命令只有2位,采用直接控制法也只需用2位,所以采用直接控制。
根据以上分析,操作控制字段共有8个微命令,全部采用直接控制方式。
ALU+- XYR1R2ALU DBUSR2Y R1YR1XDBUSDBUSALU+ - XYR1 R2ALU DBUS4、图4所示为双总线结构机器的数据通路,IR 为指令寄存器,PC 为程序计数器(具有自增功能),M 为主存(受R/W 信号控制),AR 为主存地址寄存器,DR 为数据缓冲寄存器。
ALU 由加减控制信号决定完成何种操作。
控制信号G 控制的是一个门电路。
另外,线上标注有控制信号,例如Yi 表示Y 寄存器的输入控制信号,R1o 表示寄存器R1的输出控制信号。
未标注的线为直通线,不受控制。
现有“ADD R2, R0”指令完成(R0) + (R2) → R0的功能操作。
请画出该指令的指令周期流程图,并列出相应的微命令控制信号序列。
假设该指令的地址已放入PC 中。
图4解:ADD 指令是加法指令,参与运算的二数放在R0和R2中,相加结果放在R0中。
指令周期流程图如下图所示,包括取指令阶段和执行指令阶段两部分。
每一方框表示一个CPU 周期。
其中框内表示数据传送路径,框外列出微操作控制信号。
PC ,G AR i 取指 R/W=1DR o ,G,IR iR 2o ,G执 R 0o ,G 行+,G,R0iPC →ARM →DRR →YDR →IRR →XR+ R →R5、一台处理机具有如下指令格式2位6位3位3位X OP源寄存器目标寄存器地址格式表明有8个通用寄存器(长度16位),X指定寻址模式,主存实际容量为256k字。
假设不用通用寄存器也能直接访问主存中的每一个单元,并假设操作码域OP=6位,请问地址码域应分配多少位指令字长度应有多少位假设X=11时,指定的那个通用寄存器用做基值寄存器,请提出一个硬件设计规划,使得被指定的通用寄存器能访问1M主存空间中的每一个单元。
解:(1)因为218=256K,所以地址码域=18位, 操作码域=6位指令长度=18 + 3 + 3 + 6 + 2 = 32位(2)此时指定的通用寄存器用作基值寄存器(16位),但16位长度不足以覆盖1M字地址空间,为此将通用寄存器左移,4位低位补0形成20位基地址。
然后与指令字形式地址相加得有效地址,可访问主存1M地址空间中任何单元。
6、某计算机有8条微指令I1—I8,每条微指令所包含的微命令控制信号见下表所示,a—j 分别对应10种不同性质的微命令信号。
假设微指令的控制字段仅限8位,请安排微指令的控制字段格式。
解:微指令的控制字段为 8 位。
根据 10 个微命令的兼容性和互斥性,分成 3 组。
分别为 2 位、2 位和 4 位的小字段。
每个2 位的组是3 个微命令的编码,需译码。
4 位的组每位是 1 个微命令,不需译码。
本题可以有以下4种不同的解答。
⑴互斥的 d,h,i 为一组。
互斥的 e,f,j 为一组。
其余的 a,b,c,g 为一组。
⑵互斥的 b,i,j 为一组。
互斥的 e,f,h 为一组。
其余的 a,c,d,g 为一组。
⑶互斥的 b,g,j 为一组。
互斥的 f,h,i 为一组。
其余的 a,c,d,e 为一组。
⑷互斥的 b,g,j 为一组。
互斥的 e,f,h 为一组。
其余的 a,c,d,i 为一组。
7、设某一微操作控制信号C1既发生在指令1(设操作码 OP为I1I2= 11)的节拍电位M3、节拍脉冲T1时间,也发生在指令2(设 OP为I1I2= 01)的节拍电位M2节拍脉冲 T2时间,写出Ci的逻辑表达式,并表示在如图所示的GAL器件中。
解:(1) C1= I1I2M3T1+ I1I2M2T2(2)画图8、CPU数据通路为双总线结构,如图所示。
图中:ALU:运算器IR:指令寄存器RA:ALU的输入寄存器 PC:程序计数器 R1~R4:程序员可用通用寄存器 MAR:存储器地址寄存器 MDR: 存储器数据寄存器(1) 画出修正错误后的连线图。
(2) 描述指令ADD addr,R1(功能是R1+(addr)addr)的执行过程。
解:(1)画图R P IMMMARRRRA33(2)指令ADD addr,R1的执行过程 PCMAR; MMDR; MDRIR; IR(addr)MAR; M MDR; MDRR AR 1MDR; +; ADD MDR; addrMAR; MDRM其中前3条微指令用来取指令;第4、5、6条微指令用来将IR 地址部分给出的直接地址addr 的内容送入R A ;第9条微指令实现加法并将结果送入MDR ;第11条微指令将加法结果送回addr 的存储器。
9、某计算机的数据通路如下图所示,其中M —主存, MBR —主存数据寄存器, MAR —主存地址寄存器, R0-R3—通用寄存器, IR —指令寄存器, PC —程序计数器(具有自增能力), C 、D--暂存器, ALU —算术逻辑单元(此处做加法器看待), 移位器—左移、右移、直通传送。
所有双向箭头表示信息可以双向传送。
请按数据通路图画出“ADD (R1),(R2)”指令的指令周期流程图。
该指令的含义是两个数进行求和操作。
其中源操作地址在寄存器R1中,目的操作数寻址方式为自增型寄存器间接寻址(先取地址后加1)。
RPIMMMDRRRRRA33解:解:“ADD (R1),(R2)+”指令是SS型指令,两个操作数均在主存中。
其中源操作数地址在R1中,所以是R1间接寻址。
目的操作数地址在R2中,由R2间接寻址,但R2的内容在取出操作数以后要加1进行修改。
指令周期流程图如下:(每个步骤1分)10、某指令系统指令字长为20位,具有双操作数、单操作数和无操作数3种指令格式,每个操作数地址规定用6位二进制表示,当双操作数指令和单操作数指令条数均取最大值时,这3种指令最多可能拥有的指令数各是多少解:解:按控制操作码的思想来设计,双操作数指令条数最大为28-1=255条,单操作数指令条数最大为63条,无操作数指令条数最大为64条。
00000000 ××××××××××××……… 255条二地址指令××××××××××××0 0 0 0 0 0 ××××××……… 63条一地址指令1 1 1 1 1 0 ××××××1 1 1 1 1 1 0 0 0 0 0 0……… 64条零地址指令1 1 1 1 1 1 1 1 1 1 1 111、单总线CPU结构如图所示,其中有运算部件ALU、寄存器Y和Z,通用寄存器R0~R3、指令寄存器IR、程序计数器PC、主存地址寄存器MAR和主存数据寄存器MDR等部件。
试拟出转移指令 JMP #A的读取和执行流程。
解:(1)PC MAR PC+1PC(2)DBUS MDR,MDR IR(3)PC Y IR(地址段)+Y Z Z PC12、假设某机器有86条指令,平均每条指令由12条微指令组成,其中一条是取指微指令,是公用的,已知微指令字长48位,请问控制存储器的容量需多大解:共有微指令(12-1)×86+1=947条,控存的容量为947×48bit。