綜合測驗
计算机系统基础二期末考試
错题序号:2、18、20
1通常( D )的位数和指令位数相同或有关。
A.程序状态字寄存器PSWR
B.指令指针寄存器IP
C.指令译码器ID
D.指令寄存器IR
正确答案:D你选对了
2假定用若干个16K×1位的存储器芯片组成一个64K×8位的存储器,芯片内各单元连续编址,则地址BFF0H所在的芯片的最小地址为( C )。
A.A000H
B.4000H
C.8000H
D.6000H
正确答案:C
附录单选题
用若干片2K*4位的存储芯片组成一个8K*8位的存储器,则地址0B1FH所在的芯片在全局的最大地址是 B
A: 0CFFH
B: 0FFFH
C: 1BFFH
D: 0BFFH
3用存储容量为16K×1位的存储器芯片组成一个64K×8位的存储器,则在字方向和位方向上分别扩展了( B )倍。
A.8和4
B.4和8
C.2和4
D.4和2
正确答案:B你选对了
附录单选题
一个动态存储器芯片的容量是16K×8位, 若采用地址复用技术,则该芯片需要的地址和数据引脚至少分别为(B )。
A: 14,8
B: 7,8
C: 14,1
D: 7,1
附录单选题
某SRAM芯片,其容量为1024×4位,其地址和数据引脚的数目至少分别为(A)。
A: 10,4
B: 5,4
C: 10,8
D: 5,8
附录单选题
动态存储器刷新以 (B) 为单位进行
A: 字节
B: 行
C: 存储单元
D: 列
存储器芯片的容量是有限的,为了满足实际存储器的容量要求,需要对存储器进行扩展。
主存扩展:将存储芯片连在一起组成足够的容量
存储器容量扩展的主要方法有:
- 位扩展:只加大字长,而存储器的字数与存储器芯片字数一致,对所有片子使用共同片选信号;
- 字扩展:仅在字向扩充,而位数不变。需由片选信号来区分各片地址。
- 字位扩展:一个存储器的容量假定为M×N位,若使用l×k 位的芯片(l<M,k<N),需要在字向和位向同时进行扩展。此时共需要(M/l)×(N/k)个存储器芯 片。
位扩展、字扩展、字位扩展通常涉及到所需地址线与数据线的计算问题,先来看一个例题:
log(2,16) = 4
再看一道例题:
位扩展
例:2片1K X 4位的芯片,可以组成1K X 8位的存储器(4位→8位)
字扩展
例:2片1K X 8位的芯片,可以组成2K X 8位的存储器(1K→2K)
字位扩展
例:1K X 4位的芯片,组成4K X 8位的存储器(1K→4K,4位→8位)
4假定一个磁盘的转速为10000RPM(转/分),磁盘的平均寻道时间为15ms,平均数据传输率为4MB/s,不考虑排队等待时间。那么读一个512字节的扇区的平均存取时间大约为( C )。
A.21.125ms
B.25.625ms
C.18.125ms
D.10.625ms
正确答案:C你选对了
5相联存储器是按( D )进行寻址访问的存储器。
A.堆栈访问方式
B.队列访问方式
C.地址指定方式
D.内容指定方式
正确答案:D你选对了
6假定用作cache的SRAM的存取时间为1.5ns,用作主存的DRAM存储器的存取时间为30ns。为使平均存取时间达到2ns,则cache命中率应为( C )左右。
A.95%
B.93.3%
C.98.33%
D.99.1%
正确答案:C你选对了
7假定主存地址位数为32位,按字节编址,主存和cache之间采用2路相联映射方式,主存块大小为32B,采用回写(Write Back)方式和LRU替换策略,则能存放32KB数据的cache的总容量至少应有多少位?( A )。
A.277K
B.274K
C.276K
D.275K
解析:(1+1+1+32-5-9) X 1Kbits+32K X 8bits=277Kbits
8某32位机按字节编址。数据cache有32行,主存块大小为32B,采用2路组相联映射。对于以下程序A,假定编译时i, j, sum均分配在寄存器中,数组a按行优先方式存放,其首址为3200,则a[1][0]
所映射的cache组号、程序A的数据cache命中率各是( B )、( B )。
short a[256][256];
……
short sum_array() {
int i, j;
short sum=0;
for (i=0; i < 256; i++)
for (j=0; j < 256; j++)
sum+=a[i][j];
return sum;
}
A.2, 15/16
B.4, 15/16
C.2, 31/32
D.4,31/32
正确答案:B你选对了
9下列命中组合情况中,一次访存过程中不可能发生的是( C )。
A.TLB命中、cache未命中、Page命中
B.TLB命中、cache命中、Page命中
C.TLB命中、cache命中、Page未命中
D.TLB未命中、cache命中、Page命中
正确答案:C你选对了
10已知变量y和数组a都是int型,a的首地址为0x8049d80。假设编译器将a的首地址分配在ECX中,数组的下标变量i分配在EDX中,y分配在EAX中,C语言赋值语句“y=a[i]
;”被编译为指令“movl (%ecx, %edx, 4), %eax”。在IA-32/Linux环境下执行该指令,则当i=200时,得到的存储器操作数的线性地址是( A )。
A.0x804a0a0
B.0x8049d80
C.0x8049e4c
D.0x804a580
正确答案:A
0x8049d80+0x320=0x804a0a0
11以下关于指令基本执行过程的叙述中,正确的是( A )。
A.读取指令→指令译码→读取操作数→运算→存结果→查询中断
B.读取指令→读取操作数→指令译码→运算→存结果→查询中断
C.读取指令→查询中断→指令译码→读取操作数→运算→存结果
D.指令译码→读取指令→读取操作数→运算→存结果→查询中断
正确答案:A你选对了
12以下有关CPU基本组成的叙述中,错误的是( A )。
A.若支持乘法和除法指令,则数据通路中一定包含乘法器和除法器
B.ALU和通用寄存器组都属于数据通路部分
C.控制器会产生控制信号,其中主要包含指令译码器
D.CPU主要包含数据通路和控制器两大部分
正确答案:A你选对了
13以下关于存储器分类的叙述中,错误的是( C )。
A.SRAM和DRAM都属于半导体随机存取存储器
B.随机访问存储器采用地址译码方式选中被读/写单元
C.磁带和磁盘都是采用直接存取方式的磁表面存储器
D.磁带、磁盘、光盘和优盘都属于非易失性存储介质
正确答案:C
14以下关于主存储器容量的叙述中,错误的是( B )。
A.主存地址空间是指地址总线和编址单位所确定的最大可配置主存容量
B.主存容量指计算机内所有ROM和RAM存储器容量总和
C.在不考虑其他因素变化的情况下,主存容量越大程序性能越好
D.主存容量的大小主要取决于计算机内实际配置的内存条的容量
正确答案:B
15以下关于cache命中率叙述中,错误的是( D )。
A.cache命中率与cache容量有关
B. cache命中率和程序访问局部性有关
C.cache命中率与cache和主存之间的映射方式有关
D.cache命中率与cache写策略有关
正确答案:D
16假定某32位计算机按字节编址,其L1 data cache数据区容量为32KB,主存块大小为64B,采用8路组相联方式。假定某变量的主存地址为4090,则该变量所在主存块应该映射到的cache行号为( C)。
A.58
B.7
C.63
D.2
正确答案:C
512行,64组
4090/64=63...
注:题目在cache行号应该是cache组号
17以下关于分页存储管理方式的叙述中,错误的是( C )。
A.虚拟页和主存页框之间采用Write Back写策略
B.虚拟页和主存页框之间采用全相联映射
C.虚拟页面大小和主存页框大小两者之间可以不一致
D.虚拟页和主存页框之间的映射关系由页表记录
正确答案:C你选对了
18以下关于IA-32/Linux虚拟地址空间的叙述中,错误的是( D )。
A.每个进程只读代码段总是从0x8048000开始
B.每个进程的虚拟地址空间大小和布局一致
C.虚拟地址空间中栈和堆都是动态存储区
D.每个进程可读可写数据段总是从0x8049000开始
正确答案:D你选对了
19对于IA-32/Linux系统中的指令“movl 16(%edx, %esi, 4), %edx”,若R[edx]=0804 9200H,R[esi]=0000 0010H
,则源操作数的线性地址LA是( B )。
A.0804 9238H
B.0804 9250H
C.0804 923EH
D.0804 9256H
正确答案:B你选对了
20在IA-32的分页方式中,若页大小为4KB,某指令的线性地址为0x8048380,该指令所在页面被分配的主存页框号为126,则该指令的主存物理地址为( C )。
A.0012 6380H
B.0804 807EH
C.0007 E380H
D.0804 8126H
解析:
页内偏移量380H
主存页框号126 = 7EH
21根据半导体存储器中记忆单元结构的不同,分为( SRAM )和DRAM两种随机访问存储器,前者用于实现DRAM芯片中的行缓存(row buffer)。
22若一个内存条中有16个DRAM芯片,每个芯片中有4个位平面,每个位平面的存储阵列为4096行×4096列,则内存条的容量为( 128 )MB。
23若计算机按字节编址,主存地址为32位,主存块大小为64B,cache共有64K行,采用16路组相联映射方式,则标志(Tag)字段为( 14 )位。
24TLB(快表)是CPU中的一个高速缓存,主要用于存放活跃页面的( 页表项 )。
25若虚拟地址为32位,页大小为4KB,TLB采用全相联映射方式,则TLB标记应占( 20 )位。
第6章层次结构存储系统平时小测验
本次得分为:37.00/53.00, 本次测试的提交时间为:2023-11-25。
错题序号:2、7、15、23、26、30、31、33、35
1单选(1分)
下列几种存储器中,属于非易失性存储器的是(B )。
A.Cache
B.ROM
C.DRAM
D.SRAM
2单选(1分)
以下有关主存储器组成的叙述中,错误的是( D )。
A. 有通用寄存器堆,用于缓存读写的数据信息 B. 有地址译码器,用于选中要访问的主存单元 C.有存储阵列,用于存储主存中的所有数据信息 D.有地址寄存器,用于存放存储器总线传送的主存地址
正确答案:A你错选为D
3单选(1分)
以下关于存储器层次结构的叙述中,错误的是( B )。
A.Cache是位于寄存器和主存之间的一级存储器
B.CPU可直接访问所有层次的存储器
C.越靠近CPU的存储器层次,其速度越快
D.寄存器是速度最快的一级存储器
4单选(1分)
以下关于半导体存储器分类及应用的叙述中,错误的是( D )。
A.DRAM有漏电和破坏性读出现象,需定时刷新和读后再生
B.SRAM比DRAM集成度更低、价格更贵,但速度更快
C.只读存储器(ROM)和RAM一样,都采用随机存取方式访问
D.固态硬盘(SSD)由NADN闪存实现,它不属于半导体存储器
5单选(1分)
以下关于DRAM芯片的叙述中,错误的是( D )。
A.用作主存的内存条通常由DRAM芯片级联而成
B. 行地址和列地址分时复用地址引脚传送
C.存储体阵列采用二维地址译码方式
D.每增加一个地址引脚,芯片容量提高到原来的2倍
6单选(1分)
以下关于访存指令(装入指令和存储指令)执行过程的叙述中,错误的是(C )。
A.访存开始时CPU总是先将主存地址送给存储控制器 B.DRAM芯片中的行译码器会对行地址译码,被选中行的信息会被送到内部行缓冲中 C.由存储控制器将主存地址分成行地址和列地址,并分时传给DRAM芯片 D.DRAM芯片中的列译码器会对列地址译码,从被选中行中指定的列将数据读出或写入
7单选(1分)
以下有关主存与CPU互连的叙述中,错误的是( A )。
A.主存与CPU之间通过存储器总线互连,内存条插槽就是存储器总线 B.存储器的访问过程由内存条中的存储控制器来进行控制 C.可将内存条插入内存条插槽中,以扩大主存储器的容量 D.CPU与主存之间互连的信号线分为地址线、数据线和控制线三类
正确答案:B你错选为A
解析: B、内存条上只有若干个DRAM芯片,而不包含存储控制器。存储控制器(简称存控)一般在桥接器(如北桥芯片)或者CPU芯片中。
8单选(1分)
以下有关磁盘存储器的叙述中,错误的是( D )。
A.磁盘存储器包含磁盘驱动器和磁盘控制器等组成部分
B.磁盘存储器采用DMA方式进行输入/输出
C.磁盘存储器按批处理方式读写,一次读写一个数据块
D. 磁盘存储器的地址格式为磁道号、柱面号和扇区号
解析: D、磁道号就是柱面号,应该把柱面号改成磁头号(或盘面号)。
9单选(1分)
以下关于高速缓存(Cache)的叙述中,错误的是( D )。
A.Cache对于程序员来说是透明的,但程序员可利用Cache机制编写高效代码
B. 在主存和Cache之间交换数据以一个主存块为单位
C.Cache是主存储器的高速缓存,Cache中的数据在主存中有备份
D.在CPU和主存之间加入Cache的目的是为了扩大主存的容量
10单选(1分)
假设主存按字节编址,cache共有16行,采用直接映射方式,主存块大小为64字节,所有编号都从0开始。主存第641号单元所在主存块对应的cache行号是( A )。
A.10
B. 2
C.11
D. 1
11单选(1分)
假设主存按字节编址,cache共有32行,采用4路组相联映射方式,主存块大小为64字节,所有编号都从0开始。主存第641号单元所在主存块对应的cache组号是( A )。
A.2
B. 10
C. 5
D.1
12单选(1分)
假定主存地址空间为256MB,按字节编址, cache共有64行,采用全相联映射方式,主存块大小为64B,不考虑替换策略和写策略的控制位,则cache容量至少为( A )字节。
A.4280
B.4272
C.4224
D.4232
13单选(1分)
以下关于Cache映射方式特点的叙述中,错误的是( A ) 。
A.全相联映射方式是一种模映射方式
B.直接映射方式不需要考虑替换策略
C.采用什么一致性写策略通常与映射方式无关
D.组相联映射方式比直接映射方式需要更多的比较器
14单选(1分)
以下关于Cache命中率的叙述中,错误的是( B )。
A.Cache命中率与编程设计有关
B.Cache命中率与缺失损失大小有关
C.Cache命中率与映射方式有关
D.Cache命中率与Cache容量有关
15单选(1分)
以下关于虚拟存储器基本概念的叙述中,错误的是( B )。 A.虚拟存储器技术可以解决编程空间受物理内存大小限制的问题
B.实时性要求高的嵌入式系统大多不采用虚拟存储器技术
C.采用虚拟存储器技术的系统中OS必须进行虚实地址转换
D.虚拟存储器技术的实现需要系统软件和硬件两方面协作完成
正确答案:C你错选为B
解析: C、虚实地址转换是由硬件实现的,而不是由OS实现的。
16单选(1分)
以下关于IA-32+Linux系统虚拟地址空间的叙述中,错误的是( B )。
A. 内核空间是用户程序不可见区域,只能由OS访问
B.用户空间中的栈区和堆区都从高地址向低地址增长
C.用户空间中的静态区包括只读代码段和可读可写数据段
D.内核空间在高地址区域,用户空间在低地址区域
17单选(1分)
以下关于分页虚拟存储管理机制的叙述中,错误的是( D )。
A.每个进程都有一个页表,页表也被划分成页面
B.每个进程的虚拟地址空间被划分成若干页面
C.物理主存空间被划分成若干个页面大小的页框
D.页面大小与Cache机制中的主存块大小相同
18单选(1分)
若R[edx]=0000 01B6H,R[esi]=0000 0008H
,则IA-32+Linux系统中“movl 8(%edx, %esi, 4), %edx”指令的源操作数的线性地址是( C )。
A.0000 06E8H
B.0000 01F0H
C.0000 01DEH
D.0000 01B6H
正确答案:C你选对了
解析: C、源操作数的有效地址为R[edx]+R[esi]*4+8=0000 01B6H+0000 0008H*4+8=0000 01DEH
,在Linux中线性地址就是有效地址。
19单选(1分)
以下是有关IA-32保护模式的叙述,其中错误的是( A )。
A.分段过程实现32位逻辑地址转换为32位线性地址
B.分页采用二级页表方式,包括页目录表和页表
C.采用先分段后分页的段页式存储管理方式
D.分段过程需要用到段描述符表(即段表)
20单选(1分)
已知变量y和数组a都是int型,a的首地址为0x8049b00。假设编译器将a的首地址分配在ECX中,数组的下标变量i分配在EDX中,y分配在EAX中,C语言赋值语句“y=a[i]
;”被编译为指令“movl (%ecx, %edx, 4), %eax”。在IA-32/Linux环境下执行该指令,则当i=100时,得到的存储器操作数的线性地址是( B )。
A. 0x8049c00
B. 0x8049c90
C. 0x8049f00
D.0x8049b00
正确答案:B你选对了
解析: B、Linux中将所有段的段基址都初始化为0,因而存储器操作数a[150]的线性地址=段基址+有效地址=0+R[ecx]+R[edx]*4=0x8049b00+100*4=0x8049b00+400=0x8049b00+0x190=0x8049c90
。
21单选(1分)
以下是有关IA-32中线性地址向物理地址转换过程的叙述,其中错误的是( A )。
A.转换前后的线性地址和物理地址位数不同
B.CR3的内容为页目录表的起始物理地址
C.地址转换时,总是先查TLB中的快表
D.线性地址空间就是虚拟地址空间
正确答案:A你选对了
解析: A、转换前后的线性地址和物理地址位数相同,都是32位。
22单选(1分)
以下是有关IA-32中逻辑地址向线性地址转换过程的叙述,其中错误的是( A )。
A.每次地址转换都要访问主存中的段描述符表
B.逻辑地址包含段选择符和段内偏移量两部分
C.线性地址等于段基址加段内偏移量
D.该转换过程由存储器管理部件MMU实现
正确答案:A你选对了
解析: A、在第一次地址转换时,段描述符表被装入CPU中的描述符cache中,以后就不需要访问主存中的段描述符表了
23多选(3分)
采用虚存机制的系统中,每个进程都有统一的虚拟地址空间,因而带来了很多好处。这些好处包括( ABCD )。
A.可使主存空间得到有效利用
B.可简化程序的加载过程
C.可加快程序运行速度
D.有利于实现存储保护
正确答案:A、B、D你错选为A、B、C、D
解析: C、事实相反,因为虚拟存储机制带来了许多额外的时间和空间开销,反而速度更慢。例如,需要查页表并进行地址转换,使指令执行时间更长。
24判断(2分)
for循环语句的循环体对应的指令序列既具有空间局部性,也具有时间局部性。✔
25判断(2分)
深度递归调用过程对应的指令序列既具有空间局部性,也具有时间局部性✔
26判断(2分)
按行优先方式对数组中各元素按序访问时,该数组既具有空间局部性,也具有时间局部性。❌
解析:只是按序访问数组元素,并没有访问多次,因而这个数组只具有空间局部性,而没有时间局部性。
27判断(2分)
一个过程在短时间内被连续调用时,对应指令序列既具有空间局部性,也具有时间局部性。✔
28判断(2分)
现代计算机都采用多级Cache方式,L1 Cache多采用数据Cache和代码Cache分离设置,而L2 Cache和L3 Cache则为联合Cache,即数据和代码放在同一个Cache中。✔
29判断(2分)
在一个进程的虚拟地址空间中,在栈区和堆区中间的一些区域是没有内容的“空洞”页面,它们被称为未分配页。✔
30判断(2分)
在一个进程的虚拟地址空间中,只读代码段和可读可写数据段与可执行文件中的内容关联,它们被划分成若干页面。在程序执行过程中,这些页面有的没有从磁盘调入主存空间,有的则已经装入主存页框,前者称为未缓存页,后者称为缓存页。✔
31判断(2分)
任何时刻,一个进程中的所有页面都被划分成以下三个不相交的页面集合:已分配页集合、未缓存页集合、缓存页集合。❌
应该是:未分配页集合、未缓存页集合、缓存页集合。
32判断(2分)
在分页虚拟存储管理系统中,某一时刻物理内存中可能同时存在多个进程的页面和页表。✔
33判断(2分)
在一个程序被加载执行的开始,一旦CPU执行指令,在第一次CPU访存过程中,一定会发生TLB缺失、缺页和Cache缺失。✔
34假定内存条容量为512MB,由8个64Mx8位的DRAM芯片组成,每个DRAM芯片的存储体阵列有8个位平面,则该DRAM芯片的地址引脚个数为( 13 )。
该DRAM芯片的存储体阵列容量为64Mx8=8Kx8Kx8,也即每个位平面为8Kx8K=2^13 x 2^13 。故行地址和列地址都是13位,分时通过地址引脚传送,需13个地址引脚。
35假定一个磁盘驱动器的转速为7200RPM,平均寻道时间为10ms,则该磁盘驱动器的平均访问时间约为( 14.1或14.2 )ms。(结果取一位小数)
36假设主存地址空间为4GB,按字节编址, cache共有4K行,采用4路组相联映射方式,采用随机替换策略和写回(write back)策略,主存块大小为64B,则cache容量至少为( 265 )KB。
37若cache存取时间为2ns,主存存取时间为50ns,cache命中率为98%,则Cache-主存层次平均访问时间为( 3 )ns。