计算机组成原理第五版 白中英(详细)第4章习题参考答案
计算机组成原理第4章作业答案
8K×8 … 8K×8
SRAM
SRAM
D7 … D0 D7 … D0 D7 … D0
0
0
1
2
3
4
4
5
6
7
8
…… …… …… …… ……
65528
65532 65532 65533 65534 65535
7. 一个容量为16K×32位的存储器, 其地址线和数据线的总和是多少?当选用
下列不同规格的存储芯片时,各需要多少 片?
1K×4位,2K×8位,4K×4位, 16K×1位,4K×8位,8K×8位
量选容量等外特性较为一致的芯片,以便于简化 连线。
2)应尽可能的避免使用二级译码,以使设计 简练。但要注意在需要二级译码时如果不使用, 会使选片产生二意性。
3)片选译码器的各输出所选的 存储区域是一样大的,因此所选芯 片的字容量应一致,如不一致时就 要考虑二级译码。
4)其它常见错误: ROM连读/写控制线-WE; (ROM无读/写控制端)
解: 存储基元总数 = 64K × 8位
= 512K位 = 219位; 思路:如要满足地址线和数据线总
和最小,应尽量把存储元安排在字向, 因为地址位数和字数成2的幂的关系, 可较好地压缩线数。
设地址线根数为a,数据线根数为b, 则片容量为:2a × b = 219;b = 219-a; 若a = 19,b = 1,总和 = 19+1 = 20;
计算机组成原理—习题解答(第四章)
第四章题解
计算机组成原理习题解答
第四章4.2
❒4.2在存储系统的层次结构中,设计高速缓冲存储器和虚拟存储器的目的各是什么?对这两个存储层次的管理有何异同点?
❒题解:
1、设计cache的目的是为了提高存储器的访问速度。Cache层使得
CPU在对存储器进行访问时,速度可以接近Cache的速度,容量可以达到主存的容量。
设计虚存的目的是为了提高存储器的容量。虚拟存储技术使得用户在使用存储器时,感觉可用容量接近于辅存的容量,而访问速度上接近于主存。
综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。
2、两个存储层次管理的异同点:
两个层次的功能均由系统自动实现,对用户来讲都是透明的。
第四章4.2
两个存储层次均以信息块作为基本信息的传送单位,Cache存储器每次传送的信息块是定长的,只有几十字节,而虚拟存储器信息块划分方案很多,有页、段等等,长度均在几百~几百K 字节左右。
主存Cache 存储体系中CPU与Cache和主存都建立了直接访问的通道。一旦不命中时,CPU 就直接访问主存并同时向Cache调度信息块。
而辅助存储器与CPU之间没有直接通路,一旦在主存不命中时,只能从辅存调块到主存。
Cache 存储器存取信息的过程、地址变换和替换策略全部用硬件实现,对程序员均是透明的。而主存-辅存层次的虚拟存储器基本上是由操作系统的存储管理软件并辅助一些硬件来进行信息块的划分和主存-辅存之间的调度,所以对设计存储管理软件的系统程序员来说,它是不透明的,而对应用程序员,因为虚拟存储路提供了庞大的逻辑空间可以任意使用,是透明的。
白中英《计算机组成原理》(第5版)笔记和课后习题详解复习答案
白中英《计算机组成原理》(第5版)笔记和课后习题详解完整版>精研学习网>无偿试用20%资料
全国547所院校视频及题库全收集
考研全套>视频资料>课后答案>往年真题>职称考试
第1章计算机系统概论
1.1复习笔记
1.2课后习题详解
第2章运算方法和运算器
2.1复习笔记
2.2课后习题详解
第3章多层次的存储器
3.1复习笔记
3.2课后习题详解
第4章指令系统
4.1复习笔记
4.2课后习题详解
第5章中央处理器
5.1复习笔记
5.2课后习题详解
第6章总线系统
6.1复习笔记
6.2课后习题详解
第7章外存与I/O设备
7.1复习笔记
7.2课后习题详解
第8章输入输出系统
8.1复习笔记
8.2课后习题详解
第9章并行组织与结构
9.1复习笔记
9.2课后习题详解
第10章课程教学实验设计
第11章课程综合设计
计算机组成原理第四章作业答案
第四章作业答案
解释概念:主存、辅存,Cache, RAM, SRAM, DRAM, ROM, PROM ,EPROM ,EEPROM CDROM, Flash Memory.
解:1主存:主存又称为内存,直接与CPU交换信息。
2辅存:辅存可作为主存的后备存储器,不直接与CPU交换信息,容量比主存大,速度
比主存慢。
3 Cache: Cache缓存是为了解决主存和CPU的速度匹配、提高访存速度的一种存储器。
它设在主存和CPU之间,速度比主存快,容量比主存小,存放CPU最近期要用的信息。
4 RAM; RAM 是随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。
5 SRAM:是静态RAM属于随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。靠触发器原理存储信息,只要不掉电,信息就不会丢失。
6 DRAM是动态RAM属于随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。靠电容存储电荷原理存储信息,即使电源不掉电,由于电容要放电,信息就会丢失,故需再生。
7 ROM: 是只读存储器,在程序执行过程中只能读出信息,不能写入信息。
8 PROM: 是可一次性编程的只读存储器。
9 EPROM 是可擦洗的只读存储器,可多次编程。
10 EEPROM: 即电可改写型只读存储器,可多次编程。
11 CDROM 即只读型光盘存储器。
12 Flash Memory 即可擦写、非易失性的存储器。
存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次?
答:存储器的层次结构主要体现在Cache—主存和主存一辅存这两个存储层次上。
计算机组成原理课后答案(白中英主编_第五版 立体化教材)
[y]补=
[x+y]补=
00 11011
+ 11 01011
00 00110
结果没有溢出,x+y=00110
(3)[x]补=11 01010 [y]补=11 111111
[x]补=
[y]补=
[x+y]补=
00 01010
+ 00 11111
11 01001
结果没有溢出,x+y=−10111
第二章.............................................................................................................................................. 3
第三章............................................................................................................................................ 14
最后表示为:1 01111101 10110000000000000000000
5.(1)用变形补码进行计算:
[x]补=00 11011 [y]补=00 00011
计算机组成原理习题答案第四章.
1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?
解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。
解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K 种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?
解:X =(24-K×26-jL
26k
双操作数指令的最大指令数:24-1。单操作数指令的最大指令数:15×2 6-
1(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口。无操作数指令的最大指令数:216-212-26。其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。此时双操作数和单操作数指令各仅有1条。
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
计算机组成原理第4章 课后题解
• 而寄存器是 位的, 而寄存器是32位的 位的, • 故最大存储空间是232+222 = 4G+4M。 故最大存储空间是 + 。
11. C 12. A 寄存器 B 寄存器间接 C 立即 D 直接 E 相对、基址、变址
第四章 课后题解
1.主存单元字长 位,指令字长宜为半字长、单字长 主存单元字长32位 指令字长宜为半字长、 主存单元字长 或双字长。 位不合理。 或双字长。即16、32、64位。所以 位不合理。 、 、 位 所以12位不合理 4. 双字长二地址指令,RS型。 双字长二地址指令, 型 操作码字段可指定64种操作 种操作。 操作码字段可指定 种操作。 一个操作数在通用寄存器( 一个操作数在通用寄存器(共16个),寄存器寻 个),寄存器寻 址。 另一个操作数在主存中,变址寻址。 另一个操作数在主存中,变址寻址。有效地址等 于变址寄存器( 于变址寄存器(共16个)内容加上位移量。 个 内容加上位移量。 6. (1) 直接寻址 (2) 相对寻址 (3) 变址寻址 (4) 基址寻址 (5) 间接寻址
9. 16个通用寄存器占 位,64种操作占 位,剩 个通用寄存器占4位 种操作占6位 个通用寄存器占 种操作占 位用于存储器地址, 下22位用于存储器地址, 位用于存储器地址
OP(6) ( ) R(4) ( ) D(22) ( )
计算机组成原理课后习题答案(白中英第四)
Ez = Ex+Ey = 0111
规格化:26*0.111011
(2)Ex = 1110, Mx = 0.011010
Ey = 0011, My = 0.111100
Ez = Ex-Ey = 1110+1101 = 1011
[Mx]补= 00.011010
乘积符号位单独运算0⊕1=1
尾数部分算前求补输出│X│=11011,│y│=11111
X×Y=-0.1101000101
(2>原码阵列
x = -0.11111, y = -0.11011
符号位: x0⊕y0= 1⊕1 = 0
[x]补 = 11111, [y]补 = 11011
[x*y]补 = 0,11010,00101
正最大E =11…1,M =11…1,Ms = 0
10个21个
即:
正最小E =00…0,M = 100…0,Ms = 0
10个20个
即:
负最大E =00…0,M = 011…1,Ms = 1
10个20个
<最接近0的负数)即:
负最小E =11…1,M =00…0,Ms =1
10个21个
即:
规格化所表示的范围用集合表示为:
13.<略)
第二章
1.<1)
计算机组成原理第五版-白中英(详细)第4章习题参考答案
第4章习题参考答案
1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理为什么
答:不合理。指令最好半字长或单字长,设16位比较合适。一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令
单操作数指令
无操作数指令
3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 !
9 8 7 4 3 0
答:该指令格式及寻址方式特点如下:
(1) 单字长二地址指令。
》
(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 0
15 10 9 8 7 4 3 0
答:该指令格式及寻址方式特点如下:
(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数
计算机组成原理习题答案第四章.
1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?
解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。
解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K 种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?
解:X =(24-K×26-jL
26k
双操作数指令的最大指令数:24-1。单操作数指令的最大指令数:15×2 6-
1(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口。无操作数指令的最大指令数:216-212-26。其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。此时双操作数和单操作数指令各仅有1条。
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
计算机组成原理白中英版第五版课后答案
2015年3月25日星期三 6
第2章 运算方法和运算器
1. 用8位编码表示下列各整数的原码、反码、 补码。
真值 -35 127 -127 -1 原码 反码 补码
- 010 0011 1010 0011 1101 1100 1101 1101 +111 1111 0111 1111 0111 1111 0111 1111 -111 1111 -000 0001 1111 1111 1000 0000 1000 0001 1000 0001 1111 1110 1111 1111
计算机组成原理第4章习题参考答案
第4章 数值的机器运算
4-2.某加法器采用组内并行,组间并行的进位链,4位一组,写出进位信号C6逻辑表达式。
[解] 组间并行的进位链,产生的最低一组的进位输出为:
C4=G1*+P1*C0 (其中:G1*=G4+P4G3+P4P3G2+P4P3P2G1;P1*=P4P3P2P1)然后在组内产生进位信号C6:
C6=G6+P6C5=G6+P6G5+P6P5C4
4-4.已知X和Y,使用它们的变形补码计算出X+Y,并指出结果是否溢出。
(1)X=0.11011,Y=0.11111
(2)X=0.11011,Y=-0.10101
(3)X=-0.10110,Y=-0.00001
(4)X=-0.11011,Y=0.11110
[解]
(1)[X]补=0.11011,[Y]补=0.11111
00.11011 [X]补
+00.11111 [Y]补
01.11010 [X+Y]补 结果正溢出!
(2)[X]补=0.11011,[Y]补=1.01011
00.11011 [X]补
+11.01011 [Y]补
00.00110 [X+Y]补 结果不溢出!
X+Y=0.00110
(3)[X]补=1.01010,[Y]补=1.11111
11.01010 [X]补
+11.11111 [Y]补
11.01001 [X+Y]补 结果不溢出!
X+Y=-0.10111
(4)[X]补=1.00101,[Y]补=0.11110
11.00101 [X]补
+00.11110 [Y]补
00.00011 [X+Y]补 结果不溢出!
X+Y=0.00011
计算机组成原理习题答案第四章.
1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?
解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。
解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K 种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?
解:X =(24-K×26-jL
26k
双操作数指令的最大指令数:24-1。单操作数指令的最大指令数:15×2 6-
1(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口。无操作数指令的最大指令数:216-212-26。其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。此时双操作数和单操作数指令各仅有1条。
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
计算机组成原理习题答案第四章
1.指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思?
解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。
解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K 种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?
解:X =(24-K)×26-jL
26k
双操作数指令的最大指令数:24-1。单操作数指令的最大指令数:15×26-1(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口)。无操作数指令的最大指令数:216-212-26。其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。此时双操作数和单操作数指令各仅有1条。
4.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
计算机组成原理课后习题解答(第五版 白中英)
计算机组成原理 第五版 习题答案
第一章 (1)
第二章 (3)
第三章 (14)
第四章 (19)
第五章 (21)
第六章 (27)
第七章 (31)
第八章 (34)
第九章 (36)
第一章
1.模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。数字计算机的主要特点是按位运算,并且不连续地跳动计算。模拟计算机用电压表示数据,采用电压组合和测量值的计算方式,盘上连线的控制方式,而数字计算机用数字0和1表示数据,采用数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,数据存储量大,逻辑判断能力强。
2.数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。
3.科学计算、自动控制、测量和测试、信息处理、教育和卫生、家用电器、人工智能。4.主要设计思想是:采用存储程序的方式,编制好的程序和数据存放在同一存储器中,计算机可以在无人干预的情况下自动完成逐条取出指令和执行指令的任务;在机器内部,指令和数据均以二进制码表示,指令在存储器中按执行顺序存放。主要组成部分有::运算器、逻辑器、存储器、输入设备和输出设备。
5.存储器所有存储单元的总数称为存储器的存储容量。每个存储单元都有编号,称为单元地址。如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。6.计算机硬件可直接执行的每一个基本的算术运算或逻辑运算操作称为一条指令,而解算某一问题的一串指令序列,称为程序。
7.取指周期中从内存读出的信息流是指令流,而在执行器周期中从内存读出的信息流是数据流。
(完整版)计算机组成原理第4章作业参考答案
第4章部分习题参考答案
【4-4】已知X和Y,试用它们的变形补码计算出X + Y,并指出结果是否溢出
(3)X = -0.10110,Y = -0.00001
解:[X]补= 1.01010 [Y]补= 1.11111
1 1 . 0 1 0 1 0
+ 1 1 . 1 1 1 1 1
1 1 . 0 1 0 0 1
无溢出,X+Y = -0.10111
【4-5】已知X和Y,试用它们的变形补码计算出X - Y,并指出结果是否溢出
(3)X = 0.11011,Y = -0.10011
解:[X]补= 0.11011 [-Y]补= 0.10011
0 0 . 1 1 0 1 1
+ 0 0 . 1 0 0 1 1
0 1 . 0 1 1 1 0
结果正溢
【4-8】分别用原码乘法和补码乘法计算X * Y
(1)X = 0.11011,Y = -0.11111
法一:原码一位乘算法
解:|X| = 0.11011→B |Y| = 0.11111→C 0→A
A C 说明
1 1 1 1 1
C5 = 1, +|X|
1 1 1 1 1 部分积右移一位→
C5 = 1, +|X|
0 1 1 1 1 部分积右移一位→
C5 = 1, +|X|
1 0 1 1 1 部分积右移一位→
C5 = 1, +|X|
0 1 0 1 1 部分积右移一位→
C5 = 1, +|X|
0 0 1 0 1 部分积右移一位→
|X * Y| = 0.1101000101
Ps = Xs ⊕ Ys = 0 ⊕ 1 = 1
X*Y = -0.1101000101
法二:补码一位乘算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章习题参考答案
1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么?
答:不合理。指令最好半字长或单字长,设16位比较合适。一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令
单操作数指令
无操作数指令
3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:
(1) 单字长二地址指令。
(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 0
答:该指令格式及寻址方式特点如下:
(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数
在主存中。有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。
5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:
(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄
存器构成,寄存器均有8个,寻址方式均有8种。根据寻址方式的不同,指令可以是RR型、RS型、也可以是SS型;
(2)因为OP为4位,所以最多可以有16种操作。
6.一种单地址指令格式如下所示,其中为I间接特征,X为寻址模式,D为形式地址,I、X、D组成该指令的操作数有效地址E,设R为变址寄存器,R1为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名
答:①直接寻址②相对寻址③变址寻址
④基址寻址⑤间接寻址⑥先基址后间接寻址
7.某计算机字长为32位,主存容量为64K字,采用单字长单地址指令,共有40条指令。试采用直接、立即、变址、相对四种寻址方式设计指令格式。
答:根据题意,40种指令至少需6位OP;四种寻址方式至少需用2位表示;主存为64K,则地址需要16位,而机器字长为32位,可设计如下格式:
设:
寻址方式X=00为直接寻址方式,由16位的D直接给出有效地址,EA=D
寻址方式X=01为立即寻址方式,由16位的D直接给出操作数,操作数=D
寻址方式X=10为变址寻址方式,设变址寄存器为IR,则EA=(IR)+D
寻址方式X=11为相对寻址方式,设程序计数器为PC,则EA=(PC)+D(D可正可负)
注:IR和PC的位数与机器的字长相等,均为32位
8.某机字长为32位,主存容量为1M,单字长指令,有50种操作码,采用寄
存器寻址、寄存器间接寻址、立即、直接等寻址方式。CPU中有PC,IR,AR,DR和16个通用寄存器。问:
(1)指令格式如何安排?
(2) 能否增加其他寻址方式?
答:
(1) 根据题意,50种操作码至少需6位OP;寻址方式可用2位分别表示最多4种寻址方式;用4位编码选择16个通用寄存器之一作为源操作数或目的操作数,因机器字长为32位,固还剩20位可表示形式地址D
D
寻址方式字段=00,表示D为寄存器寻址,实际使用D中的4位进行寄存器选择;寻址方式字段=01,表示寄存器间接寻址,实际使用D中的4位进行寄存器选择;寻址方式字段=10,表示立即寻址,可使用D的全部确定一个立即数;
寻址方式字段=11,表示直接寻址,20位的D可确定一个存储单元。
(2) 若将形式地址的位数减少,则可以增加其他的寻址方式
9.设某机字长为32位,CPU中有16个32位通用寄存器,设计一种能容纳64种操作的指令系统。如果采用通用寄存器作基址寄存器,则RS型指令的最大存储空间是多少?
答:根据题意,64种操作至少需6位OP;用2位表示四种寻址方式;寄存器16个源操作数和目的操作数各用4位,因机器字长为32位,固还剩16位可表示形式地址D
空间最大可达232单元。
10.将表4.9的指令系统设计成二地址格式的指令系统。
答:表4.9中的指令共有29条,故操作码字段需要5位;设这些指令支持9种寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、相对寻址、基址寻址、变址寻址、堆栈寻址,则源和目的操作数各需要4位来确定其寻址方式;因字长为32位,故还剩余19位用于表示源和目的操作数的形式地址,可取形式地址为9位,多余的1位可以加在操作码字段。即,格式如下:
11.从以下有关RISC的描述中,选择正确答案。
A.采用RISC技术后,计算机的体系结构又恢复到早期的比较简单的情况。B.为了实现兼容,新设计的RISC,是从原来CISC系统的指令系统中挑选一
部分实现的。
C. RISC的主要目标是减少指令数。
D.RISC设有乘、除法指令和浮点运算指令。
答:C
12.根据操作数所在位置,指出其寻址方式(填空):
(1) 操作数在寄存器中,为(A)寻址方式。
(2) 操作数地址在寄存器,为(B)寻址方式。
(3) 操作数在指令中,为(C)寻址方式。
(4) 操作数地址(主存)在指令中,为(D)寻址方式。
(5) 操作数的地址,为某一寄存器内容与位移量之和,可以是(E,F,G)寻址方式。
答:A. 寄存器 B. 寄存器间接
C. 立即
D. 直接
E,F,G. 基址、变址、相对
13.将C语句翻译成MIPS R4000汇编语言代码。C赋值语句是:ƒ=(g+h)-(i+j)
假设变量ƒ、g、h、i、j分别分配给寄存器$s0、$s1、$s2、$s3、$s4。
答:该语句翻译成MIPS R4000汇编语句如下:
add $s5,$s1,$s2 ;将g+h的和存入寄存器$s5中($s5=$s1+$s2)
add $s6,$s3,$s4 ;将i+j的和存入寄存器$s6中($s6=$s3+$s4)
sub $s0,$s5,$s6 ;将结果存入寄存器$s0中($s0=$s5-$s6)
14.将如下MIPS R4000汇编语言翻译成机器语言指令。
lw $t0,1200($t1)
add $t0,$s2,$t0
sw $t0,1200($t1)
答:已知MIPS指令的字段值如下表所示,而且寄存器$s0~$s7对应的寄存器号