第 1 章 计算机系统概述
1.8 解:(1)用 CPU 性能公式进行计算。对 CPU1,占用 2 个时钟周期的分支指令占总指
令的 20%,剩下的指令占用 1 个时钟周期。所以
CPI1 = 0.2×2 + 0.80×1 = 1.2
则 CPU1 的总 CPU 时间
TCPU1 = IN1×1.2 ×TC1=1.2 IN1 TC1
在 CPU2 中没有独立的比较指令,所以 CPU2 的程序量为 CPU1 的 80%,分支指令的比例
为:20%÷80% = 25% 。这些分支指令占用 2 个时钟周期,而剩下的 75%的指令占用 1 个
时钟周期,因此:
CPI2 = 0.25×2 + 0.75×1 = 1.25
因为 CPU2 不执行比较,故指令条数 IN2 = 0.8×IN1
根据假设,CPU2 的时钟周期 TC2 = 1.25TC1
因此,CPU2 的 总 CPU 时间
TCPU2 = IN2×CPI2×TC2= 0.8×IN1×1.25×1.25TC1= 1.25 IN1 TC1
可见 TCPU1< TCPU2,尽管 CPU2 执行指令条数较少,但 CPU1 因为有着更短的时钟周期,所
以比 CPU2 快。
(2)如果 CPU1 的时钟周期时间仅仅比 CPU2 快 1.1 倍,故 TC2 = 1.1TC1,则 CPU2 的 总
CPU 时间
TCPU2 = IN2×CPI2×TC2= 0.8×IN1×1.25×1.1TC1= 1.1 IN1 TC1< TCPU1
因此,CPU2 由于执行更少指令条数,比 CPU1 运行更快些。
1.9 提示:三个部件的加速比公式
3/32/21/1)321(1((
10
rfrfrffffTe
T
SP
第 2 章 运算方法与运算器
2.2 解:CRC 码为 0011101。该 G(x)的(7,3)CRC 码的出错模式如
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
1 所示。
表 1 该 G(x)的出错模式
K1 K2 K3 K4 K5 K6 K7 余数 出错位
正确 0 0 1 1 1 0 1 0 0 0 0 无
1 0 1 1 1 0 1 1 1 1 0 1
0 1 1 1 1 0 1 0 1 1 1 2
0 0 0 1 1 0 1 1 1 0 1 3
0 0 1 0 1 0 1 1 0 0 0 4
0 0 1 1 0 0 1 0 1 0 0 5
0 0 1 1 1 1 1 0 0 1 0 6
错误
0 0 1 1 1 0 0 0 0 0 1 7
2.5 解:各种表示方法数据范围如下:
(1)无符号整数:0~216-1,即:0~ 65535;
(2)原码定点小数:1-2-15~-(1-2-15),即:0.99997~ -0.99997;
(3)补码定点小数:1-2-15~-1,即:0.99997~-1;
(4)补码定点整数:215-1~-215 ,即:32767~ -32768;
(5)原码定点整数:215-1~-(215-1),即:32767~-32767;
(6)据题意画出该浮点数格式:
1 5 1 9
阶符 阶码 数符 尾数
由于题意中未指定该浮点数所采用的码制,则不同的假设前提会导致不同的答案,示意如下:
1)当采用阶原尾原非规格化数时,
最大正数=0,11 111;0.111 111 111
最小正数=1,11 111;0.000 000 001
则正数表示范围为:231×(1-2-9)~2-31×2-9
最大负数=1,11 111; 1.000 000 001
最小负数=0,11 111; 1.111 111 111
则负数表示范围为:2-31×(2-9)~2-31×(1-2)-9
2)当采用阶移尾原非规格化数时
正数表示范围为:231×(1-2-9)~2-32×2-9
负数表示范围为:2-31×(-2-9)~231×(1-2-9)
注:零视为中性数,不在此范围内。
(7)当机器数采用补码格式化形式时,若不考虑隐藏位,则
最大正数=0,11 111;0.111 111 111
最小正数=1,00 000;0.100 000 000
其对应的正数真值范围为:231×(1-2-9)~232×2-9
最大负数=1,00 000;1.011 111 111
最小负数=0,11 111;1.000 000 000
其对应的负数真值范围为:-2-32×(2-1+2-9)~231×(-1)
2.12 提示:三重进位方式在二重的基础上再加一个 74182 构成,逻辑图参见书上 16 位 ALU、
32 位 ALU 的例题。
在小组 74181 产生的进位为:C1~C3,C5~C7,C9~C11,... ...,C61~C63, 64C 。
在中组 74182 产生的进位为: 4C , 8C , 12C , 20C ,... ..., 52C , 56C , 60C 。
在大组 74182 产生的进位为: 16C , 32C , 48C 。
结合进位链路,即可得到各进位的产生时间。
第 3 章 存储系统
3.13 解:(1)Cache 的命中率:H=Nc/(Nc+Nm)=(5000-450)/5000=0.91。
(2)CPU 访问储器的平均时间:Ta=H·Tc+(1-H)Tm=0.91×30+(1-0.91) ×200=45.3ns。
(3)Cache-主存系统的效率:e=Tc/Ta=30/45.3=66.2%。
3.17 解:设取指周期 T,总线周期为,指令执行时间为 t,
运行时间=(T+5+6t)×80=80 T+400+480t
运行时间=(T+7+8t)×60=60 T+420+480t
故两者不同。
第 4 章 指令系统
4.14 解:(1)一地址指令格式为:
其中,OP-操作码字段,共 6 位,可反映 50 种操作;M-寻址方式特征字段,共 3 位,可
反映 6 种寻址方式;A-形式地址字段,共 16 –6 – 3 = 7 位。
(2)直接寻址的最大范围为 27 =128 个字
(3)由于存储字长为 16 位,故一次间址的寻址范围为 216 = 65536=64K 字;多次间址的范
围为 215=32K 字
(4)立即数的范围为–64~+63(补码),无符号数为 0~127;
(5)相对寻址的位移量为–64~+63(补码);
(6)六种寻址方式中立即数方式最快,因为不用寻址;间接寻址方式最长,因为寻址时(至
少)多访问一次主存;相对寻址便于程序浮动,因为此时操作数位置可随程序存储器的变动
而自动改动,总是相当于程序一段距离(如果程序不变的话,总是相对于当前指令一段固定
的距离)。变址寻址最适合处理数组问题,因为此时变址值可自动修改而不需要修改程序。
(7)为使指令寻址访问扩大到 4M,需要有效地址 22 位,此时可将单字长指令改为双字长
指令,如下所示:
格式中,第一个字的内容不变,形式地址 A 扩大到 2 个字,这样直接寻址上,有效地址
E=7+16=23 位,用其中的 22 位即可访问 4M 的主存地址空间。其它几种方式的形式地址也
相应地扩大到 23 位。
(8)为使一条转移指令能转移到主存的任一位置,寻址范围须达到 4M,除了采用(7)所
示的格式外,还可配置 22 位的基址寄存器 或 22 位的变址寄存器,使:
EA=(BR)+A (BR 为 22 位的基址寄存器)
或,EA=(IX)+A (IX 为 22 位的变址寄存器)
便可访问 4M 存储空间。还可以通过 16 位的基址寄存器左移 5 位再和形式地址 A 相加,也
可达到同样的效果。
4.17 解:(1)在直接寻址的二地址指令中,根据题目给出直接寻址空间为 128 字,则每个
地址码为 7 位,其格式如图 1(a)所示。3 条这种指令的操作码为 00、01 和 10,剩下的
11 可作为下一种格式指令的操作码扩展用。
(2)在变址寻址的一地址指令中,根据变址时的位移量为– 64 ~ + 63,形式地址 A 取 7 位。
根据 16 个通用寄存器可作为变址寄存器,取 4 位作为变址寄存器 Rx 的编号。剩下的 5 位
可作操作码,其格式如图 1(b)所示。6 条这种指令的操作码为 11000 ~ 11101,剩下的两
个编码 11 110 和 11 111 可作为扩展用。
(3)在寄存器寻址的二地址指令中,两个寄存器地址 Ri 和 Rj 共 8 位,剩下的 8 位可作
操作码,比格式(2)的操作码扩展了 3 位,其格式如图 1(c)所示。10 条这种指令的操
作码为 11 110 000 ~11 111 001。剩下的 11 111 010 ~ 11 111 111 八个编码可作为扩展用。
(4)在直接寻址的一地址指令中,除去 7 位的地址码外,可有 9 位操作码,比格式(3)
的操作码扩展了 1 位,与格式(3)剩下的 8 个编码组合,可构成 16 个 9 位编码。10 条
这种指令的操作码为 11 111 010 0 ~ 11 111 1101,如图 1(d)所示。剩下的 11 111 1110 ~ 11 111
1111 可作为扩展用。
(5)在零地址指令中,指令的 16 位都作为操作码,比格式(4)的操作码扩展了 7 位,与
上述剩下的 2 个操作码组合后,共可构成 2×27 条指令的操作码。32 条这种指令的操作码
可取 11 111 1110 0000000~ 11 111 1110 0011111,如图 1(e)所示。
还有 28 – 32 =224 种代码未用。若安排寄存器寻址的一地址指令,除去末 4 位为寄存器地址
外,还可容纳 14 条这类指令。操作码为 11 111 1110 010XXXX~11 111 1111 111XXXX。
格式如图 1(f)所示。
图 1 指令格式设计
第 5 章 中央处理器
5.15 解:(1)模型机指令系统流程图见图 2 所示。一般一个微操作分配一个时钟周期,读写
内存分配两个时钟周期。
启动
PC→AR→ABUS
RD, DBUS→DR
DR→IR,PC+1→PC
0→AC IR→AR→ABUS IR→AR→ABUS IR→PC
PC→AR→ABUS
RD, DBUS→DR
DR→ALU
AC→ALU
ALU→AC
AC→DR
WE, DR→DBUS
CAL ADD STA JMP NOP
M1
M2
M3
T1
T4
T2,T3
T1
T2
T1
T3 T2,T3
T1,T2
图 2 模型机指令系统流程图及时序分配
(2)微操作时间表(略)
(3)列出各微操作的逻辑函数表达式:
1: PC→AR→ABUS = M1·T1 + M2 ·T2·JMP
2: PC+1→PC = M1 ·T4
3: IR→PC = M2 ·T1 ·JMP
4: IR→AR→ABUS = M2 ·T1 ·(ADD + STA)
5: DR→IR = M1 ·T4
6: DR→ALU = M3 ·T3 ·ADD
7: DR→DBUS = M3 ·(T2 +T3) ·STA
8: DBUS→DR = M1 ·(T2+T3) + M3 ·(T1+T2) · ADD
9: AC→DR = M3 ·T1 ·STA
10:AC→ALU = M3 ·T3 · ADD
11:ALU→AC = M3 ·T3 · ADD
12:0→AC = M2 ·T1 ·CLA
13:RD=M1·(T2 +T3)+ M3 ·(T1+T2) · ADD
14:WE= M3 ·(T2+T3) · STA
(一般来说,微操作还应考虑状态条件的约束,此例未涉及)
(4) 设计逻辑电路,实现控制器功能
① 采用可变 CPU 周期,固定时钟脉冲方式,设计时序产生器;
② 由微操作逻辑函数表达式生成逻辑电路,产生各微操作控制信号。
(逻辑电路略)
5.16 解:采用字段直接编码法,并使用垂直型微指令格式,按相斥性微命令分在同一字段
内,相容性微指令分在不同字段内,将微指令编码划分为 6 个字段,各字段位数、编码
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
如表 2 所示。
表 2 微指令编码
字段 F1 F2 F3 F4 F5 F6
位数 1 2 2 2 2 1
微命令 a b,c d,g f,i h,e j
编码
0 不送
1 a
00 不送
01 c
10 b
11 空
00 不送
01 g
10 d
11 空
00 不送
01 i
10 f
11 空
00 不送
01 e
10 h
11 空
0 不送
1 j
按此编码设计方案得出各条微指令的编码如表 3 所示。
表 3 微指令编码
微指令 微指令编码
I1 1 01 01 01 01 0
I2 1 10 10 10 10 1
I3 1 00 10 10 01 0
I4 1 00 00 00 00 0
I5 1 00 10 00 00 1
说明:虽然此编码的长度与直接控制洁编码长度相同,都是 10 位,但此编码方案中,现有
4 个编码组合为空,可供微指令扩展使用。
5.17 解:(1)已知微地址寄存器长度为 8 位,故推知控存容量为 256 单元。所给条件中微程
序有两处分支转移。如不考虑他分支转移,则需要判别测试位 P1 ,P2(直接控制),P1 控
制 a 分支处的转移地址形成,P2 控制 b 分支出的转移地址形成,故顺序控制字段共 10 位,
其格式如下:
P1 P2 A1,A2 … A8
(2)假设该机器微指令的执行需要节拍,且在 T4 节拍修改微地址寄存器,则转移逻辑表
达式如下(方案不唯一):
A8 = P1·IR4·T4
A7 = P1·IR3·T4
A6 = P2·C0·T4
在 P1 条件下,当 IR4 = 1,T4 脉冲到来时微地址寄存器的第 8 位 A8 将置“1”,从而将该位
由“0”修改为“1”。如果 IR4 = 0,则 A8 的“0”状态保持不变,A7,A6 的修改也类似。根据转
移逻辑表达式,很容易画出转移逻辑电路图(图 3),可用触发器强制端实现。
图 3 转移逻辑电路图
(3)已知微指令 B 的下地址字段为 10000000,根据(2)转移逻辑表达式,由 IR3、IR4 修
改 A7、A8 得到转移地址,故 C、D、E、F 四条微指令的微地址分别为:10000000、10000001、
10000010、10000011
5.19 解:(1)按单字指令考虑,指令格式结构如下:
11 10 9 8 7 6 0
OP X D
其中,D 为形式地址,寻址模式X定义如下:
X=00,直接寻址,有效地址 E=D
X=01,间接寻址,有效地址 E=(D)
X=10,变址寻址,(Rx0),有效地址 E= Rx0+D
X=10,变址寻址,(Rx1),有效地址 E= Rx0+D
由于寻址模式占2位,OP 字段占3位,在单字指令情况下,直接访问的主存最大空间是
27=128 个字。
双字指令格式结构如下:
判别字段 下地址字段
11 10 9 8 7 6 0
字 1 OP X D1(高 7 位)
字 2 D2(低 12 位)
寻址模式X的定义同单字指令。形式地址D由 D1、D2两部分组成。在直接寻址时,E=D1+D2
(19 位),所以直接访问主存的最大空间是 219 个字。
(2)一级间接寻址、两级间接寻址取数与变址寻址取数的控制序列流程图如图 4 所示 (其
中包括取指令),图中M为主存。
图 4 控制序列流程图
(3)流程图中,我们假定数据传送、地址传送、变址运算各框所花时间也为 0.6μs,那么
两次间接寻址(包括取指令)序列所需时间为 0.6μs×6=3.6μs,变址寻址序列所需时间为
0.6μs×4=2.4μs。
(4)主存空间扩大至 64KB,换算成 bit 则为 64×1024×8 比特,折算成 12 位字长,则主存
的地址空间字数为:(64×1024×8)÷12=43690 字。
要实现在 43690 字的主存空间内寻址,硬件上最节省的办法是采用双字长指令结构,并使用
一个 16 位长度的 MAR(即 12 位 MAR 基础上增加 4 位),形式地址 D 可由 D1(高4位)
和 D2(低 12 位)简单的拼装组成。
第 6 章 总线
6.8 解:(1) 每个字为 32 位,总线在 7 个时钟周期传输了 16 个字节,传输率为:
R = 16B/7×33MHz = 75.43×106 B/S
(2) 总线在 11 个时钟周期传输了 32 个字节,传输率为:
R = 32B/11×33MHz = 96×106 B/S
(3) 时钟频率变为 66MHz,传输率为:
R = 16B/7×66MHz = 150.86×106 B/S
6.10 解:(2)计数器定时查询电路如图 5 所示。
图 5 计数器定时查询电路
第 7 章 输入输出系统
7.11 解:独立请求方式的优先级排队逻辑如图 6 所示。排队逻辑为虚线部分。
图 6 独立请求方式的优先级排队逻辑图
7.12 解:DMA 工作的基本流程如图 7 所示。
图 7 DMA 工作的基本流程
7.13 解:(1)132B;(2)672×9 位;(3)3 位;(4)8 位
7.14 解:在程序查询方式下,传输数据需要有 CPU 不断地检测外设的状态。数据传输启动
之后,CPU 要不断地观测外设接口,看看是否可以传输下一个数据。CPU 用一个循环程序
等待外设的状态,直到接口的状态显示可以进行数据传输为止。题中所指的输入输出查询所
花费的时间百分率是指在单位时间内 CPU 对该设备查询所花费的周期数与 CPU 本身的周
期数的比值。
(1)对于鼠标器,查询的时钟周期为:30×100=3000(每秒周期数)
占用的 CPU 时间比率为:300/(50×1000000)=0.006%
对鼠标器的查询基本不影响 CPU 的性能。
(4)对于硬盘,查询的速率为:2MB/4B=512K(每秒查询次数)
查询的时钟周期数为:512×1024×100=52.4×1000000
占用的 CPU 时间比率为:52.4/50=105%
即 CPU 将全部时间用于对硬盘进行查询也不能满足硬盘传输要求。
7.17 解:
图 8 间接寻址周期与中断周期的数据流