分享

组成原理内容回顾 - Lucas Tsai的日志 - 网易博客

 yuhuofei 2009-10-11
组成原理内容回顾
 
默认分类   2008-10-22 09:09   阅读166   评论0  
 

第一章 概论
(一)本章学习目标
1.理解计算机的基本概念,发展过程和应用领域;
2.熟练掌握计算机的五大组成部件,冯氏计算机基本思想,计算机的基本工作原理;
3.学会计算机的层次结构,总线分类,计算机软件和硬件概念和分类;
4.能运用计算机的性能指标,绘制和描述计算机的组成结构及工作原理。
(二)本章重点、要点
计算机的基本概念、基本组成、冯·诺依曼原理的基本思想、软件与硬件的逻辑等价、计算机性能指标。
(三)本章练习题或思考题:
1、单项选择题
⑴ 完整的计算机系统应包括______。
A.运算器、存储器、控制器           B.外部设备和主机
C.主机和实用程序                   D.配套的硬件设备和软件系统
⑵ 计算机系统中的存储器系统是指______。
A.RAM存储器      B.ROM存储器
C.主存储器                                               D.主存储器和外存储器
⑶ 冯·诺依曼机工作方式的基本特点是______。
A.多指令流单数据流                                       B.按地址访问并顺序执行指令
C.堆栈操作                                               D.存储器按内部选择地址
2、什么是“计算机”,你怎样理解“计算机”这个术语?
3、计算机发展了几代?各代的基本特征是什么?
4、计算机的应用主要分为哪几个方面?能举出你熟悉的例子吗?
5、冯·诺依曼型计算机的基本特点是什么?
6、计算机硬件有哪些部件,各部件的作用是什么?
7、什么是总线?以总线组成计算机有哪几种组成结构?各有什么特点?
8、什么是硬件、软件和固件?什么是软件和硬件的逻辑等价?在什么意义上软件和硬件是不等价的?
9、计算机中运行的软件有哪些,举例说明。
10、说明高级语言、汇编语言、机器语言三者的区别。
11、计算机系统按程序设计语言划分为哪几个层次?
12、你怎样理解计算机中的“兼容”特性?
13、解释如下概念:ALU CPU 主机 字长
14、计算机硬件实体的5个基本组成部分是否缺一不可?
15、常用的计算机性能指标有哪些?

第一章 练习题或思考题解答:
1. (1)D     (2)D   (3)B
2. 答:计算机是一种以电子器件为基础的,不需人的直接干预,能够对各种数字化信息进行快速算术和逻辑运算的工具,是一个由硬件﹑软件组成的复杂的自动化设备。
理解计算机的概念,应从六个方面:(1)以电子器件为物质基础,即研究的对象是电子数字计算机(Digital Computer);(2)不需要人的直接干预,说明具有自动化能力,其前提是存储程序;(3)处理各种数字化信息,计算机以二进制编码作为数字化编码及运算的基础;(4)具有算逻运算能力,基本运算操作是算术和逻辑运算;(5)计算机是快速工具,主要取决于两个因素:一是电子器件,二是存储程序。(6)由硬件和软件组成。
3. 答:见课本中的描述。
4. 答:计算机的生命力在于它的广泛应用,应用的范围几乎涉及人类社会的所有领域。归纳起来,在科学计算、过程检测与控制、信息管理、计算机辅助系统等领域中的应用成就最为突出。
举例:计算机辅助教学CAI;学生的学籍管理系统;数字图书馆系统;虚拟现实系统;售票系统;学校的一卡通系统等。
5. 答:冯?诺依曼原理的基本思想是:
采用二进制形式表示数据和指令。指令由操作码和地址码组成。
将程序和数据存放在存储器中,使计算机在工作时从存储器取出指令加以执行,自动完成计算任务。这就是“存储程序”和“程序控制”(简称存储程序控制)的概念。
指令的执行是顺序的,即一般按照指令在存储器中存放的顺序执行,程序分支由转移指令实现。
计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成,并规定了5部分的基本功能。
冯?诺依曼型计算机的基本特点也可以用“存储程序”和“程序控制”来高度概括。
6. 答:计算机的硬件系统由有形的电子器件等构成的,它包括运算器、存储器、控制器、输入输出设备及总线系统组成。而总线分为数据总线、地址总线、控制总线,其结构有单总线结构、双总线结构及多总线结构。存储器(Memory)是用来存放数据和程序的部件;运算器是对信息进行运算处理的部件;控制器是整个计算机的控制核心。它的主要功能是读取指令、翻译指令代码、并向计算机各部分发出控制信号,以便执行指令;输入设备能将数据和程序变换成计算机内部所能识别和接受的信息方式,并顺序地把它们送入存储器中;输出设备将计算机处理的结果以人们能接受的或其它机器能接受的形式送出。
7. 答:总线(Bus)就是计算机中用于传送信息的公用通道,是为多个部件服务的一组信息传送连接线。按照总线的连接方式,计算机组成结构可以分为单总线结构、双总线结构和多总线结构等(详细内容见第7章)。
8. 答:计算机硬件(Hardware)是指构成计算机的所有实体部件的集合,通常这些部件由电路(电子元件)、机械等物理部件组成。计算机软件(Software)是指能使计算机工作的程序和程序运行时所需要的数据,以及与这些程序和数据有关的文字说明和图表资料,其中文字说明和图表资料又称为文档。固件(Firmware)是一种界于传统的软件和硬件之间的实体,功能上类似软件,但形态上又是硬件。微程序是计算机硬件和软件相结合的重要形式。
软件和硬件的逻辑等价含义:
(1)任何一个由软件所完成的操作也可以直接由硬件来实现
(2)任何一条由硬件所执行的指令也能用软件来完成
在物理意义上软件和硬件是不等价的。
9. 答:计算机软件可以分为系统软件和应用软件两大类。系统软件是指管理、监控和维护计算机资源(包括硬件和软件)的软件。系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。目前常见的系统软件有操作系统、各种语言处理程序、数据库管理系统以及各种服务性程序等。
举例:系统软件,如Windows,Linux等;应用软件,如学生的学籍管理系统等。
10. 答:程序设计语言一般分为机器语言、汇编语言和高级语言三类。机器语言是最底层的计算机语言。用机器语言编写的程序,计算机硬件可以直接识别。每一条机器指令都是二进制形式的指令代码。汇编语言是为了便于理解与记忆,将机器语言用助记符号代替而形成的一种语言。高级语言是从50年代中期开始逐步发展起来的面向问题的程序设计语言,与具体的计算机硬件无关,其表达方式接近于被描述的问题,易为人们接受和掌握。
机器语言程序是直接针对计算机硬件的,执行效率比较高,能充分发挥计算机的速度性能。但是,用机器语言编写程序的难度比较大,容易出错,而且程序的直观性比较差,也不容易移植。汇编语言采用了助记符,比机器语言直观,容易理解和记忆,用汇编语言编写的程序也比机器语言程序易读、易检查、易修改。但需要汇编程序的支持。高级语言的显著特点是独立于具体的计算机硬件,通用性和可移植性好,易于编程,但运行效率低。
11. 答:计算机系统是一个由硬件、软件组成的多级层次结构,它通常由微程序级、一般机器级、操作系统级、汇编语言级、高级语言级组成,每一级上都能创造程序设计,且得到下级的支持。
12. 答:兼容(Compatible)是一个广泛的概念,包括软件兼容、硬件兼容、系统兼容等。软件兼容存在以下两种情况:
(1)软件的向上兼容性——这是指某档机原开发的软件可以不加修改便能在它的高档机上正确运行使用。
(2)软件的向下兼容性——这是指某档机的软件可以不加修改便能在它的低档机上正确运行使用。在这种情况下,软件向上兼容是不成问题的。在同一系列机内,不论高档机与低档机,所有机型上都能运行使用的软件,则是既能向上兼容又能向下兼容。
硬件兼容是软件兼容的基础,系统兼容包括硬件兼容和软件问题。
13. 答:算术逻辑运算部件(ALU:Arithmetic Logic Unit),是运算器的核心组成,功能是完成算数和逻辑运算。“中央处理单元”(CPU:Central Processing Unit)包括运算器和控制器,是计算机的信息处理的中心部件。存储器、运算器和控制器在信息处理操作中起主要作用,是计算机硬件的主体部分,通常被称为 “主机”。字长决定了计算机的运算精度、指令字长度、存储单元长度等,可以是8/16/32/64/128位(bit)等。
14. 答:是的,计算机硬件实体的5个基本组成部分缺一不可。
15. 答:见课本中的描述。

第二章 计算机中的数据表示
(一)本章学习目标
1.理解计算机计算机中的数据表示的含义、字符编码、汉字编码;
2.熟练掌握定点数、浮点数、原码、反码、补码、移码;
3.学会数据校验码、二-十进制编码;
4.能运用定点数、浮点数、原码、反码、补码、移码的定义表示数据;能够使用三种类型的数据校验码进行数据校验。
(二)本章重点、要点
定点数、浮点数、原码、反码、补码、移码、数据校验码。
(三)本章练习题或思考题:
1、单项选择题
⑴ 在下列数中最小的数为______ 。
   A.(101001)2        B.(52)8             C.(101001)BCD   D.(233)16
⑵ 在下列数中最大的数为______ 。
   A.(10010101)2    B.(227)8    C.(143)5           D.(96)16
⑶ 在机器中, ______的零的表示形式是唯一的。
A. 原码             B.补码          C.反码                  D.原码和反码
⑷ 针对8位二进制数,下列说法中正确的是______ 。
A. –127的补码为10000000     B. –127的反码等于0的移码
C. +1的移码等于–127的反码    D.0的补码等于–1的反码
⑸ 一个8位二进制整数采用补码表示,且由3个“1”和5个“0”组成,则最小值为______ 。
A. –127           B. -32             C. -125                 D. -3
2、试比较下列各数对中的两个数的大小
(1)(2001)10和(2001)8
(2)(4095)10和(7776)8
(3)(0.115)10和(0.115)16
(4)(0.625)10和(0.505)8
3、设二进制浮点数的阶码是3位,阶符1位,尾数6位,尾符1位,写出它的最大正数、最大负数和最小负数(0除外),并写出各自相应的十进制数的数值。
4、将X=-19/64表示成定点数(8位)及浮点规格化数(阶码3位,阶符1位,尾数7位,尾符1位),对于定点数请用原码、补码、反码的形式表示;对于浮点数请用原码、补码、反码以及阶码用移码,尾数用补码的形式表示。
5、将下列十进制数按阶码用移码、尾数用补码的格式写成浮点数的表示形式,其中阶码3位,阶符1位,尾数6位,尾符1位。
(1)7.75                        (2)-7/128
(3)726.55                     (4)-9.98
6、若采用奇偶校验,下列数据的奇偶校验位分别是什么?
(1)0101011                  (2)1011011
7、已知X=0.1001,Y=-0.0100,求:[X]补,[-X]补,[X/2]补,[Y/4]补,[-Y/2]补。
8、将下列各数化成8421码和余3码的形式:
(1)693.12                           (2)37.567
9、设有两个正的浮点数N1=2e1×n1和N2=2e2×n2,
(1)若e1>e2,是否就有N1>N2?
(2)若尾数n1、n2都是规格化数,上述结论成立吗?
10、已知下列补码,求真值X
   (1)[X]补=10000000            (2)[X]补=(600) 8
   (3)[X]补=(FB)16              (4)[-X]补=(725)8
11、试求下列8421BCD码的和,并按法则进行二—十进制调整。
   (1)97+68                          (2)39+87
   (3)26+62                          (4)369+963
12、用补码运算方法求x+y=?
(1)x= 0.1011, y=0.0011;
(2)x=-0.0110, y=0.0011;
(3)x= 0.0010, y=0.0110。
13、试计算采用32×32点阵字形的一个汉字字形占多少字节?存储6763个16×16点阵以及24×24点阵字形的汉字库各需要多少存储容量?
14、海明校验码的编码规则有哪些?
15、假定被校验的数据M(X)=1100B (注:B代表二进制),生成多项式为G(X)=X3+ X+1,则其CRC校验码是什么?

第二章 练习题或思考题解答:
1.    (1)C   (2)B   (3)B   (4)B   (5)C
2.    (1)(2001)10 >(2001)8
(2)(4095)10 >(7776)8
(3)(0.115)10 >(0.115)16
(4)(0.625)10 <(0.505)8
3. 解:  
最大正数=2111*0.111111=126
最大负数=2-111*-0.000001=2-13
最小负数=2111*-0.111111=-126
4. 解:  
X=-19/64=(-10011*2-110)2=-0.0100110=2-01*-0.1001100
定点数:
[X]原=1.0100110;
[X]反=1.1011001;
[X]补=1.1011010;
浮点数:
              原码:1,001;1.1001100
              补码:1,111;1.0110100
              反码:1,110;1.0110011
             阶移,尾补:0,111;1.0110100
5. 解:
(1)= 0.111110*21,011
(2)= -0.0000111=20100*1.001000
(3)> 2111*0.111111 上溢
(4)= 21100*1.011001
6. 解:
       0                   1
7. 解:
X=0.1001,Y=-0.0100,
[X]补=0.1001,[-X]补=1.0111,[X/2]补=0.01001,
[Y/4]补=1.111100,[-Y/2]补=0.00100
8. 解:
(1)693.12=(011010010011.00010010)8421=(100111000110.01000101)余3
(2)37.567=(00110111.010101100111)8421=(01101101.100010011010)余3
9. 解:
(1)不一定 (2)成立
10. 解:
       (1)-128      (2)-128      (3)-5      (4)43
11. 解:
       (1)165              (2)126              (3)88         (4)1332
12. 解:
       (1)0.1110   (2)-0.0011 (3)0.1000
13. 解:
       128B       216416B         486936B
14. 答:
若海明码的最高位号为m,最低位号为1,即HmHm-1…H2H1,则海明码的编码规则是:
(1)校验位与数据位之和为m,每个校验位Pi在海明码中被分在位号2i-1的位置上,其余各位为数据位,并按从低向高逐位依次排列的关系分配各数据位。
(2)海明码的每一位位码Hi(包括数据位和校验位)由多个校验位校验,其关系是被校验的每一位位号要等于校验它的各校验位的位号之和。
15. 解:
       010

第三章 运算方法和运算器
(一)本章学习目标
1.理解运算器和其他部件的关系、加法器的基本原理;
2.熟练掌握补码运算规则、原码一位乘法、两位乘法、补码除法运算、浮点数加法减法运算;
3.学会运算器的功能与组成;
4.能运用补码实现加减运算,原码实现乘除运算,掌握典型运算器的基本功能和组成。
(二)本章重点、要点
补码运算规则、原码一位乘法、两位乘法、补码除法运算、浮点数加法减法运算。
(三)本章练习题或思考题:
1、单项选择题
⑴ 运算器虽有许多部件组成,但核心部分是______ 。
A.数据总线                          B.算数逻辑运算单元  
C.多路开关                                       D.通用寄存器
⑵ 在定点二进制运算器中,减法运算一般通过______来实现。
A.原码运算的二进制减法器            B.补码运算的二进制减法器
C.补码运算的十进制加法器            D.补码运算的二进制加法器
(3) 四片74181ALU和一片74181CLA器件相配合,具有如下进位传递功能:______ 。
A.行波进位                          B.组内先行进位,组间先行进位
C.组内先行进位,组间行波进位         D.组内行波进位,组间先行进位
⑷ 在定点运算器中,无论采用双符号位还是单符号位,必须有______,它一般用______来实现。
A.译码电路,与非门                         B.编码电路,或非门
C.溢出判断电路,异或门                     D.移位电路,与或非门
⑸ 下列说法中正确的是______ 。
A.采用变形补码进行加减运算可以避免溢出
B.只有定点数运算才有可能溢出,浮点数运算不会产生溢出
C.只有带符号数的运算才有可能产生溢出
D.将两个正数相加有可能产生溢出
2、用补码计算下列各组数的和:
(1)X=0.11010,Y=-0.10011
     (2)X=0.10001,Y=0.01000
     (3)X=-0.01111,Y=-0.00101
3、用变形补码作下列运算,并指出哪个运算结果需要作溢出处理?
   已知:[X]变形补=(011011)8 ,[Y]变形补=(301011)8 ,求:[X+Y]变形补 ,[X-Y]变形补 ,(mod 217)。
4、用原码一位和两位乘法规则计算[X*Y]原,并写出运算过程。
     (1)[X] 原=0,110110,[Y] 原=1,110011
     (2)[X] 原=0,011010,[Y] 原=0,011010
     (3)[X] 原=0,000110,[Y] 原=1,100011
     (4)[X] 原=0,011011,[Y] 原=0,111011
5、用恢复余数法和加减交替法计算[X/Y]原,并写出运算过程。
     (1)[X] 原=0,10101,[Y] 原=1,11011
     (2)[X] 原=1,11010,[Y] 原=0,11111
     (3)[X] 原=1,01011,[Y] 原=0,10101
     (4)[X] 原=1,10010,[Y] 原=0,00011
6、说明为什么在原码一位乘法和原码两位乘法中,部分积的符号位要分别用一位和三位?
7、运算器由哪几部分组成?
8、浮点数加减运算的规则有哪些?试举例说明浮点数运算的过程。
9、请给出原码加减交替法算法规则,并采用此方法计算两个负数X= -0.1001,Y= -0.1011,X/Y=?(写出过程)。
10、浮点数和定点数的溢出判断方法有何不同?
11、利用74181和74182芯片设计如下三种方案的64位ALU:
(1)采用行波进位;
(2)采用两级行波进位;
(3)采用三级行波进位。
第三章 练习题或思考题解答:
1.    (1)B   (2)D   (3)B   (4)C   (5)D   (6)C   (7)A   (8)B  
2. 解:
       (1)0.00111        (2)0.11001        (3)-0.10100      
3. 解:
[X+Y]变补 =     (312022)8
[X-Y]变补        =     (110000)8 溢出(两符号位01)
4. 解:(运算过程请参考书中例题)
       (1)1,101011000010      
(2)0,000011010010
(3)1,000011010010
(4)0,011000111001
5. 解:(运算过程请参考书中例题)
       (1)[X/Y]原=1,11000;余=0.10101*2-5
(2)[X/Y]原=1,11010;余=0.11010*2-5
(3)[X/Y]原=1,10000;余=0.01011*2-5
(4)溢出
6. 答:原码一位乘法运算过程中,每一步相加的和有可能往前有进位,所以部分积的符号位用一位,以保留往前的进位,然后再进行右移操作;
原码两位乘法中的运算过程使用了补码运算,由于有乘2运算,也就是往左移操作,每一步相加的和有可能往前有进位,且有可能影响两个符号位,所以部分积的符号位要三位,以保留往前的进位,然后进行右移操作时可以根据最高符号位确定往右补的编码。
7. 答:运算器的基本结构应包括以下几个部分:
(1) 能实现算术和逻辑运算功能的部件ALU;
(2) 存放待加工的信息或加工后的结果信息的通用寄存器组;
(3) 按操作要求控制数据输入的部件:多路开关或数据锁存器;
(4) 按操作要求控制数据输出的部件:输出移位和多路开关;
(5) 计算器与其它部件进行信息传送的总线以及 总线接收器与发送器;总线接收器与发送器通常是由三态门构成的。
8. 答:浮点加减运算的运算步骤包括:对阶、求和、规格化、舍入、溢出判断。规则及示例请见书中“浮点加减法运算”一节。
9. 解:
原码加减交替法的规则是:
当余数为正时,商上1,余数左移一位,减除数绝对值得新余数;
当余数为负时,商上0,余数左移一位,加除数绝对值得新余数。
[X]原 = 1.1001     [Y]原 = 1.1011
|X| = 0.1001     |Y| = 0.1011     [-|Y|]补 = 1.0101
运算过程略
Qs = 1 1 = 0
[X/Y]原 = [Q]原 = 0.1101
[R]原 = 2-4R4 = 0.00000001
X/Y = 0.1101
R = 0.00000001
10. 答:
(1)定点表示法,例如定点小数,带符号n+1位数时:

小于2-n时:下溢,当0;

大于1-2-n时:上溢。

(2)浮点表示法,规格化后,从阶码上分析溢出:

阶码很小时:下溢,当0;

阶码超出最大值时:上溢。

11. 答:略

指令系统
(一)本章学习目标
1.理解指令系统的基本概念、指令系统的要求、指令系统与高级语言的关系;
2.熟练掌握指令格式、指令寻址、;
3.学会扩展操作码、指令分类;
4.能运用指令的组成、扩展操作码、寻址方式进行指令设计。
(二)本章重点、要点
指令的组成、扩展操作码、寻址方式。
(三)本章练习题或思考题:
1、术语解释:
(1)指令
(2)指令系统
(3)指令格式
(4)寻址方式
2、在下列有关计算机指令系统的描述中,选择出正确的答案。
(1)浮点运算指令对用于科学计算的计算机是很必要的,可以提高计算机的运算速度。
(2)不设置浮点运算指令的计算机,就不能用于科学计算。
(3)处理大量输入输出数据的计算机,一定要设置十进制运算指令。
(4)在计算机的指令系统中,真正必须的指令是不多,其余指令都是为了提高计算机速   度和便于编程而引入的。
(5)通用寄存器间接寻址方式中,操作数处在内存单元中。
(6)扩展操作码是操作码字段中用来进行指令分类的代码。
3、单项选择题
(1)寄存器间接寻址方式中,操作数处在__________。
A.通用寄存器        B.内存单元             C.程序计数器    D.堆栈
(2)扩展操作码是__________。
A.操作码字段外辅助操作字段的代码
B.操作码字段中用来进行指令分类的代码
C.指令格式中的操作码
D.一种指令优化技术,不同地址数指令可以具有不同的操作码长度
(3)指令系统中采用不同寻址方式的目的主要是__________。
A.实现存储程序和程序控制
B.缩短指令长度,扩大寻址空间,提高编程灵活性
C.可以直接访问外存
D.提供扩展操作码的可能并降低指令译码难度
(4)单地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个数常采用__________。
A.堆栈寻址模式      B.立即寻址方式     C.隐含寻址方式         D.间接寻址方式
(5)对某个寄存器中操作数的寻址方式称为__________寻址。
A.直接                    B.间接                  C.寄存器           D.寄存器间接
4、一个完善的指令系统应该具备哪些方面的要求?
5、指令格式设计的准则有哪些?
6、某计算机指令字长16位,地址码是6位,指令有无地址、一地址和二地址三种格式,设有N条二地址指令,无地址指令M条,试问1地址指令最多有多少条?
7、假设某计算机指令长度为20位,具有双操作数、单操作数、无操作数三类指令格式,每个操作数地址规定用6位表示。 问:若操作码字段固定为8位,现已设计出m条双操作数指令,n条无操作数指令,在此情况下,这台计算机最多可以设计出多少条单操作数指令?
8、设指令是12位,地址码3位,能否设计出一种把下面所有指令都能编出代码的扩展操作码?
(1)4条三地址指令;
(2)255条一地址指令;
(3)16条无地址指令。
9、设指令系统指令长度是12位,地址码长3位,能否提出一种分配方案使该指令系统有4条三地址指令,8条二地址指令和192条一地址指令。
10、在下面有关寻址方式的叙述中,填写正确答案。
根据操作数所在的位置,指出其寻址方式:操作数在寄存器中,为_ ___寻址方式;操作数地址在寄存器中称_ ___寻址方式;操作数在指令中,称__ __寻址方式;操作数的有效地址,为一寄存器中的内容与位移量之和则可以是__ __、__ __、____寻址方式。
11、指令有哪些类型,举例说明。
12、指令是灵活多变的,体现在哪些方面?
13、试比较基址寻址和变址寻址的异同点。
14、什么是寻址方式?常用的寻址方式有哪几种?
15、堆栈是什么?它有什么特点?功能有哪些?

练习题或思考题解答:
1. 答:略
2. 解:(1)(4)(5)
3.    (1)B   (2)D   (3)B   (4)C   (5)C  
4. 答:请参考本章指令系统的要求有关描述。
5. 答:一台计算机选择怎样的指令格式,涉及多方面因素。一般要求指令的字长要短一些,以得到时间和空间上的优势。但指令也必须有足够的长度以利于增加信息量。再者,指令字长一般应是机器字符长度的整数倍以便存储系统的管理。另外,指令格式的设计还与如何选定指令中操作数地址的位数有关。
6. 解:设1地址指令有X条
((24-N)*26-X)*26=M
得:X=(24-N)*26-M*2-6
7. 解:
由于设定全部指令采用8位固定的OP字段,故这台计算机最多的指令条数为28=256条。因此最多还可以设计出(256-m-n)条单操作数指令。
8. 答:不能。
9. 解:可以,具体方案:  
4条三地址指令
8条二地址指令
192一地址指令(192=24*23)
10. 答:寄存器寻址;寄存器间址;立即数寻址;变址寻址、基址寻址、相对寻址。
11. 答:请参考本章指令系统的分类有关描述。
12. 答:指令是灵活多变的,主要体现在以下几个方面:指令格式多样;寻址方式丰富;指令类型多种;操作码位数可随地址码个数变化而变化(扩展操作码方式);指令长度可变等。
13. 答:基址寻址方式和变址寻址方式,在形式上是类似的。但用户可使用变址寻址方式编写程序,而基址寻址方式中对于基址寄存器,用户程序无权操作和修改,由系统软件管理控制程序使用特权指令来管理的。再者基址寻址方式主要用以解决程序在存储器中的定位和扩大寻址空间等问题。
14. 答:请参考本章指令寻址方式有关描述。
15. 答:
(1)堆栈的概念
· 是若干个存储单元(或寄存器)的有序集合,它顺序地存放一组元素。
· 数据的存取都只能在栈顶单元内进行,即数据的进栈与出栈都只能经过栈顶单元这个“出入口”。
· 堆栈中的数据采用“先进后出”或“后进先出”的存取工作方式。
(2)堆栈结构在计算机中的作用
· 具有堆栈结构的机器使用零地址指令,这不仅合指令长度短,指令结构简单,机器硬件简化。
· 实现程序调用,子程序嵌套调用和递归调用。
· 对于“中断”技术,堆栈更是不可缺少的,保存“断点”和“现场”。
(3)堆栈的操作
设数据进栈方向为从高地址向低地址发展,当向堆栈压入数据时,SP的内容先自动递减而指向一个新的空栈顶单元,再把数据写入此栈顶单元;当数据弹出堆栈时,立即读出SP所指向的栈顶单元内容,再把SP内容自动递增而指向新的栈顶位置。即
    PUSH    X; (SP)-1?SP
                   (X)?(SP)
    POP     X; ((SP))?X
                   (SP)+1?SP

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多