《计算机组成原理》考研真题及典型题详解-指令系统【圣才出品】
计算机组成考研题库

计算机组成考研题库计算机组成原理是计算机科学与技术专业考研的重要科目之一,它涵盖了计算机硬件的基本组成和工作原理。
以下是一些计算机组成原理的考研题库内容,供参考:一、选择题1. 计算机的CPU主要由哪两个部件组成?A. 算术逻辑单元(ALU)和控制单元(CU)B. 存储器和输入/输出设备C. 寄存器和控制单元D. 总线和输入/输出设备2. 在计算机系统中,主存储器的主要功能是什么?A. 执行程序指令B. 存储数据和程序C. 管理输入/输出操作D. 控制数据流向二、填空题1. 计算机的指令系统包括______、______和______三类指令。
2. 浮点数的表示方法中,指数部分通常采用______编码。
三、简答题1. 简述冯·诺依曼计算机体系结构的主要特点。
2. 解释什么是指令周期,并描述一个指令周期的各个阶段。
四、计算题1. 给定一个二进制数1011011,请计算它的十进制表示。
2. 已知一个浮点数的规格化表示为1.1011×2^3,请计算它的实际数值。
五、论述题1. 论述流水线技术在现代计算机CPU设计中的应用及其优势。
2. 讨论多核处理器相对于单核处理器在处理多任务时的优势和可能面临的挑战。
六、案例分析题某计算机系统采用32位字长,主存储器容量为4GB。
请分析该系统的地址空间大小,并讨论其对系统性能的可能影响。
以上题库内容涵盖了计算机组成原理的多个方面,包括基本概念、指令系统、存储器、浮点数表示、指令周期、流水线技术、多核处理器等。
考生在准备考研时应全面复习这些知识点,以确保能够应对考试中的各种题型。
请注意,这只是一个示例题库,实际的考研题库可能会有所不同,考生应根据具体的考试大纲和教材进行复习。
计算机组成原理考研试题(六)及答案

计算机组成原理考研试题(六)及答案一、选择题(共5 分,每题1 分)1.某机字长8 位,采用补码形式(其中1 位为符号位),则机器数所能表示的范围是______ 。
A.-127 ~127;B.-128 ~+128;C.-128 ~+127;D.-128 ~+128。
2.在______的计算机系统中,外设可以和主存储器单元统一编址,因此可以不使用I/O 指令。
A.单总线;B.双总线;C.三总线;D.以上三种总线。
3.某计算机字长是32 位,它的存储容量是64KB.按字编址,它的寻址范围是______。
A.16KB;B.16K;C.32K;D.32KB。
4.中断向量可提供______。
A.被选中设备的地址;B.传送数据的起始地址;C.中断服务程序入口地址;D.主程序的断点地址。
5.Cache 的地址映象中______比较多的采用“按内容寻址”的相联存储器来实现。
A.直接映象;B.全相联映象;C.组相联映象;D.以上都有。
6.总线的异步通信方式______。
A.不采用时钟信号,只采用握手信号;B.既采用时钟信号,又采用握手信号;C.既不采用时钟信号,又不采用握手信号;D.采用时钟信号,不采用握手信号。
7.在磁盘存储器中,查找时间是______。
A.使磁头移动到要找的柱面上所需的时间;B.在磁道上找到要找的扇区所需的时间;C.在扇区中找到要找的数据所需的时间。
D.以上都不对。
8.在控制器的控制信号中,相容的信号是______的信号。
A.可以相互替代;B.可以相继出现;C.可以同时出现;D.不可以同时出现。
9.计算机操作的最小单位时间是______。
A.时钟周期;B.指令周期;C.CPU 周期;D.执行周期。
10.CPU 不包括______ 。
A.地址寄存器;B.指令寄存器IR;C.地址译码器;D.通用寄存器。
11.______寻址便于处理数组问题。
A.间接寻址;B.变址寻址;C.相对寻址;D.立即寻址。
计算机组成原理考研试题(八)及答案

计算机组成原理考研试题(八)及答案一、选择题(共20 分,每题1 分)1.零地址运算指令在指令格式中不给出操作数地址,它的操作数来自______。
A.立即数和栈顶;B.暂存器;C.栈顶和次栈顶;D.累加器。
2.______可区分存储单元中存放的是指令还是数据。
A.存储器;B.运算器;C.控制器;D.用户。
3.所谓三总线结构的计算机是指______。
A.地址线、数据线和控制线三组传输线。
B.I/O 总线、主存总统和DMA 总线三组传输线;C.I/O 总线、主存总线和系统总线三组传输线;D.设备总线、主存总线和控制总线三组传输线.。
4.某计算机字长是32 位,它的存储容量是256KB,按字编址,它的寻址范围是______。
A.128K;B.64K;C.64KB;D.128KB。
5.主机与设备传送数据时,采用______,主机与设备是串行工作的。
A.程序查询方式;B.中断方式;C.DMA 方式;D.通道。
6.在整数定点机中,下述第______种说法是正确的。
A.原码和反码不能表示-1,补码可以表示-1;B.三种机器数均可表示-1;C.三种机器数均可表示-1,且三种机器数的表示范围相同;D.三种机器数均不可表示-1。
7.变址寻址方式中,操作数的有效地址是______ 。
A.基址寄存器内容加上形式地址(位移量);B.程序计数器内容加上形式地址;C.变址寄存器内容加上形式地址;D.以上都不对。
8.向量中断是______。
A.外设提出中断;B.由硬件形成中断服务程序入口地址;C.由硬件形成向量地址,再由向量地址找到中断服务程序入口地址D.以上都不对。
9.一个节拍信号的宽度是指______。
A.指令周期;B.机器周期;C.时钟周期;D.存储周期。
10.将微程序存储在EPROM 中的控制器是______控制器。
A.静态微程序;B.毫微程序;C.动态微程序;D.微程序。
11.隐指令是指______。
A.操作数隐含在操作码中的指令;B.在一个机器周期里完成全部操作的指令;C.指令系统中已有的指令;D.指令系统中没有的指令。
考研计算机科学与技术学科联考计算机网络考点归纳与典型题(含历年真题)详解(传输层)【圣才出品】

第5章传输层5.1 考点归纳【考纲指定考点】一、传输层提供的服务1.传输层的功能;2.传输层寻址与端口;3.无连接服务和面向连接服务。
二、UDP协议1.UDP数据报;2.UDP校验。
三、TCP协议1.TCP段;2.TCP连接管理;3.TCP可靠传输;4.TCP流量控制与拥塞控制。
【题型及考点分析】传输层是整个网络体系结构中的关键层次。
要求掌握传输层在计算机网络中的地位、功能、工作方式及原理等,掌握UDP协议及TCP协议(如首部格式、可靠传输、流量控制、拥塞控制、连接管理等)。
其中,TCP报文分析、流量控制与拥塞控制机制,出选择题、综合题的概率均较大,因此要将其工作原理透彻掌握,以便能在具体的题目中灵活运用。
一、传输层提供的服务传输层的主要功能是完成网络中不同主机上的用户进程之间的数据通信。
传输层之间交换的数据单元一般用报文段(segment)来表示。
1.传输层的功能从通信和信息处理的角度看,传输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。
传输层位于网络层之上,它为运行在不同主机上的进程之间提供了逻辑通信,而网络层提供了主机之间的逻辑通信。
显然,即使当网络层协议是不可靠的,也就是即使网络层协议会使分组丢失、混乱和重复,传输层同样也能为应用程序提供可靠的服务。
(1)传输层功能①传输层提供应用进程之间的逻辑通信(即端到端的通信)与网络层的区别是,网络层提供的是主机之间的逻辑通信。
传输层之间的通信好像是沿水平方向传送数据。
但事实上两个传输层之间并没有一条水平方向上的物理连接。
网络层是提供主机之间的逻辑通信,而传输层是为应用进程之间提供端到端的逻辑通信。
②分割和重组数据将应用层的消息分割成若干子消息并封装为报文段。
③按端口寻址标识不同的应用进程,实现多个应用进程对同一个IP地址的复用。
④对收到的报文进行差错检测(首部和数据部分);⑤提供两种服务一种是面向连接的服务,由TCP协议实现,它是一种可靠的服务;一种是无连接的服务,由UDP实现,是一种不可靠的服务。
计算机组成原理唐朔飞(第2版)课后习题-控制单元的设计(圣才出品)

5.假设 CPU 在中断周期用堆栈保存程序断点,而且进栈时指针减 1(具体操作是先修 改栈指针后存数),出栈时指针加 1。分别写出组合逻辑控制和微程序控制在完成中断返回 指令时,取指阶段和执行阶段所需的全部微操作命令及节拍安排。
答:假设进栈操作是先修改堆栈指针后存数,则出栈操作是先读数后修改堆栈指针。 (1)完成中断返回指令组合逻辑控制的微操作命令及节拍安排: 取指阶段
执行阶段:
(2)完成中断返回指令微程序控制的微操作命令及节拍安排:
取指阶段
T0
PC→MAR,1→R
T1
Ad(CMDR)→CMAR
T2
M(MAR)→MDR,(PC)+1→PC
T3
Ad(CMDR)→CMAR
T4
MDR→IR
5 / 22
圣才电子书 十万种考研考证电子书、题库视频学习平台
执行周期:
⑤STP 指令所需全部微操作命令及节拍安排: 取指周期:
3 / 22
圣才电子书 十万种考研考证电子书、题库视频学习平台
执行周期:
4.在单总线结构的计算机中,用该总线连接了指令寄存器 IR、程序计数器 PC、存储 器地址寄存器 MAR、存储器数据寄存器 MDR、通用寄存器 R0~R7 的输入和输出端。ALU 的两个输入端分别与总线和寄存器 Y 的输出端相连,ALU 的输出端与寄存器 2 的输入端相 连。Y 的输入端与总线连接,2 的输出端与总线连接该机有下列指令:
T5
OP(IR)→微地址形成部件→CMAR
执行阶段
6.已知带返转指令的含义如下所示,写出机器在完成带返转指令时,取指阶段和执行 阶段所需的全部微操作及节拍安排。
答:取指周期:
计算机组成原理考研题

计算机组成原理考研题1. 在计算机系统中,缓存是一个重要的组成部分。
请简要解释缓存在计算机系统中的作用和原理。
缓存在计算机系统中的作用是提高数据访问效率。
由于存储器与处理器之间的速度差异,在数据传输过程中会导致处理器频繁地等待。
为了解决这个问题,缓存被引入用于存储最常访问的数据,以减少对主存的频繁访问。
缓存原理基于局部性原理,即数据的访问往往具有时间和空间上的局部性。
一个被访问的数据有很大的可能性在未来的访问中再次被使用,而附近的数据也很可能在短时间内被访问。
因此,缓存通过将这些被频繁访问的数据存储在距离处理器更近的地方,以加快数据的访问速度。
缓存由多个缓存行组成,每个缓存行存储一个块大小的数据及其对应的地址。
当处理器需要访问数据时,首先会检查缓存是否存在所需数据。
如果存在,即命中缓存,处理器可以直接从缓存读取数据。
如果缓存中不存在所需数据,即缓存未命中,处理器会从主存中读取所需数据,并将其放入缓存中。
为了提高缓存的命中率,缓存采用了多级缓存的策略。
多级缓存由多个缓存级别组成,每个级别的缓存都比前一级别更接近处理器。
缓存层次结构的设计使得常用的数据能够更快地被访问,从而进一步提高计算机系统的运行效率。
2. 计算机系统中的总线是什么?其作用和特点是什么?总线是计算机系统中用于连接各个硬件组件的通信路径。
它在计算机内部传输数据、地址和控制信号,充当了硬件组件之间数据传输的桥梁。
总线的作用是实现不同硬件组件之间的数据传输和通信。
它通过将数据、地址和控制信号传输到目标设备上,实现了不同组件之间的信息交换。
总线的作用类似于电脑系统中各种设备之间的数据公路,协调和管理设备之间的数据通信和同步。
总线的特点包括:1) 并行传输:总线通过并行传输多个数据位来提高数据传输速率。
每个时钟周期传输的数据位数称为总线宽度,决定了总线的数据传输能力。
2) 共享性:总线是共享资源,多个设备可以共享同一条总线进行数据传输。
这样可以减少硬件成本,并提高系统的灵活性和扩展性。
计算机组成原理试题及答案
计算机组成原理题集含答案题库题目总数:293第一章单选题1、控制器、运算器和存储器合起来一般称为(主机):I/O部件内存储器外存储器主机2、冯•诺依曼机工作方式的基本特点是(按地址访问并顺序执行指令):按地址访问并顺序执行指令精确结果处理存储器按内部地址访问自动工作3、输入、输出设备以及辅助存储器一般统称为(外围设备):I/O系统外围设备外存储器执行部件4、计算机硬件能直接识别和执行的语言是(机器语言):高级语言汇编语言机器语言符号语言判断题5、若某计算机字代表一条指令或指令的一部分,则称数据字(错)。
6、若某计算机字是运算操作的对象,即代表要处理的数据,则称指令字(错)。
7、数字计算机的特点:数值由数字量(如二进制位)来表示,运算按位进行.(对)8、模拟计算机的特点:数值由连续量来表示,运算过程是连续的。
(对)填空题9、系统软件包括:服务程序、语言程序、(操作系统)、数据库管理系统。
10、计算机系统的发展按其核心部件采用器件技术来看经历了五代的变化,分别是(电子管)、(晶体管)、(集成电路)、(大规模集成电路)、(巨大规模集成电路)五个部分。
11、计算机系统是一个由硬件和软件组成的多级层次结构,这通常由(微程序级)、(一般机器级)、(操作系统级)、(汇编语言级)和(高级语言级)等组成,在每一级上都可以进行(程序设计).12、计算机的软件一般分为(系统软件)和(应用软件)两大部分.13、计算机的硬件基本组成包括(控制器)、(运算器)、(存储器)、(输入设备)和(输出设备)五个部分。
简答题14、什么是存储容量?什么是单元地址?存储器所有存储单元的总数称为存储器的存储容量。
灭个存储单元都有编号,称为单元地址。
15、什么是外存?简述其功能.外存:为了扩大存储容量,又不使成本有很大的提高,在计算机中还配备了存储容量更大的磁盘存储器和光盘存储器,称为外存储器,简称外存。
外存可存储大量的信息,计算机需要使用时,再调入内存。
唐朔飞《计算机组成原理》复习笔记(CPU的结构和功能)【圣才出品】
第8章CPU的结构和功能8.1复习笔记一、CPU的结构1.CPU的含义CPU实质包括运算器和控制器两大部分。
CPU必须具有控制程序的顺序执行(称指令控制)、产生完成每条指令所需的控制命令(称操作控制)、对各种操作加以时间上的控制(称时间控制)、对数据进行算术运算和逻辑运算(数据加工)以及处理中断等功能。
2.CPU结构框图CPU的内部结构如图8-1所示。
图8-1CPU内部结构图3.CPU的寄存器CPU中的寄存器大致可分两类:一类属于用户可见寄存器,用户可对这类寄存器编程,以及通过优化使CPU因使用这类寄存器而减少对主存的访问次数;另一类属于控制和状态寄存器,用户不可对这类寄存器编程,它们被控制部件使用,以控制CPU的操作,也可被带有特权的操作系统程序使用,从而控制程序的执行。
(1)用户可见寄存器①通用寄存器通用寄存器可由程序设计者指定许多功能,可用于存放操作数,也可作为满足某种寻址方式所需的寄存器。
②数据寄存器③地址寄存器④条件码寄存器(2)控制和状态寄存器①MAR:存储器地址寄存器,用于存放将被访问的存储单元的地址。
②MDR:存储器数据寄存器,用于存放欲存入存储器中的数据或最近从存储器中读出的数据。
③PC:程序计数器,存放现行指令的地址,通常具有计数功能。
④IR:指令寄存器,存放当前欲执行的指令。
4.控制单元控制单元(CU)是提供完成计算机全部指令操作的微操作命令序列部件。
二、指令周期1.指令周期的基本概念CPU每取出并执行一条指令所需的全部时间称为指令周期,即CPU完成一条指令的时间。
一个完整的指令周期应包括取指、间址、执行和中断4个子周期。
间址周期和中断周期不一定包含在每个指令周期内。
这4个周期又可称为CPU的工作周期,为了区别它们,在CPU内可设置4个标志触发器,如图8-2所示。
图8-2CPU工作周期的标志图8-2所示的FE、IND、EX和INT分别对应取指、间址、执行和中断4个周期,并以“1”状态表示有效,它们分别由1→FE、1→IND、1→EX和1→INT这4个信号控制。
考研真题组成原理答案
考研真题组成原理答案一、选择题1. 在计算机组成原理中,指令周期是指:- A. 指令的执行时间- B. 指令的编译时间- C. CPU执行一条指令所需的时间- D. 指令的存储时间答案:C2. 冯·诺依曼计算机体系结构的主要特点是:- A. 采用微程序控制- B. 指令和数据统一编址- C. 采用流水线技术- D. 采用多处理机结构答案:B二、填空题1. 在现代计算机系统中,流水线技术可以提高______,减少CPU的空闲时间。
答案:CPU的吞吐量2. 存储器的层次结构中,位于最顶层的是______。
答案:寄存器三、简答题1. 简述指令流水线的基本概念及其优点。
答案:指令流水线是一种将指令执行过程分解为多个阶段,并使这些阶段在多个指令之间并行处理的技术。
它的优点包括提高CPU的利用率、增加吞吐量和减少指令的平均执行时间。
2. 描述计算机存储器的三级存储体系结构及其特点。
答案:计算机存储器的三级存储体系结构包括高速缓存(Cache)、主存储器(RAM)和辅助存储器(如硬盘)。
高速缓存位于CPU内部,速度最快,容量较小,用于存放最常访问的数据;主存储器是计算机的主要工作存储器,容量较大,速度次之;辅助存储器容量最大,但速度最慢,通常用于长期存储数据。
四、计算题1. 假设一个计算机系统有三级存储器,分别为L1缓存、L2缓存和主存。
L1缓存的命中率为90%,L2缓存的命中率为80%,主存的访问时间为100纳秒。
如果一个程序需要访问1000次主存,计算平均访问时间。
答案:首先计算L1缓存未命中的概率为10%,然后L2缓存未命中的概率为10% * 20% = 2%。
因此,平均访问次数为:900次L1命中 + 100次L2命中 + 10次主存访问。
平均访问时间 = (900 * 1ns + 100 * 5ns + 10 * 100ns) / 1000 = 11.45ns。
五、论述题1. 论述计算机组成原理中并行处理技术的重要性及其在现代计算机中的应用。
(NEW)白中英《计算机组成原理》(第5版)配套题库【考研真题精选+章节题库】
目 录第一部分 考研真题精选一、选择题二、综合应用题第二部分 章节题库第1章 计算机系统概论第2章 运算方法和运算器第3章 多层次的存储器第4章 指令系统第5章 中央处理器第6章 总线系统第7章 外存与I/O设备第8章 输入输出系统第9章 并行组织与结构第一部分 考研真题精选一、选择题1下列关于冯·诺依曼结构计算机基本思想的叙述中,错误的是( )。
[2019年408统考]A.程序的功能都通过中央处理器执行指令实现B.指令和数据都用二进制表示,形式上无差别C.指令按地址访问,数据都在指令中直接给出D.程序执行前,指令和数据需预先存放在存储器中【答案】C根据冯·诺依曼体系结构的基本思想可知,所有的数据和指令序【解析】列都是以二进制形式存放在存储器中,计算机根据周期来区分指令和数据,因此数据是从存储器读取而非在指令中给出,因此C项是错误的。
2下列有关处理器时钟脉冲信号的叙述中,错误的是( )。
[2019年408统考]A.时钟脉冲信号由机器脉冲源发出的脉冲信号经整形和分频后形成B.时钟脉冲信号的宽度称为时钟周期,时钟周期的倒数为机器主频C.时钟周期以相邻状态单元间组合逻辑电路的最大延迟为基准确定D.处理器总是在每来一个时钟脉冲信号时就开始执行一条新的指令【答案】D【解析】计算机完成一条指令的时间称为指令周期,而一条指令通常是由几个时钟周期组成的,因此计算机不可能每来一个时钟脉冲就执行一个新指令,所以D项是错误的。
3某指令功能为R[r2]←R[r1]+M[R[r0]],其两个源操作数分别采用寄存器、寄存器间接寻址方式。
对于下列给定部件,该指令在取数及执行过程中需要用到的是( )。
[2019年408统考]Ⅰ.通用寄存器组(GPRs)Ⅱ.算术逻辑单元(ALU)Ⅲ.存储器(Memory)Ⅳ.指令译码器(ID)A.仅Ⅰ、ⅡB.仅Ⅰ、Ⅱ、ⅢC.仅Ⅱ、Ⅲ、ⅣD.仅Ⅰ、Ⅲ、Ⅳ【答案】B一条指令的执行过程为取指令、分析指令、执行指令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章指令系统
4.1知识要点总结
一、指令格式
1.指令的基本格式
(1)指令:又称机器指令,是计算机要执行某种操作的命令,可完成一个独立的算术运算或逻辑运算。
一台计算机的所有指令集合称为该机的指令系统或为指令集。
指令系统是衡量计算机性能的主要标志之一。
(2)指令格式:指令是用二进制代码表示,一般分为操作码与地址码两部分。
操作码表征指令的操作特性与功能,地址码通常给出操作数的地址。
计算机的每条指令都有一个操作码,其表示指令应该完成什么样的操作。
不同的操作码不同的编码,一种编码代表一种指令。
操作码的长度取决于指令系统的规模。
地址码用于给出被操作的信息(指令或数据)的地址,包括参加运算的一个或多个操作数所在的地址、运算结果的保存地址、程序的转移地址、被调用的子程序的入口地址等。
(3)指令的分类
根据地址码的个数可以将指令分为以下几种:
①零地址指令:只有一个操作码,没有地址码。
例如停机指令。
②一地址指令:有一个地址码,例如自加指令,跳转指令。
③二地址指令:有两个地址码,分别表示目的操作数与源操作数地址,其中目的操作数
地址存放本次结果。
④三地址指令:有三个地址码,分别表示两个操作数地址最后给出本次结果的存放地址。
⑤四地址指令:有四个地址码,在三地址指令的基础上,给出了下一条指令的地址。
指令的长度是指一条指令中所包含的二进制代码的位数。
指令字长取决于操作码的长度、操作数地址码的长度和操作数地址的个数。
指令长度与机器字长没有固定的关系。
通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
在一个指令系统中,如果所有指令的长度都是相等的,称为定长指令字结构。
若各种指令的长度随指令功能而异,就称为变长指令宇结构。
但因为主存一般是按字节编址,所以指令字长多为字节的整数倍。
定字长指令的执行速度快,控制简单,变长指令,执行效率高,但硬件设计复杂。
2.定长操作码指令格式
定长操作码是指指令的操作码位数与位置固定,一般在指令的高位选择固定位数作为操作码。
操作码长度为n的指令系统最多有2n条指令。
此格式对于简化计算机的硬件设计很有帮助,在字长较大的大中型计算机中广泛使用。
3.扩展操作码指令格式
扩展操作码:即操作码字段长度可变,且分散的放在指令字的不同字段中,在字长较短的微型机和小型机中广泛使用。
操作码长度可变使得译码与分析变得困难,增加了控制器的设计难度。
最常见的变长操作码方法是扩展操作码,使操作码的长度随地址码的减少而增加,不同地址数的指令可以具有不同长度的操作码,从而在满足需要的前提下,有效地缩短指令字长。
扩展操作码指令设计的两条准则:
(1)不允许短码是长码的前缀,即短操作码不能与长操作码的前面部分的代码相同。
(2)各指令的操作码一定不能重复。
通常情况下,对使用频率较高的指令,分配较短的操作码;对使用频率较低的指令,分配较长的操作码,从而尽可能减少指令译码和分析的时间。
【例】某计算机指令字长为16位,指令有双操作数、单操作数和无操作数3种格式,每个操作数字段均有6位二进制表示,该指令系统共有m条(m<16)双操作数指令,并存在无操作数指令。
若采用扩展操作码技术,那么最多还可设计出单操作数指令的条数是A.26
B.(23-m)×26-1
C.(23-m)×26
D.(23-m)×(26-1)
【答案】B
【解析】双操作数指令操作码字段占4位,单操作数指令操作码字段占10位,无操作数指令操作码字段占16位。
现指令系统中有m条双操作数指令,则给单操作数和无操作数指令留下了(24-m)个扩展窗口。
因为存在着无操作数指令,所以单操作数指令必须要给无操作数指令留下一个扩展窗口,最终最多可以设计出单操作数指令的数目为(24-m)×26-1。
二、指令的寻址方式
1.有效地址的概念
指令中的地址码字段并不一定是操作数的真实地址(这个地址被称为形式地址A),用形式地址按照某种寻址方式,计算出操作数在存储器中的真实地址,称为有效地(EA)。
2.数据寻址和指令寻址
寻址方式分为:数据寻址与指令寻址两大类。
所谓指令寻址就是需找下一条要执行指令的地址,数据寻址即寻找指令中操作数的地址。
前者比较简单,后者相对复杂些。
(1)指令寻址:指令寻址方式有两种,一种是顺序寻址方式;另一种是跳跃寻址方式。
①顺序寻址:指令地址由程序计数器给出,通过PC的自加操作自动形成下一条指令的的地址。
②跳跃寻址:指下条指令的地址码不是由程序计数器给出,而是由本条指令给出,例如转移指令。
(2)数据寻址:所谓数据寻址就是形成有效操作数地址的方法。
数据寻址方式很多,也比较复杂,在指令中,一般使用寻址方式标记位来区分数据寻址方式,其一般格式如下
3.常见寻址方式
(1)隐含寻址:这类型的指令,不明显的给出操作数的地址,而是直接隐含在指令中。
例如对于单地址指令而言,并没有明显的给出第二操作数的地址,而是使用累加器作为第二操作数地址,因此累加器ACC对于单地址指令而言是隐含地址。
隐含寻址有利于缩短指令长度,但是要增加硬件。
(2)立即(数)寻址:这类型的指令,在操作码字段直接给出操作数本身,数据采用补码存放。
立即数寻址在数据访问阶段不需要访问内存,因此可以加快指令执行速度,但是
由于位数有限,限制了操作数的范围。
(3)直接寻址:在指令的地址码中直接给出操作数的地址,即EA=A。
直接寻址的优点是简单,指令在执行阶段仅访问一次主存,不需要专门计算操作数的地址;缺点是A的位数决定了该指令操作数的寻址范围,操作数的地址不易修改。
(4)间接寻址:地址码字段的给出的不是操作数的真正地址,而是操作数地址的地址,即EA=(A),其寻址方式可以表示如下:
图4-1间接寻址
间接寻址可以是一次间接寻址也可以是多次间接寻址,当使用多次间址时,需要在主存中设置间址标记位,用来标记间址次数。
当标记位为0时,表示取到有效地址,否则继续间址。
间接寻址扩大了寻址范围,便于编程,但是在指令执行时需要多次访问内存,一次间址需要访问两次内存,多次间址,访存次数根据间址次数确定,例如二次间址访存三次。
(5)寄存器寻址:指令执行过程中的操作数来源于寄存器,指令的地址码直接给出操作数所在寄存器的地址,EA=R i。
寄存器寻址,指令执行过程中不会访存,指令字短执行速度快,但是不利于编译优化,硬件复杂。
(6)寄存器间接寻址:在寄存器中给出的不是一个操作数,而是操作数的地址,此时可以利用这一地址去读写某一存储单元,即EA=(R i)。
使用此种方式指令寻址阶段需要访问主存。
图4-2寄存器寻址(左直接寻址)(右间接寻址)
(7)相对寻址:是将程序计数器(PC)的内容加上指令格式中的形式地址而给出操作数的实际地址,即EA=(PC)+A,A为相对于当前指令地址的偏移量。
在此寻址方式中,操作数地址随着PC的值变化而变化,十分有利于程序浮动,转移指令广泛采用此寻址方式。
对于转移指令JMPA,当CPU从存储器中取出一个字节时,会自动执行(PC)+1→PC。
若转移指令的地址为X,且占2个字节,在取出该指令后,PC的值会增2,即(PC)=X+2,这样在执行完该指令后,会自动跳转到X+2+A的地址继续执行。
图4-3相对寻址。