1.2 选择题
(1)[2018] 冯·诺依曼结构计算机中数据采用二进制编码表示,其主要原因是 _______。
Ⅰ.二进制运算规则简单
Ⅱ.制造两个稳态的物理器件较为容易
Ⅲ.便于逻辑门电路实现算术运算
A.仅Ⅰ、Ⅱ
B.仅Ⅰ、Ⅲ
C.仅Ⅱ、Ⅲ
D.Ⅰ、Ⅱ、Ⅲ
答案:D
解析: 二进制只有0和1两种状态,运算规则比较简单,且两种状态刚好能使用高、低两种电平进行表示,所以制造两个稳态的物理器件较为容易,也便于逻辑门电路实现算术运算。
(2)[2019] 下列关于冯·诺依曼结构计算机基本思想的叙述中,错误的是 _______。
A.程序的功能都通过中央处理器执行指令实现
B.指令和数据都用二进制表示,形式上无差别
C.指令按地址访问,数据都在指令中直接给出
D.程序执行前,指令和数据需预先存放在存储器中
答案:C
解析: 冯·诺依曼结构计算机中程序的功能都通过CPU执行指令完成,选项A正确。指令和数据形式上无差别,数据可以看成指令,指令也可以看成数据,取指令阶段访存取出的是指令,执行阶段访存取出的是数据,选项B正确。指令按地址访问,数据由指令的地址码给出,并且除立即数寻址外,指令都无法直接给出数据,选项C错误。冯·诺依曼结构计算机的主要工作原理是存储程序和程序控制,在程序执行前,指令和数据需预先存放在存储器中,选项D正确。
(3)[2016] 高级语言源程序转换为机器级目标代码文件的程序称为 _______。
A.汇编程序
B.链接程序
C.编译程序
D.解释程序
答案:C
解析: 汇编程序负责将汇编代码转换为目标代码;链接程序负责将多个目标代码以及库函数链接为一个可执行目标代码文件;编译程序负责将高级语言源程序翻译成目标代码文件;解释程序负责将源程序逐条翻译成对应的机器目标代码,并立即执行,翻译一句执行一句,并且不会生成目标程序。
(4)[2015] 计算机硬件能够直接执行的是 _______。
Ⅰ.机器语言程序 Ⅱ.汇编语言程序 Ⅲ.硬件描述语言程序
A.仅Ⅰ
B.仅Ⅰ、Ⅱ
C.仅Ⅰ、Ⅲ
D.Ⅰ、Ⅱ、Ⅲ
答案:A
解析: 硬件能直接执行的只能是机器语言程序(二进制编码);汇编语言是机器语言程序的助记符表示,经过汇编后才能被执行;硬件描述语言程序是用于描述硬件电路的代码,不是可运行的程序。
(5)[2011] 下列选项中,描述浮点数操作速度指标的是 _______。
A.MIPS
B.CPI
C.IPC
D.MFLOPS
答案:D
解析: MIPS为每秒百万条指令;CPI为每条指令执行的时钟周期数;IPC是CPI的倒数;MFLOPS是描述浮点数操作速度指标。
(6)[2010] 下列选项中,能缩短程序执行时间的措施是 _______。
I.提高 CPU 时钟频率 Ⅱ.优化数据通路结构 Ⅲ.对程序进行编译优化
A.仅Ⅰ和Ⅱ
B.仅Ⅰ和Ⅲ
C.仅Ⅱ和Ⅲ
D.Ⅰ、Ⅱ、Ⅲ
答案:D
解析: CPU执行时间 = 指令条数 * CPI / 主频,所以提高CPU 时钟频率能够缩短程序执行时间;优化数据通路结构能够增加系统吞吐量,增加指令条数,缩短程序执行时间;对程序进行编译优化能够得到更优的指令序列,能够缩短程序执行时间。
(7)[2013] 某计算机主频为 1.2GHz,其指令分为 4 类,它们在基准程序中所占比例及 CPI 如表 1.7所示。
答案:C
解析: MIPS = 主频 / CPI = 1.2GHZ / (2 * 0.5 + 3 * 0.2 + 4 * 0.1 + 5 * 0.2) = 1200MHZ / 3 = 400。
(8)[2012] 假定基准程序 A 在某计算机上的运行时间为 100 秒,其中 90 秒为 CPU 时间,其余为 I/O时间。若 CPU 速度提高 50%,I/O 速度不变,则运行基准程序 A 所耗费的时间是 _______。
A.55 秒
B.60 秒
C.65 秒
D.70 秒
答案:D
解析: I/O时间 = 计算机上的运行时间 - CPU 时间 = 100 - 90 = 10s,运行基准程序 A 所耗费的时间 = 90 / 1.5 + 10 = 70s。
(9)[2014] 程序 P 在机器 M 上的执行时间是 20 秒,编译优化后,P 执行的指令数减少到原来的70%,而 CPI 增加到原来的 1.2 倍,则 P 在 M 上的执行时间是 _______。
A.8.4 秒
B.11.7 秒
C.14.0 秒
D.16.8 秒
答案:D
解析: 设时钟周期为T,指令条数为n,CPI为t,那么在编译优化前,有CPU执行时间(20s) = 指令条数 * CPI * 时钟周期 = ntT;那么在编译优化后,有CPU执行时间 = 0.7 * 指令条数 * 1.2 * CPI * 时钟周期 = 0.84ntT=0.84 * 20 = 16.8s。
(10)[2017] 假定计算机 M1 和 M2 具有相同的指令集体系结构(ISA),主频分别为 1.5GHz 和 1.2GHz。在 M1 和 M2 上运行某基准程序 P,平均 CPI 分别为 2 和 1,则程序 P 在 M1 和 M2 上运行时间的比值是_______。
A.0.4
B.0.625
C.1.6
D.2.5
答案:C
解析: 计算机 M1 和 M2 具有相同的指令集体系结构,其指令条数相同,假设为n,那么程序 P 在 M1 和 M2 上运行时间的比值为 (n * 2 / 1.5) / (n * 1 / 1.2) = 1.6。
1.5 假定某计算机 1 和计算机 2 以不同的方式实现了相同的指令集,该指令集中共有 A、B、C、D 4 类指令,它们所占的比例分别为 40%、20%、15% 和 25%。计算机 1 和计算机 2 的时钟周期分别为600MHz 和 800MHz,各类指令在两计算机上的 CPI 如表 1.8 所示。
> 答:
1.6 若某程序编译后生成的目标代码由 A、B、C、D 4 类指令组成,它们在程序中所占比例分别为40%、20%、15%、25%。已知 A、B、C、D 四类指令的 CPI 分别为 1、2、2、2。现需要对程序进行编译优化,优化后的程序中 A 类指令数量减少了一半,而其他指令数量未发生变化。假设运行该程序的计算机CPU 主频为 500MHz。回答下列各题。
(1)优化前后程序的 CPI 各为多少?
(2)优化前后程序的 MIPS 各为多少?
(3)通过上面的计算结果,你能得出什么结论?
答: