目录
选择题
A
按照冯 诺依曼的设计思想,计算机的硬件系统包含运算器、存储器、输入设备和控制器,输出设备
D
单级中断系统中,中断服务程序内的执行顺序是l.保护现场 II.开中断 III.关中断 IV.保存断点 V.中断事件处理 VI.恢复现场 VII.中断返回I->V->VI->II->VII
F
Float型数据通常用IEEE754单精度浮点数格式表示。若编译器将float型变量x分配在个32位浮点寄存器FR1中,且-8.25,则FRI的内容是 ()C1040000H
冯·诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU区分它们的依据是指令周期的不同阶段
浮点数加、减运算过程一般包括多个步骤,下列说法中,那个是错误描述。发生溢出
G
关于指令系统基本概念的说法中,其中错误的是()CISC和RISC采用同样的架构
J
计算机硬件能够直接执行的是机器语言程序
加速CPU运行速度下列说法错误的是减少cache
假定一台计算机的显示存诸器用DRAM芯片实现,若要求显示分辨率为1600x1200,颜色深度为24位频为85 H,显存总带宽的50%用来刷新屏幕,则需要的显存总带宽至少约为7834Mbps
假设某计算机的存储器系统由Cache和主存组成。某程序执行过程中访存100次,其中访问Cache缺失(未命中)50次,则Cache的命中率是 C、50%
假定用若干个2 K×4位的芯片组成一个8 K×4位的存储器,则需要几片芯片才能构成目标存储器?4
假定有4个整数用8位补码分别表示为r1=FEH,r2=F2H,r3=90H,r4=F8H。若将运算结果存放在一个8位寄存器中,则下列运算会发生溢出的是r2×r3
假设某计算机的存储器系统由Cache和主存组成。某程序执行过程中访存1000次,其中访问Cache缺失(未命中)50次,则Cache的命中率是95%
假设某系统总线在一个总线周期中并行传送4字节信息,一个总线周期占用2个时钟周期,总线时钟频率为10 MHz,则总线带宽是 20Mb/s
K
考虑以下C语言代码: unsigned short usi=65535; short si=usi; 执行上述程序段后, si的值是-1
M
某计算机的Cache共有16块,采用2路组相联映射方式(即每组2块)。每个主存块大小为32字节,按字节编址。主存129号单元所在主存块应装入到的Cache组号是4
某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为9ns、8ns、7ns和6 ns,则该计算机的CPU时钟周期至少是9
某计算机主存容量为64 KB,其中ROM区为4 KB,其余为RAM区,按字节编址。现要用2 Kx8位的ROM芯片和4 Kx4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是2、30
某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址。先要用2K×*8位的ROM芯片和4K×*4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片书和RAM芯片数分别是2、30
某计算机主存容量为64KB,其中ROM区为8KB,其余为RAM区,按字节编址。先要用2Kx*8位的ROM芯片来设计该存储器的ROM存储器,则需要上述规格的ROM芯片书是4
T
提高CPU时钟频率Il.优化数据通路结构Il.对程序进行编译优化 I、II和III
X
下列各类存储器中,不采用随机存取方式的是 ()CDROM
下列关于RISC的叙述中,错误的是RISC普遍采用微程序控制器
下列关于冯·诺依曼结构计算机基本思想的叙述中,错误的是指令按地址访问,数据都在指令中直接给出
下列各类存储器中,不采用随机存取方式的是()B、CDROM
下列存储器中,在工作期间需要周期性刷新的是( A、SDRAM
下列关于计算机指令系统层次的说法中,错误的是()软件设计的基础
下列关于指令系统基本概念的说法中,错误的是()系列机的指令不能兼容
下列寄存器中,汇编语言程序员可见的是通用寄存器
下列命中组合情况中,一次访存过程中不可能发生的是TLB命中、Cache命中、Page未命中
下列选项中,描述浮点数操作速度指标的是MFLOPS
下列选项中,能缩短程序执行时间的措施是提高CPU时钟频率
下列选项中的英文缩写均为总线标准的是DISA、EISA、PCI、PCI-Express
下列有关RAM和ROM的叙述中,正确的是I.RAM是易失性存储器,ROM是非易失性存储器II.RAM和ROM都采用随机存取方式进行信息访问仅I和II
相对于微程序控制器,硬布线控制器的特点是指令执行速度快,指令功能的修改和扩展难
Y
一个C语言程序在一台32位机器上运行。程序中定义了三个变量x、y和z,其中x和z为int型,y为short型。当x = 127,y = -9时,执行赋值语句z = x+y后,x、y和z的值分别是A、x = 0000007FH,y = FFF7H,z = 00000076H
由3个“1”和5个"0”组成的8位二进制补码,能表示的最小整数是-125
R
如图所示的数据传送方式,属于传送。并行
如图所示的数据传送方式,属于传送串行
填空题
B
补码加法运算公式的一般形式为:[X]补+[Y]补=——。[X+Y]补
C
CPU在执行程序期间会对cache进行大量的读写操作外,也会对cache进行写操作,常见的写策略主要有——和——两种。写回,写直达
采用指令cache与数据cache分离的主要目的是()减少指令流水线资源冲突
F
浮点数加、减运算过程一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤,设浮点数的阶码和尾数均采用补码表示 且位数分别为5位和7位(均含2位符号位)。若有两个数X=2^7*29/32,Y = 2^5*5/8,则用浮点加法计算X+Y的最终结果发生溢出
M
某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是D,2008H
某计算机主频为1.2GHz,其指令分为4类,它们在基准程序中所占比例及CPI如表所示。指令类型 所占比例 CPI 指令类型 所占比例 CPI
A 50% 2 C 10% 4 B 20% 3 D 20% 5该机的MIPS数是——。400
某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为90 ns、80 ns、70 ns和60 ns,则该计算机的CPU时钟周期至少是90 ns
S
数据校验中,设数据位为k, 校验位的位数为r,校验码长度为n,则n=k+r<=2^r-1。基于此原理,用海明码对长度为8位的数据进行检错和纠错时,若能纠正-位错,则校验位数至少为的值为()4
W
为解决CPU与存储器之间的速度无法匹配的问题,下列说法中错误的是()减少cache
X
下列选项中,能引起外部中断的事件是C、键盘输入
下列有关补码减法运算公式说法,其中错误的是()[x-y]补=[x]补-[-y]补
Y
有如下C语言程序段:short si=-32767:unsigned short usi=si;执行上还网东语句后,usi的值为——。32769
Z
在计算机指令系统中,PC指的是——。指令计数器
指令寻址可以分为顺序寻址和——。随机寻址
全加器的进位信号C和S和数信号产生的时间延迟与具体的硬件电路有关,根据下图所示全加器逻辑框图,请写出其进位信号C的时间延迟——,以及和数信号S的时间延迟——。2T,6T
判断题
取指令,将机器指令译码并生成执行部件所需的控制信号序列 ,控制信号按序送至各执行部件控点,引起逻辑门开闭,建立正确的数据通路,从而完成指令功能。对
总线事务:总线上主从设备之间的一次信息交换过程。一个总线周期中发生的一系列活动: 请求阶段、寻址阶段、传输阶段、结束阶段。典型事务:存储器读,存储器写,I/O读,I/O写,中断响应,DMA响应。对
RAM和ROM都采用水机存取方式进行信息访问。错
n位串行假发电路中和数的逻辑表达式如下:Si=Xi⊕Yi⊕Ci对
n位串行假发电路中进位输出的逻辑表达式如下(注意,i,i+1均是下标):Ci+1=XiYi+(Xi⊕Yi)Ci对
RAM和ROM都可用作cache。错
RAM和ROM都需要进行刷新。错
RAM是易失性存储器,ROM是非易失性存储器。对
RISC中的大多数指令在一个时钟周期内完成。对
TLB命中,cache命中,Page未命中。错
TLB未命中,cache命中,Page命中。对
共享通路 (总线型)主要部件都连接在公共总线上,各部件间通过总线进行数据传输结构简单,实现容易,但并发性较差,需分时使用总线,效率低。对
简答题
F
浮点数的表示范围和精度分别由什么决定?
答:浮点数的表示范围和精度取决于计算机硬件的浮点数格式,通常是由符号位、指数位和尾数位组成的。浮点数的表示范围由指数的范围决定,而精度则由尾数位的位数决定。
J
计算机体系结构决定了其运行过程中存在时间和空间的局部性,请简要解释一下什么是局部性原理?
答:局部性原理是基于计算机程序执行的规律性,通过利用时间局部性和空间局部性来优化内存访问,提高计算机系统的性能。
时间局部性:是指当某个数据或指令被访问后,在不久的将来很可能再次被访问。
空间局部性:是指在访问某个数据或指令时,其附近的数据或指令也很可能会在近期被访问。
计算机系统中采用层次化存储体系结构的目的是什么?
答:采用层次化存储体系的目的包括两方面 : 其一是解决快速的 CPU和慢速的主存之间的速度差异 ; 其二是解决主存容量不够大的问题 .存储系统的分级结构由 Cache、主存和辅助存储器三级结构构成。其理论基础是时间局部性原理和空间局部性原理, Cache—主存存储层次解决了主存速度不快的问题;而主存 - 辅存存储层次解决了主存容量不足的问题。
计算机中,针对数值的表示,在其发展过程中,出现了诸如原码、反码、补码等表示方法,请简要说明以上三种编码方式的原理和区别。
答:原码、反码和补码都是用来表示有符号整数的编码方式。其中,原码最高位为符号位,0表示正数,1表示负数;反码与原码类似,但负数的表示方式不同,即对其原码取反(包括符号位);补码也类似于反码,但负数的表示更为简便,即其反码加1。在补码中,加减法计算简单,并避免了溢出问题,因此通常使用补码来表示有符号整数。
计算机中有很多不同类型的存储器,有高速的、低速的,这些设备按照存储器层次划分,请简要说明计算机体系结构中存储器的层次划分和分类
答:计算机体系结构中存储器的层次划分被称为"存储器层次结构",包括寄存器、高速缓存、主存、辅助存储器和远程文件服务器等几个层次。按照存储介质、存储方式、访问方式等多种方法可以对存储器进行分类。
假定某程序访问7块信息,cache分为4行,采用全相联方式组织,程序访问的块地址流依次为1,2,3,2,1,3,1,4,4,5,6,7,5,6,7,5。分析LRU算法的访问过程,并计算命中率。
编号 | 当前块地址 | cache状态 | 命中/缺失 |
1 | 1 | 1 | M |
2 | 2 | 12 | M |
3 | 3 | 123 | M |
4 | 2 | 132 | H |
5 | 1 | 321 | H |
6 | 3 | 213 | H |
7 | 1 | 231 | H |
8 | 4 | 2314 | M |
9 | 4 | 2314 | H |
10 | 5 | 3145 | M |
11 | 6 | 1456 | M |
12 | 7 | 4567 | M |
13 | 5 | 4675 | H |
14 | 6 | 4756 | H |
15 | 7 | 4567 | H |
16 | 5 | 4675 | H |
答:命中9次,缺失7次,命中率为9/16 = 0.5625
简述CRC校验码的检错原理,CRC能纠错吗?
答:CRC(循环冗余校验)校验码是一种用于检测数据传输中错误的技术。它利用多项式除法的原理,在发送数据之前,通过计算生成一个校验码,并将其添加到原始数据中一起传输。接收方在接收数据后,再次进行多项式除法运算来验证数据的正确性。如果除法运算的余数为零,则表示数据没有发生错误;否则,就说明数据发生了错误。虽然CRC能够检测出错误的存在,但无法确定具体的错误位置和内容,因此它不能纠正错误,只能告知数据是否正确。
M
某计算机的CPU主频为500 MHz,CPI 为5(即执行每条指令平均需5个时钟周期)。假定某外设的数据传输率为0.5 MB/s,采用中断方式与主机进行数据传送,以32位为传输单位,对应的中断服务程序包含18条指令,中断服务的其它开销相当于2条指令的执行时间。请回答下列问题,要求给出计算过程。
答:(1)外设数据传输率为0.5MB,传输单位为32位即4B。在中断方式下,CPU每次用于数据传输的时钟周期为5*(18+2)= 100。为达到外设0.5MB/s的数据传输率,外设每秒申请中断次数为0.5MB/4B=125000。一秒内用于中断的开销为100*125000=125M个时钟周期,CPU用于该外设I/O的时间占整个CPU时间的12.5M/500M=2.5%
(2)当该外设的数据传输率达到5MB/s时改用DMA方式传输数据。每次DMA传输块大小为5000B,则一秒内需产生DMA的次数500MB/5000B = 1000。CPU用于DMA处理的总开销为1000*500 = 0.5M个时钟周期,CPU用于该外设1/0的时间占整个CPU时间的0.5M/500M=0.1%
某计算机的主存地址空间大小为256 MB,按字节编址。指令Cache和数据Cache分离,均有8个Cache行,每个Cache行大小为64 B,数据Cache采用直接映射方式。现有两个功能相同的程序A和B,其伪代码如下所示:
答:(1)cache的总容量 = cache行X每cache行的大小= 8X(64+20/8)B = 532B
(2)数组元素a[0][31]对应的cache行号为(320+0X32+31X4)/64=6;a[1][1]对应的cache 行号为320+256X4+1X4)/64%8=5
(3)数组A按行进行优先存放数据cache正好放下数据组半行中的全部数据,每个字块中头一个字块不会命中,但接下来的15个字都会命中,程序A命中率是15/16=93.75%程序B 每次都不会命中,命中率为0。因此程序A比程序B执行的时间更短。
某计算机字长16位采用16定长指字结构部分数通路结构如下图所示(见下页,图中有控制信号为1时表示有效、为0时表示无效 控制信号MDRinE为1表示允许数据从DB打入MDR,MDRin为1表允许数内总打入MDR,假设MAR的输出一直处于态,加法指令“ADD (R1),R0”的功能为R0+((R1))®(R1),即将R0的数据与R1的内容所指主存单元的数据相加,并将结果送入R1的内容所指主存单元中保存。下表给出了上述指令取指和译码阶段每个节拍(时钟周期)的功和有效控制信号,请按表中描述方式用表格列出指今执行阶段每个节拍的功能和有效控制信号.
解:执行阶段每个节拍(时钟周期)的功能和有效控制信号见下表。
时钟 | 功能 | 有效控制信号 |
C5 | MAR←(R1) | R1out,MARin |
C6 | MDR←M(MAR) | MemR,MDRinE |
C7 | A←(MDR) | MDRout,Ain |
C8 | AC←(Ro)+(A) | Roout,Add,ACin |
C9 | MDR←(AC) | ACout,MDRin |
c10 | M←(MDR) | MDRoutE,MemW |
N
内存和cache之间数据交换时,主存地址空间映射到cache地址空间有很多种映射方式,请解释什么是组相联映射。
答案二选一
答:组相联映射是一种主存地址空间到cache地址空间的映射方式,其中cache被分为多个组,每个组包含多个缓存行。数据块会根据其地址计算出所属的缓存组,并在该组中查找是否已有该数据块的副本。如果已存在,则称该副本位于该组的一行中,并且该行是与其它行相联的;否则,就需要从主存中读取该数据块并将其保存至该组的一行中。这种方式可以减少cache中不同地址之间的冲突,提高cache的利用率和访问效率。
答:组相联映射是一种缓存映射方式,将主存地址空间划分为多个块,并按照一定规则将这些块映射到缓存的不同组中的某一行。每个块可以映射到多个组中的某一行,提供了较高的缓存命中率和更好的灵活性。
R
如下图所示,计算机指令的操作数寻址方式多样,请简要说明这些操作数寻址方式之间的区别.
答:操作数寻址方式是计算机中用于确定执行指令所需要的操作数的方式,主要分为以下几种:
1.立即寻址:操作数被存储在指令中,可以直接读取。
2.直接寻址:操作数存储在内存中的一个确定地址。
3.间接寻址:操作数是一个内存地址,需要通过该地址读取实际的值。
4.寄存器寻址:操作数保存在寄存器中。
5寄存器间接寻址:操作数是一个寄存器中存储的地址,需要读取该地址中的值
6.相对寻址:操作数是当前指令地址加上一个常量所得到的地址,可以用于实现跳转指令
7.变址寻址:操作数是变址寄存器的内容与指令地址码部分给出的地址相加得到的地址。
不同的操作数寻址方式对于指令执行的效率、灵活性以及程序设计和开发的方便程度都有影响,因此在选择和使用指令时需要根据具体需求进行选择。
S
设x=-0.1010,y=-0.0101,根据补码加法运算公式,求[X+Y]补。
答:[x]原 = 1.1010 [x]反 = 1.0101 [x]补 = 1.0110
[y]原 = 1.0101 [y]反 = 1.1010 [y]补 = 1.1011
[x+y]补=[x]补+[y]补=1.0001
T
替换算法有哪几种?它们各有何优缺点?
答:最近最少使用算法:选择最近最久未使用的块进行替换。优点是可以利用程序的局部性原理,缓存最有可能被频繁访问的块。优点:失效率低。缺点:需要维护一个时间戳或者计数器来记录块的使用,需要较大的硬件开销。算法复杂,硬件实现比较困难。
先进先出算法:选择最早进入cache的块进行替换优点:实现简单,没有时间戳或计数器等额外状态需要维护。缺点:不考虑块的访问频率,可能存在“冷热分布不均”的情况。
随机算法:随机选择一个块进行替换。优点:实现简单,没有过多的状态需要维护。缺点:无法利用城西的局部性原理,可能导致较低的命中率
最不经常使用算法:选择访问次数最少的块进行替换优点:可以有效处理“冷热分布不均”问题。缺点:需要维护每个块访问次数信息,需要较大的硬件开销
W
为什么说cache对程序员是透明的?
答:程序员编写程序通常是针对操作系统的API和硬件架构的,而不需要考虑cache,因为cache是在硬件层面上实现的,所以对程序员来说是透明的,他们不需要直接与cache交换或操作。
X
信息时代离不开计算机,计算机体系结构是设计复杂、功能强大的软硬件结合体,在硬件基础之上,需要操作系统软件、应用程序软件 数据库软件等,请结合意一门高级语言,比C语言、Python语言,具体解释一下其翻译过程,执行过程,高级语言首先被翻译为汇编语言,汇编语言又要被解释为二进制,经过一系列的翻译过程,最终转换为机器的够直接执行的机器代码,请具体解释。
像C/C++这样的高级语言写出的程序,被翻译的过程可分为四个阶段1.预处理阶段:预处理器根据以字符#开头的预处理命令,修改原始文件,得到一个以.i为扩展名的文本文件。2.编译阶段:编译器将以.i为扩展名的文件翻译成以.s为扩展名的文本文件,它包含了一个汇编语言程序。3.汇编阶段:汇编器将.s为扩展名的文件翻译成机器语言指令,并把这些指令打包成可重定位目标程序的格式,将其结果保存在以.o为扩展名的二进制文件中。4.链接阶段:链接器负责将各个相关联的目标文件(.o文件)合并,得到一个可执行的二进制文件。
Y
已知数的补码表示形式,求数的真值。[x]补=0.10010, [x]补=1.10010,x]补=1.11111, [x]补=1.00000,[x]补=0.10001,x]补=1.00001。
[x]补 = 0.10010 [x]原 = 0.10010 x = 010010
[x]补 = 1.10010 [x]原 = 1.01101 x = 101101
[x]补 = 1.11111 [x]原 = 1.00000 x = 100000
[x]补 = 1.00000 [x]原 = 1.11111 x = 111111
[x]补 = 0.10001 [x]原 = 0.10001 x = 010001
[x]补 = 1.00001[x]原 = 1.11110 x = 111110
用IEEE754 32位单精度浮点数标准表示下列十进制数。3.1415927
转换为二进制1 1.001 0010 0001 1111 1011 0101
移动小数点1. 1001 0010 0001 1111 1011 0101
得S=0,
e=1,
E=1000 0000,
M=1001 0010 0001 1111 1011 0101
最后表示为1000 0000 1001 0010 0001 1111 1011 0101
用IEEE754 32位单精度浮点数标准表示下列十进制数。64000
转换为二进制1111 1010 0000 0000
移动小数点1.111 1010 0000 0000
得S=0,
e=15,
E=1000 1110,
M=111 1010 0000 0000 0000 0000
最后表示为0100 0111 0111 1010 0000 0000 0000 0000