【例·选择题】【模拟题】下列叙述中, 错误 的是( )。
A.计算机系统由硬件系统和软件系统组成
B.计算机软件由各类应用软件组成
C.CPU主要由运算器和控制器组成
D.计算机主要由CPU和主存储器组成
【解析】 本题主要考查计算机系统的基本组成。
计算机系统由硬件和软件两大部分组成。从硬件角度看,现代计算机主要由三大部分组成:中央处理器(Central Processing Unit,CPU)、输入/输出(Input/Output,I/O)设备及主存储器(Main Memory,MM)。CPU与主存储器组合起来又可称为主机,I/O设备又可称为外部设备或外围设备(简称外设),其中CPU主要由运算器和控制器组成。软件由人们事先编制的具有各类特殊功能的程序组成。计算机的软件通常可以分为两大类:系统软件和应用软件。系统软件又称为系统程序,主要用来管理整个计算机系统、监视服务,使系统资源得到合理调度,使计算机系统高效运行;应用软件又称为应用程序,是用户根据任务需求所编制的各种程序,如科学计算程序、数据处理程序、过程控制程序、事务管理程序等。题目中的B选项表述不全面,因此错误。
【答案】 B
【例·选择题】【重庆理工大学-2013】在主机中能对指令进行译码的器件是( )。
A.MAR
B.ALU
C.控制器
D.MDR
【解析】 本题主要考查控制器的基本功能。
在现代计算机中,CPU主要包括运算器和控制器两大部分,此外还包括寄存器和中断系统。对冯·诺依曼结构计算机(简称冯·诺依曼机)而言,程序一旦进入存储器,就可由计算机自动完成取指令和执行指令的任务。控制器就是专用于完成此项任务的,它负责协调并控制计算机各部件执行程序的指令序列,其基本功能是取指令、分析指令和执行指令。
A选项,MAR(Memory Address Register,存储器地址寄存器)属于CPU内部寄存器,用于存放即将被访问的存储单元的地址。B选项,ALU(Arithmetic and Logic Unit,算术逻辑部件)是用于存放操作数的寄存器和实现算术运算和逻辑运算的部件。C选项,控制器用来解释存储器中的指令,并发出各种操作命令来执行指令,在解释指令的过程中需要进行指令译码,分析确定出该条指令是用来执行什么操作以及操作内容所在的地址。因此,C选项符合题意。D选项,MDR(Memory Data Register,存储器数据寄存器)属于CPU内部寄存器,用于存放欲存入存储器中的数据或最近从存储器中读出的数据。
【答案】 C
【例·选择题】【重庆大学-2016】假设某个程序执行耗时为100秒,其中80秒用于乘法运算,以下说法正确的是( )。
A.可通过改进乘法运算部件,将程序的运行速度提高5倍
B.可通过改进乘法运算部件,将程序运行时间降低为10秒
C.不可能通过只改进乘法运算部件,将程序运行速度提高5倍
D.不可能通过只改进乘法运算部件,将程序运行速度提高3倍
【解析】 本题主要考查计算机运行速度与运算器的关系。
在计算机中,程序最终会被转换成一条条机器指令,然后由CPU内部的控制器自动完成取指令和执行指令的任务。若涉及相关操作数的存取或算术运算和逻辑运算的实现,则由运算器进行相应的处理。因此,运算部件的改进和优化只能提高运算部分的效率,而提高计算机运算速度,其核心还在于对指令的处理。
根据题意,某个程序执行的时间为100秒,其中80秒用于乘法运算,则有20秒为剩余的程序执行时间。无论乘法运算部件如何优化,也需要不少于20秒的时间用于程序的执行,因此不可能将程序运行的速度提高5倍,但可以接近5倍,即通过改进乘法运算部件,使乘法运算所耗费时长趋于0秒,则该程序的执行时间就趋于20秒。
A选项和C选项说法相反,根据上述分析,C选项说法正确;B选项,无法将程序的运行时间降至10秒,因此错误;D选项,根据上述分析,程序运行速度可提高的倍数范围是1~5倍(近5倍),因此将程序运行速度提高3倍是可能的,所以D选项的说法错误。
不可能通过只改进乘法运算部件,将程序运行速度提高5倍。这可以从阿姆达尔定律推导出来,该定律指出,系统的加速比受限于无法改进的任务的比例。在本题中,无法改进的任务的比例是20%(用于非乘法运算的比例)。因此,通过改进乘法运算部件能够达到的最大加速比是1/(0.2 + 0.8/ S ),其中 S 是乘法运算部件的加速因子。如果想要将程序的运行速度提高5倍,则需要在方程5 = 1/(0.2 + 0.8/ S )中求解 S ,得到 S 为无穷大。这意味着乘法运算部件需要比以前快无限倍,这是不切实际的。因此,不可能通过只改进乘法运算部件达到这个目标。
本题涉及两个解题技巧,一个是A选项和C选项表述相反,当选择题出现这样的选项时,答案一般在这两个选项中产生;另一个是4个选项中,只有B选项出现了具体的数值表达,这样的选项往往是错误的。
【答案】 C
【例1·选择题】【全国统考-2018】冯·诺依曼结构计算机中数据采用二进制编码表示,其主要原因是( )。
Ⅰ.二进制的运算规则简单
Ⅱ.制造两个稳态的物理器件较容易
Ⅲ.便于用逻辑门电路实现算术运算
A.Ⅰ、Ⅱ
B.Ⅰ、Ⅲ
C.Ⅱ、Ⅲ
D.Ⅰ、Ⅱ和Ⅲ
【解析】 本题主要考查二进制编码的优点。
在冯·诺依曼机中,指令和数据均以二进制形式存储在存储器中。
采用二进制作为数据编码的原因有技术实现简单、适合逻辑运算、简化运算规则等。
对于Ⅰ,由于二进制只有0和1两个数值表示,因此运算较简单,也简化了运算规则。
对于Ⅱ,考虑到物理器件传输时候的损耗,二进制只需要2种状态的电平,比使用10种状态的电平更加准确,更加容易实现,不容易出错。
对于Ⅲ,由于逻辑门电路的输入和输出都是0和1,使用逻辑门电路实现二进制非常方便。
因此,Ⅰ、Ⅱ和Ⅲ均是冯·诺依曼机中数据采用二进制编码表示的主要原因,D选项正确。
【答案】 D
【例2·选择题】【全国统考-2019】下列关于冯·诺依曼结构计算机基本思想的叙述中,错误的是( )。
A.程序的功能都通过中央处理器执行实现
B.指令和数据都用二进制表示,形式上无差别
C.指令按地址访问,数据都在指令中直接给出
D.程序执行前,指令和数据需预先存放在存储器中
【解析】 本题主要考查冯·诺依曼机的特点。
冯·诺依曼机的特点如下。
(1)冯·诺依曼机由运算器、存储器、控制器、输入设备和输出设备五大部件组成。
(2)指令和数据以同等地位存放于存储器内,并可按地址寻访。
(3)指令和数据均用二进制表示。
(4)指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
(5)指令在存储器内按顺序存放。通常,指令是按顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
(6)冯·诺依曼机以运算器为中心,输入/输出设备与存储器间的数据传输通过运算器完成。
中央处理器(CPU)主要由控制器和运算器组成,其中控制器负责取指令和执行指令,运算器负责相关运算,因此程序的功能都由CPU执行实现,A选项叙述正确。根据上述分析,B选项叙述正确。“指令按地址访问”的表述正确,但是“数据都在指令中直接给出”的表述错误。现代计算机中,数据可以在指令中直接给出,也可以存放在存储器或CPU内部的寄存器中,而在冯·诺依曼机中,数据和指令以同等地位存放于存储器中,因此C选项叙述错误。根据上述分析,D选项叙述正确。
【答案】 C
【例3·选择题】【北京邮电大学-2016】下图为冯·诺依曼架构,该架构的计算机的特点是( )。
Ⅰ.采用二进制
Ⅱ.存储程序
Ⅲ.控制流驱动方式
Ⅳ.数据流驱动方式
A.Ⅰ,Ⅱ
B.Ⅰ,Ⅱ,Ⅲ
C.Ⅰ,Ⅱ,Ⅳ
D.Ⅰ,Ⅱ,Ⅲ,Ⅳ
【解析】 本题主要考查冯·诺依曼机的特点。
根据冯·诺依曼机的特点,计算机中的指令和数据均用二进制表示,Ⅰ正确。对于Ⅱ,“存储程序”是将根据特定问题编写的程序存放在计算机存储器中,然后按存储器中存储程序的首地址执行程序的第一条指令,以后就按照该程序的规定顺序执行其他指令,直至程序结束执行。“存储程序”是一种思想,由冯·诺依曼提出,也是现代计算机的理论基础,因此Ⅱ正确。Ⅲ、Ⅳ是一对相对的描述,在计算机体系架构中,通常有两种驱动方式,一种是控制流驱动方式,即指令控制数据,执行指令即可进行相关操作,冯·诺依曼机就采用这种方式,但并不是所有的计算机都采用这种方式;另一种是数据流驱动方式。因此Ⅲ正确。
本题的解题核心在于理解冯·诺依曼机特点的本质思想,冯·诺依曼机的本质思想就是将程序转换成一条条机器指令和数据,指令和数据都存储在存储器中,这便体现了其“存储程序”的思想,通俗的理解,就是把程序存储起来;再者就是指令和数据之间的关系,通过指令可以完成对数据的存取操作,因此这是一种控制流驱动方式。
本题应关注一个解题技巧,通过4个选项的对比,发现Ⅰ、Ⅱ均被包含,而Ⅲ、Ⅳ都在描述驱动方式,从出题者的角度,Ⅰ和Ⅱ中、Ⅲ和Ⅳ中至少应有一个是正确的,因此答案在B选项和C选项中。该技巧可以迅速定位到选项,提高考生对选择题的答题效率。
本题存在陷阱,题中给出的图是冯·诺依曼机的硬件框架,图中标注的“数据信号”和“控制信号”易误导考生,因此易错选D选项。实际上,图中标注的“数据信号”和“控制信号”表示的是各个部件之间的数据关系和控制关系,与驱动方式无关。
【答案】 B