资源描述
<p>P156 4.1 X=0.1101 Y=-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.0001100
P156:2、
(1) (2)
P156:4-4
6-1原码恢复余数算法
6-1原码加减交替算法
6-2原码恢复余数算法
6-2原码加减交替算法
P156:4.8
阶码(5位补码)
尾数(6位补码)
(1)X=-1.625=-1.101B Y=5.25=101.01B X+Y
X-Y:
1、对阶同上
2、尾数相减: 11.1100110
+ 11.01011
[EX-Y]补 = 11.0010010
3、结果不需规格化
4、舍入处理:[EX-Y]补 = 1.00101
[X-Y] = 0,0011 1,00101
P108:9-1
阶码(5位移码)
尾数(6位补码)
(1)X=5.25=101.01B Y=-1.625=-1.101B X*Y
9-1 X/Y:
9-2 X*Y
9-2 X/Y
《存储体系》
P225:2、
(1)
(2)
(3)
P225:3、
(1) 最大主存容量=
(2) 共需芯片;若采用异步刷新,则刷新信号的周期为
(3) 每块8字节,则Cache容量为,即c=9,Cache采用2路组相联映射,则r=1。主存容量为,即m=16。每块包含4个字,每字包含2个字节。
主存字地址=462EH=00 0100 01,10 0010 11,10;因此该字映射到Cache的第139组。
(4) 分析地址:
128K的RAM区由SRAM芯片构成;分为8组,组与组之间进行字扩展;每个组内有2片进行位扩展。
P225:5、
平均访问时间
其中:ta —— 平均访问时间;tc —— Cache的存储周期;tm —— 主存的存储周期;tp —— 磁盘的存储周期;hc —— Cache的命中率;hm —— 主存的命中率。
所以,
P168:6、
命中率
平均访问时间
e = tc/ta=40/45=8/9
P168:7、
4路组相联映射,所以r=2
每块4字,所以b=2; 每字32位,所以每字包含4字节。
Cache容量为,故c=9
主存容量为,故m=20
(1) Cache共分为:2c-r = 29-2 = 128组。
(2)
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、
地址
指令
0019H
OP
MOD
001AH
DISP
第一条转移指令:
0019H
JMP
001AH
0006H
(PC)=001AH,执行该JMP指令后(PC)=001BH+0006H=0021H
第二条转移指令:
0019H
JMP
001AH
0025H
(PC)=001AH,执行该JMP指令后(PC)=001BH+0025H=0040H
13、
寄存器-存储器型指令是指一个操作数来自寄存器,另一个操作数来自存储器。
(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:000AH 0007H:000AH
0003H:0002H 0008H:0002H
0004H:0007H 0009H:0003H
0005H:0004H 000AH:0009H
0006H:0005H 000BH:0008H
指令为双字长指令,格式如下:
操作码,寻址方式码,寄存器号(16位)0002H
直接地址/间接地址/立即数/相对位移量/形式地址(16位)0007H
若当前指令分别为下列寻址方式时,试求出操作数填入下表。
寻址方式
EA=
操作数
直接
0007H
000AH
间接
000AH
0009H
立即
/
0007H
变址
0004H+0007H
0008H
某机器字长16位,采用单字长指令,每个地址码6位。试采用操作码扩展技术,设计14条二地址指令,80条一地址指令,60条零地址指令。请给出指令编码示意图。
双操作数指令格式:
OP(4位)
A1(6位)
A2(6位)
14条双操作数指令
OP=0000
…
OP=1101
A1(6位)
A2(6位)
单操作数指令格式:
OP(10位)
A1(6位)
80条双操作数指令
OP=1110000000
…
OP=1110111111
OP=1111000000
…
OP=1110001111
A1(6位)
无操作数指令格式:
OP(16位)
60条双操作数指令
OP=1110010000000000
…
OP=1110010000111011
设某8位计算机,除HALT指令外,指令均为双字长,格式如下:
OP(4位)
M(2位)
Rd(2位)
A(8位)
Rd为目的操作数的寄存器号,编码分配如下:
00——R0
01——R1
10——R2
11——R3
M为源操作数的寻址方式,编码分配如下:
00—立即数寻址
01—直接寻址
10—相对寻址
11—变址寻址
(变址寄存器为R3)
A为源操作数的立即数、直接地址、间接地址或偏移地址。
OP为操作码,编码分配如下:
0000——ADD
0001——SUB
0010——AND
0011——MOV
0100——JMP
0101——INC(自增1)
……
1111——HALT(动态停机)
其中,
假设:PC的内容为22H;变址寄存器R3的内容为30H;主存部分单元的内容如下:
主存地址:内容 主存地址:内容 主存地址:内容
20H: 22H 27H: 02H 2EH: 00H
21H: 33H 28H: 21H 2FH: 01H
22H: 35H 29H: 0FH 30H: 02H
23H: 20H 2AH: 48H 31H: 03H
24H: 01H 2BH: 01H 32H: 04H
25H: 20H 2CH: 55H 33H: 05H
26H: 1DH 2DH: F0H 34H: 06H
问:CPU启动执行指令到停机,期间执行了哪几条指令?写出每条指令的功能、寻址方式、操作数及执行结果。
解:由于(PC)=22H,即程序的第一条指令地址为22H,从22H开始,执行到2DH(HALT指令)为止,共五条指令。经分析,所有指令的目的操作数的寻址方式均为寄存器寻址方式,为R1。下面列出每条指令的功能、源操作数的寻址方式、源操作数及执行结果。
PC
指令
助记符
寻址方式
EA
源操作数
执行结果
22H
35H
MOV
直接寻址
20H
(20H)=22H
(R1)=22H
23H
20H
24H
01H
ADD
立即数
——
20H
(R1)=(R1)+20H
=42H
25H
20H
26H
1DH
SUB
变址寻址
(R3)+02H=32H
(32H)=04H
(R1)=(R1)-04H
=3EH
27H
02H
28H
21H
AND
立即数
——
0FH
(R1)=(R1)·0FH
=0EH·
29H
0FH
2AH
48H
JMP
相对
(PC)+01H
=2CH+01H =2DH
——
(PC)=2DH
2BH
01H
2CH
55H
——
——
——
——
——
2DH
F0H
HALT
——
——
——
停机
《控制器》
6、设某机平均执行一条指令需要两次访问内存,平均需要三个机器周期,每个机器
周期包含4个节拍周期。若机器主频为25MHz,试回答:
1)若访问主存不需要插入等待周期,则平均执行一条指令的时间为多少?
2)若每次访问内存需要插入2个等待节拍周期,则平均执行一条指令的时间是
又多少?
解:(1)
(2)
7、设某机主频为8MHz,每个机器周期包含4个节拍周期,该机平均指令执行速度为1MIPS。试回答:1)该机的平均指令周期是多少时间?2)平均每条指令周期包含几个机器周期?
解:(1)
(2)
8、参见图7-41的数据通路,指令“INC R1”将R1寄存器的内容加1,画出其指令周期微程序流程图,并根据表7-11和表7-12写出每一条微指令码。
解: INC R1;(R1)+1àR1
BTO
OTB
FUNC
FS
S3-S0MCi
空
M6-M0
110
111
000
1
000000
0
0000010
011
000
010
0
000000
0
0000011
000
000
001
1
000000
0
0010000
001
011
000
0
000000
0
0000100
100
001
0
0
000000
0
0000001
9、根据图7-41所示的模型机结构和数据通路,写出以下指令从取址到执行的全部微操作序列,说明各条指令需要哪几个机器周期,需要几次访问内存及完成什么操作。
1)SUB A,R ,该指令完成(A)-R→(A),源操作数一个为寄存器寻址,目标操作数为指令提供的内存有效地址A。
2)JMP 偏移量,该指令完成PC+偏移量→PC。
解:(1)SUB A,R ;(A)-R→(A)
指令为双字节格式:
OP(SUB)
**
Rd
Addr
所以,共需要8个机器周期,共访存4次。
(2)JMP DISP; (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-MAR
② M-R#, B-DD1
③ R1-B#、B-MAR
④ M-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) 微指令中的三个字段分别应多少位?
(2) 画出对应这种微指令格式的微程序控制器逻辑框图。
解:(1)22=4,512=29
控制字段(48-9-2=37位)
判别测试字段(2位)
下址字段(9位)
(2)</p>
展开阅读全文