1、下图为某机运算器框图,BUS1~BUS3为3条总线,其余信号如a、h、LDR0~LDR3、S0~S3等均为电位或脉冲控制信号。
(1)分析图中哪些是相容微操作信号?哪些是相斥微操作信号?
(2)采用微程序控制方式,请设计微指令格式,并列出各控制字段的编码表。

答案:
(1)相斥微操作信号:
- a、b、c、d;
- e、f、g、h;
- LDR0、LDR1、LDR2、LDR3;
- L、R、S、N。
相容微操作信号:
- M、S0、S1、S2、S3中任一信号与+1;
- i、j、+1;
- 移位器、ALU、A、B选通门、寄存器五大部件的操作在部件之间相互相容。
(2)设计原则:
相斥性的微命令分在同一段内,相容性的微命令分在不同段内。采用混合编码方法,编码不唯一。
图中共有24个控制信号。当24个控制信号全部用微指令产生时,可采用字段译码法进行编码控制,采用的微指令格式如下(其中目的操作数字段与打入信号段可以合并公用,后者加上节拍脉冲控制即可):
3位 | 3位 | 5位 | 4位 | 3位 | 2位 | |
××× | ××× | ×××× | ×××× | ×××× | × × | |
目的操作数 | 源操作数 | 运算操作 | 移位操作 | 直接控制 | 判别字段 | 下地址字段 |
编码:
目的操作数字段 | 源操作数字段 | 运算操作字段 | 移位门字段 | 直接控制字段 |
001 a,LDR0 010 b,LDR1 011 c,LDR2 100 d,LDR3 | 001 e 010 f 001 g 100 h | MS0S1S2S3 | L,R,S,N | i , j, +1 |
2、某计算机字长16位,主存容量为64K字,采用单字长单地址指令,共有64条指令,试采用四种寻址方式(立即寻址、直接寻址、基址寻址、相对寻址)设计指令格式。
答案:
分析:采用单字长单地址指令,64条指令需占用操作码字段(OP)6位,这样指令余下长度为10位;
主存容量为64K字,64K=216,为了覆盖主存64K字的地址空间,需要16位地址;
四种寻址模式,故寻址模式(X)需2位;
形式地址(D):16-6-2=8位。
其指令格式如下:
OP | X | D |
寻址模式定义如下:
X= 0 0 立即寻址 操作数为D(可表示的数的范围为:-128~+127)
X= 0 1直接寻址 采用单字长指令:有效地址E=D(寻址范围:28=256个存储单元)。如果需要能访问所有存储单元,则指令格式需要采用双字长指令。
X= 1 0 基址址寻址 有效地址 E= (R)+D (寻址范围:216=64K)
X= 1 1 相对寻址 有效地址 E=(PC)+D (寻址范围:216=64K)
其中R为基址寄存器(16位),PC为程序计数器(16位),在基址和相对寻址时,位移量D可正可负。
3、某运算器如下图所示。

(1)定义a、b、c、d、e。
(2)设计微指令格式。
(3)规定每条微指令执行结束前,半加器结果自动送入寄存器C。编一个微程序使两个寄存器的内容互换。
答案:
(1)a、b、c、d、e为5个微操作控制信号:
a,控制寄存器A的内容送入半加器。
b,控制寄存器B的内容送入半加器。
c,控制寄存器C的内容送入半加器。
d,控制寄存器C的内容送入寄存器A。
e,控制寄存器C的内容送入寄存器B。
(2)微指令控制字段采用直接控制方式,微指令格式如下:
a | b | c | d | e |
(3)设待交换数据已在寄存器中,完成寄存器内容互换的微程序如下:
11000;寄存器A、B的内容送入半加器,结果A⊕B自动送入寄存器C。
00010;寄存器C的内容送入寄存器A(当前值=A⊕B)。
11000;寄存器A、B的内容送入半加器,结果A自动送入寄存器C。
00001;寄存器C的内容送入寄存器B(当前值=A⊕B⊕B=A)。
11000;寄存器A、B的内容送入半加器,结果B自动送入寄存器C。 00010;寄存器C的内容送入寄存器A(当前值=A⊕B⊕A=B)。