2016年12月考研的408试题,本篇为小题部分,大题见下一篇。

声明:

  • 0x和0b分别表示十六进制数和二进制数,其余为十进制数。
  • 0y和0c分别表示十六进制形式补码和二进制形式补码。
  • exp()和log()分别是以2为底的指数和对数,exp10()以10为底。
  • 乘除号用最朴素的×÷,分数用/,参与计算的英文字母变量用手写体。
  • 〔〕里的斜体为补充文字,另外对原题一些容易误会的文字做了修改。
  • 图片使用亿图图示等绘制。

一、单项选择:

第1~40小题,每小题2分,共80分。

DataStructure

🤓✍️「1」、下列函数的时间复杂度是()?

int func(int n)
{
int i = 0, sum = 0;
while (sum < n)
sum += ++i;
return i;
}
  • A、𝜪(log(n))
  • B、𝜪(√n)
  • C、𝜪(n)
  • D、𝜪(nlog(n))
【B】sum是等差数列的和,与i^2相关。

🤓✍️「2」、下列关于栈的叙述中,错误的是()?

Ⅰ꙳采用非递归方式重写递归程序时必须使用栈。
Ⅱ꙳函数调用时,系统要用栈保存必要的信息。
Ⅲ꙳只要确定了入栈次序,就可确定出栈次序。
Ⅳ꙳栈是一种受限的线性表,允许在其两端进行操作。

  • A、Ⅰ,
  • B、Ⅰ,Ⅱ,Ⅲ,
  • C、Ⅰ,Ⅲ,Ⅳ,
  • D、Ⅱ,Ⅲ,Ⅳ,
【C】Ⅰ꙳反例:求阶乘的迭代实现只需一个循环。Ⅲ꙳确定了入栈次序,出栈次序个数为卡特兰数。Ⅳ꙳栈只允许在栈顶操作。

🤓✍️「3」、适用于压缩存储稀疏矩阵的两种存储结构是()?

  • A、三元组表和十字链表
  • B、三元组表和邻接矩阵
  • C、十字链表和二叉链表
  • D、邻接矩阵和十字链表
【A】三元组表的结点存了(行,列,值)。十字链表是将行单链表和列单链表结合。

🤓✍️「4」、要使一棵非空二叉树的先序序列与中序序列相同,其所有非叶结点须满足的条件是()?

  • A、只有左子树
  • B、只有右子树
  • C、结点的度均为1
  • D、结点的度均为2
【B】极度向右倾斜的树。

🤓✍️「5」、已知一棵二叉树的树形如右图所示,其后序序列为e,a,c,b,d,g,f,树中与结点a同层的结点是()?

  • A、c
  • B、d
  • C、f
  • D、g
【B】可得出该树所有结点。

🤓✍️「6」、已知字符集{a,b,c,d,e,f,g,h},若各字符的哈夫曼编码依次是0100,10,0000,0101,001,011,11,0001,则编码序列0100011001001011110101的译码结果是()?

  • A、acgabfh
  • B、adbagbb
  • C、afbeagd
  • D、afeefgd
【D】0100 011 001 001 011 11 0101。

🤓✍️「7」、已知无向图G含有16条边,其中度为4的顶点个数为3,度为3的顶点个数为4,其余顶点的度均小于3。图G所含的顶点个数至少是()?

  • A、10
  • B、11
  • C、13
  • D、15
【D】无向图边数的两倍等于各顶点度数的总和。设其余顶点的度均为2,有𝓀个,4x3+3x4+2𝓀=16x2 ⇒ 𝓀=4,4+3+4=11。

🤓✍️「8」、下列二叉树中,可能成为折半查找判定树的是()?

  • A、
  • B、
  • C、
  • D、
【A】对于偶数长度的区间寻找中点时,采用向下取整对应二叉树中分支结点的左子树结点总数比右子树结点总数少1个,采用向上取整对应二叉树中分支结点的左子树结点总数比右子树结点总数多1个,选项BCD中均出现了两种方式。

🤓✍️「9」、下列应用中,适合使用B+树的是()?

  • A、编译器中的词法分析
  • B、关系数据库系统中的索引
  • C、网络中的路由表快速查找
  • D、操作系统的磁盘空闲块管理
【B】文件索引和数据库索引是B+树的典型应用。编译器中的词法分析使用有穷自动机和语法树。路由表快速查找主要靠高速缓存和路由表压缩技术和快速查找算法。一般使用空闲链表或空闲位图管理磁盘空闲块。

🤓✍️「10」、在内部排序时,若使用了归并排序而没有使用插入排序,则可能的理由是()?

Ⅰ꙳归并排序的程序代码更短。 Ⅱ꙳归并排序的占用空间更少。 Ⅲ꙳。归并排序的运行效率更高。

  • A、Ⅱ,
  • B、Ⅲ,
  • C、Ⅰ,Ⅱ,
  • D、Ⅰ,Ⅲ,
【B】归并排序比插入排序代码复杂。前者涉及递归空间复杂度𝜪(n),后者空间复杂度𝜪(1)。前者时间复杂度𝜪(nlog(n)),后者时间复杂度𝜪(n^2)。

🤓✍️「11」、下列排序方法中,若将顺序存储更换为链式存储,则算法的时间效率会降低的是()?

Ⅰ꙳插入排序 Ⅱ꙳选择排序 Ⅲ꙳冒泡排序 Ⅳ꙳希尔排序 Ⅴ꙳堆排序

  • A、Ⅰ,Ⅱ,
  • B、Ⅱ,Ⅲ,
  • C、Ⅲ,Ⅳ,
  • D、Ⅳ,Ⅴ,
【D】希尔排序寻找特定步长之后的结点用链式不如顺序方便。堆排序找堆底结点以及找左右孩子用链式都不如顺序不方便。

ComputerOrganization

🤓✍️「12」、假设机器M1和M2具有相同的指令体系结构,主频分别为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】2/1.5÷1/1.2=1.6。

🤓✍️「13」、某计算机主存按字节编址,由4个64Mx8b的DRAM芯片采用低位交叉编址方式构成,并与宽度为32位的存储器总线相连,主存每次最多读写32位数据。若double型变量x的主存地址为0x804OO1A,则读取x需要的存储周期数是()?

  • A、1
  • B、2
  • C、3
  • D、4
【C】。

🤓✍️「14」、某C语言程序段如下,关于该程序的访问局部性的描述中,正确的是()?

for (i = 0; i <= 9; i++)
{
temp = 1;
for (j = 0; j <= i; j++)
temp *= A[j];
sum += temp;
}
  • A、时间局部性和空间局部性皆有
  • B、无时间局部性有空间局部性
  • C、有时间局部性无空间局部性
  • D、时间局部性和空间局部性皆无
【A】循环和数组就是时间空间局部性的很好体现。

🤓✍️「15」、下列寻址方式中,最适合按下标顺序访问一维数组元素的是()?

  • A、相对寻址
  • B、寄存器寻址
  • C、直接寻址
  • D、变址寻址
【A】int型数组元素arr[i]=*(arr+4×i),适合变址寻址,地址arr由指令字提供,变址寄存器里是不断递增的i。

🤓✍️「16」、某计算机按字节编址,指令字长固定且只有两种指令格式,其中三地址指令29条,二地址指令107条,每个地址字段为6位,则指令字长位数至少应该是()?

  • A、24
  • B、26
  • C、28
  • D、32
【A】按字节编址,位数得是8的倍数,先排除选项BC。三地址指令的操作码至少⌈log(29)⌉=5位,还能剩3种留给二地址指令,二地址指令的操作码扩展了6位,能达3×exp(6)=192种,够了。故指令字长至少5+3×6=23,取24。

🤓✍️「17」、下列关于超标量流水线特性的叙述中,正确的是()?

Ⅰ꙳能缩短流水线功能段的处理时间。
Ⅱ꙳能在一个时钟周期内同时发射多条指令。
Ⅲ꙳能结合动态调度技术提高指令执行并行性。

  • A、Ⅱ,
  • B、Ⅰ,Ⅲ,
  • C、Ⅱ,Ⅲ,
  • D、Ⅰ,Ⅱ,Ⅲ,
【C】超标量流水线就是多段式流水线。流水线功能段的处理时间依赖于CPU主频。

🤓✍️「18」、下列关于主存储器"MainMemory"和控制存储器"ControlMemory"的叙述中,错误的是()?

  • A、MM在CPU外,CM在CPU内。
  • B、MM按地址访问,CM按内容访问。
  • C、MM存储指令和数据,CM存储指令微程序。
  • D、MM用RAM和ROM实现,CM用ROM实现。
【B】控制存储器,CPU控制单元中负责容纳指令系统所有微程序的只读存储器,也是按地址访问的。

🤓✍️「19」、下列关于指令流水线数据通路的叙述中,错误的是()?

  • A、包含生成控制信号的控制部件。
  • B、包含算术逻辑运算部件。
  • C、包含通用寄存器组和取指部件。
  • D、由组合逻辑电路和时序逻辑电路组合而成。
【A】通过数据总线连接形成的数据传送路径称为数据通路,不包括控制部件。

🤓✍️「20」、下列关于多总线结构的叙述中,错误的是()?

  • A、靠近CPU的总线速度较快。
  • B、存储器总线可支持突发传送方式。
  • C、总线之间须通过桥接器相连。
  • D、PCI-Express×16采用并行传输方式。
【D】PCIe总线都是串行,为的就是提高数据传输速度。

🤓✍️「21」、I/O指令实现的数据传送通常发生在()?

  • A、I/O设备和I/O端口之间。
  • B、通用寄存器和I/O设备之间。
  • C、I/O端口和I/O端口之间。
  • D、通用寄存器和I/O端口之间。
【D】概念题。通用寄存器是CPU的数据代理人,I/O端口是I/O设备的数据代理人。

🤓✍️「22」、下列关于多重中断系统的叙述中,错误的是()?

  • A、在一条指令执行结束时响应中断。
  • B、中断处理期间CPU处于关中断状态。
  • C、中断请求的产生与当前指令的执行无关。
  • D、CPU通过采样中断请求信号检测中断请求。
【C】考狭义的中断相关概念。中断处理期间CPU状态:单重中断下是关中断;多重中断下是开中断,以响应更高级别的中断。中断与当前指令无关,异常才与当前指令有关。

OperatingSystem

🤓✍️「23」、假设4个作业到达系统的时刻和运行时间如下表所示,系统在t=2时开始作业调度。若分别采用先来先服务和短作业优先调度算法,则选中的作业分别是()?

作业到达时刻t运行时间
J103
J213
J312
J431
  • A、J2,J3,
  • B、J1,J4,
  • C、J2,J4,
  • D、J1,J3,
【D】简单题。

🤓✍️「24」、执行系统调用的过程包括如下主要操作:⓵返回用户态;⓶执行陷入指令;⓷传递系统调用参数;⓸执行相应的服务程序;正确的执行顺序是()?

  • A、⓶⮕⓷⮕⓵⮕⓸
  • B、⓶⮕⓸⮕⓷⮕⓵
  • C、⓷⮕⓶⮕⓸⮕⓵
  • D、⓷⮕⓸⮕⓶⮕⓵
【C】概念题。

🤓✍️「25」、某计算机按字节编址,其动态分区内存管理采用最佳适应算法,每次分配和回收内存 后都对空闲分区链重新排序,当前空闲分区信息如下表所示,回收起始地址为60K,大小为140KB的分区后,系统中空闲分区的数量,空闲分区链一个分区的起始地址和大小分别是()?

分区起始地址20K500K1000K200K
分区大小40KB80KB100KB200KB
  • A、3,20K,380KB,
  • B、3,500K,80KB,
  • C、4,20K,180KB,
  • D、4,500K,80KB,
【C】最佳适应算法要按分区大小排序。

🤓✍️「26」、某文件系统的簇和磁盘扇区大小分别为1KB和512B。若一个文件的大小为1026B,则系统分配给该文件的磁盘空间大小是()?

  • A、1026B
  • B、1536B
  • C、1538B
  • D、2048B
【D】绝大多数操作系统为改善磁盘访问时间,以簇为单位进行空间分配。

🤓✍️「27」、下列有关基于时间片的进程调度的叙述中,错误的是()?

  • A、时间片越短,进程切换的次数越多,系统开销也越大。
  • B、当前进程的时间片用完后,该进程状态由执行态变为阻塞态。
  • C、时钟中断发生后,系统会修改当前进程在时间片内的剩余时间。
  • D、影响时间片大小的主要因素包括响应时间,系统开销和进程数量等。
【B】时间片用完,只少了CPU,资源没缺,变为就绪态。

🤓✍️「28」、与单道程序系统相比,多道程序系统的优点是()?

Ⅰ꙳CPU利用率高   Ⅱ꙳系统开销小   Ⅲ꙳系统吞吐量大   Ⅳ꙳I/O设备利用率高

  • A、Ⅰ,Ⅲ,
  • B、Ⅰ,Ⅳ,
  • C、Ⅱ,Ⅲ,
  • D、Ⅰ,Ⅲ,Ⅳ,
【D】概念题。多道程序系统要付出额外的开销来组织作业和切换作业。

🤓✍️「29」、下列选项中,磁盘逻辑格式化程序所做的工作是()?

Ⅰ꙳对磁盘进行分区             Ⅱ꙳建立文件系统的根目录
Ⅲ꙳确定磁盘扇区校验码所占位数
Ⅳ꙳对保存空闲磁盘块信息的数据结构进行初始化

  • A、Ⅱ,
  • B、Ⅱ,Ⅳ,
  • C、Ⅲ,Ⅳ,
  • D、Ⅰ,Ⅱ,Ⅳ,
【B】操作系统管理磁盘:❶低级格式化,盘面划分扇区以便磁盘控制器能读写,为每个扇区采用特别的数据结构,包括校验码;❷磁盘分区,例如分成C:盘D:盘等;❸逻辑格式化,创建文件系统,初始化一些数据结构保存已分配和空闲的磁盘块,建立一个根目录。

🤓✍️「30」、某文件系统中,针对每个文件,用户类别分为4类:安全管理员,文件主,文件主的伙伴,其他用户;访问权限分为5种:完全控制,执行,修改,读取,写入。若文件控制块中用二进制位串表示文件权限,为表示不同类别用户对个文件的访问权限,则描述文件权限的位数至少应为()?

  • A、5
  • B、9
  • C、12
  • D、20
【D】可以把用户访问权限抽象为一个矩阵,行代表用户,列代表访问权限。这个矩阵有4行5列,需要20位。

🤓✍️「31」、若文件f1的硬链接为f2,两个进程分别打开f1和f2,获得对应的文件描述符为fd1和fd2,则下列叙述中,正确的是()?

Ⅰ꙳f1和f2的读写指针位置保持相同
Ⅱ꙳f1和f2共享同一个内存索引结点
Ⅲ꙳fd1和fd2分别指向各自的用户打开文件表中的一项

  • A、Ⅲ,
  • B、Ⅱ,Ⅲ,
  • C、Ⅰ,Ⅱ,
  • D、Ⅰ,Ⅱ,Ⅲ,
【B】概念题。f1和f2由两个进程打开,读写指针位置不可能始终保持相同。

🤓✍️「32」、系统将数据从磁盘读到内存的过程包括以下操作:⓵DMA控制器发出中断请求;⓶初始化DMA控制器并启动磁盘;⓷从磁盘传输一块数据到内存缓冲区;⓸执行“DMA结束”中断服务程序;正确的执行顺序是()?

  • A、⓷⮕⓵⮕⓶⮕⓸
  • B、⓶⮕⓷⮕⓵⮕⓸
  • C、⓶⮕⓵⮕⓷⮕⓸⮕⓵
  • D、⓵⮕⓶⮕⓸⮕⓷
【B】概念题。DMA先发总线请求给内存传数据,再发中断请求给CPU。

ComputerNetWork

🤓✍️「33」、假设OSI七层参考模型的应用层欲无拆分地发送400B的数据,除物理层和应用层之外,其他各层在封装PDU时均引入20B的额外开销,则应用层数据传输效率约为()?

  • A、80%
  • B、83%
  • C、87%
  • D、91%
【A】400÷(400+5×20)=80%。

🤓✍️「34」、若信道在无噪声情况下的极限数据传输速率不小于信噪比为30dB条件下的极限数据传输速率,则信号状态数至少是()?

  • A、4
  • B、8
  • C、16
  • D、32
【A】将分贝信噪比转为信噪功率比值,30dB=10×log10(S/N) ⇒ S/N=1000。设𝒲是信道带宽,𝒩是信号状态数。由奈氏准则,无噪声情况下的极限数据传输速率=2𝒲log(𝒩);由香农公式,信噪比为30dB条件下的极限数据传输速率=𝒲log(1+1000)≈5𝒲。由题意,2𝒲log(𝒩)≥5𝒲,𝒩≥32。

🤓✍️「35」、在下图所示的网络中,若主机H发送一个封装访问Internet的IP分组的IEEE802.11数据帧F,则帧F的地址1,地址2,地址3分别是()?



  • A、00-12-34-56-78-9a, 00-12-34-56-78-9b, 00-12-34-56-78-9c,
  • B、00-12-34-56-78-9b, 00-12-34-56-78-9a, 00-12-34-56-78-9c,
  • C、00-12-34-56-78-9b, 00-12-34-56-78-9c, 00-12-34-56-78-9a,
  • D、00-12-34-56-78-9a, 00-12-34-56-78-9c, 00-12-34-56-78-9b,
【B】考802.11数据帧格式。地址1是接入点的MAC地址,地址2是源MAC地址,地址3是目的MAC地址。

🤓✍️「36」、下列IP地址中,只能作为IP分组的源IP地址但不能作为目的IP地址的是()?

  • A、0.0.0.0
  • B、127.0.0.1
  • C、200.10.10.3
  • D、255.255.255.255
【D】0.0.0.0可以作为本主机在本网络上的源IP地址。127.0.0.1用于本机软件环回测试。255.255.255.255是广播地址,只能作目的IP地址。

🤓✍️「37」、直接封装RIP,OSPF,BGP报文的协议分别是()?

  • A、TCP,UDP,IP,
  • B、TCP,IP,UDP,
  • C、UDP,TCP,IP,
  • D、UDP,IP,TCP,
【D】如下图。

🤓✍️「38」、若将网络21.3.0.0/16划分为128个规模相同的子网,则每个子网可分配的最大IP地址个数是()?

  • A、254
  • B、256
  • C、510
  • D、512
【C】主机号只剩32-16-⌈log(128)⌉=9位,exp(9)-2=510。

🤓✍️「39」、若甲向乙发起一个TCP连接,最大段长MSS=1KB,RTT=5ms,乙开辟的接收缓存为64KB,则甲从连接建立成功至发送窗口达到32KB,需经过的时间至少是()?

  • A、25ms
  • B、30ms
  • C、160ms
  • D、165ms
【C】按照慢开始算法,1➧2➧4➧8➧16➧32,5个RTT=5×5ms=25ms,且乙的接收缓存充足。

🤓✍️「40」、下列关于文件传输协议FTP的叙述中,错误的是()?

  • A、数据连接在每次数据传输完毕后就关闭。
  • B、控制连接在整个会话期间保持打开状态。
  • C、服务器与客户端的TCP:20端口建立数据连接。
  • D、客户端与服务器的TCP:21端口建立控制连接。
【C】概念题。FTP客户端用的都是TCP临时端口号;服务器用TCP:21端口建立控制连接;服务器主动模式下,用TCP:20端口建立数据连接,服务器被动模式下,也用TCP临时端口号建立数据连接。

最后修改于:2024年09月16日
如果觉得我的文章对你有用请狠狠地打赏我