2013计算机学科专业基础综合全卷预览

2013年408真题

2013年408真题完整试卷,包含 40 道选择题和 7 道综合应用题,共 47 题,题目分值合计 146 分。可按目录阅读全卷,展开参考答案解析,或进入对应题目练习。

返回年度练习
47题全卷题目
146分题目分值合计
40题选择题 · 80分
7题综合应用题 · 66分

选择题

40 题 · 共 80 分

第 1 题

数据结构
2 分

已知两个长度分别为 m 和 n 的升序链表,若将它们合并为一个长度为 m + n 的降序链表,则最坏情况下的时间复杂度是( )。

A. O(n)

B. O(mn)

C. O(min(m, n))

D. O(max(m, n))

查看答案与解析收起答案与解析

参考答案:D

题目详解:
要合并两个长度分别为 m m 和 n n 的升序链表为一个长度为 m+n m + n 的降序链表,最坏情况下的时间复杂度取决于如何遍历和比较两个链表的节点。

  1. 合并过程分析:

    • 每次从两个链表的头部选择较大的节点,将其插入到新链表的头部,形成降序链表。
    • 最坏情况下,需要比较所有 m+n m + n 个节点,但每次比较只需 O(1) O(1) 时间。
    • 关键在于如何高效找到每次要插入的节点。如果使用双指针法,每次移动一个链表的指针,最多需要遍历 m+n m + n 次。
  2. 时间复杂度推导:

    • 双指针法的最坏情况是两个链表交替比较,最多需要 m+n m + n 次操作。
    • 因此,时间复杂度为 O(m+n) O(m + n) 。
    • 由于 O(m+n) O(m + n) 等价于 O(max⁡(m,n)) O(\max(m, n)) (因为 max⁡(m,n) \max(m, n) 主导了增长趋势),所以最坏情况下的时间复杂度为 O(max⁡(m,n)) O(\max(m, n)) 。
  3. 选项分析:

    • A. O(n) O(n) :忽略了 m m 的影响。
    • B. O(mn) O(mn) :远高于实际复杂度。
    • C. O(min⁡(m,n)) O(\min(m, n)) :低估了复杂度。
    • D. O(max⁡(m,n)) O(\max(m, n)) :正确反映了最坏情况下的时间复杂度。

正确答案:D

进入练习

第 2 题

数据结构
2 分

一个栈的入栈序列为 1, 2, 3, …, n,其出栈序列是p1 , p2 , p3 , …, pn 。若p2 = 3,则p3 可能取值的个数是( )。

A. n-3

B. n-2

C. n-1

D. 无法确定

查看答案与解析收起答案与解析

参考答案:C

题目详解:
本题考察 入栈出栈序列。显然,33 之后的 4,5,⋯ ,n4,5,\cdots,n 都是 p3p_3 可取的数(一直进栈直到该数入栈后马上出栈)。接下来分析 1 和 2:p1p_1 只能是 33 之前入栈的数(可能是 1 或 2),当 p1=1p_1 = 1 时,p3p_3 可取 22;当 p1=2p_1 = 2 时,p3p_3 可取 11,故 p3p_3 可能取除 33 之外的所有数,个数为 n−1n-1。

正确答案是 C \boxed{C} 。

进入练习

第 3 题

数据结构
2 分

若将关键字 1, 2, 3, 4, 5, 6, 7 依次插入到初始为空的平衡二叉树T 中,则T 中平衡因子为 0 的分支结点的个数是( )。

A. 0

B. 1

C. 2

D. 3

查看答案与解析收起答案与解析

参考答案:D

题目详解:
首先,我们需要构建一个平衡二叉树(AVL树),并计算每个分支结点的平衡因子。平衡因子定义为左子树的高度减去右子树的高度。平衡因子为 0 0 表示该结点的左右子树高度相等。

关键字依次插入 1,2,3,4,5,6,7 1, 2, 3, 4, 5, 6, 7 到初始为空的平衡二叉树中:

  1. 插入 1 1 :树为 1 1 ,平衡因子为 0 0 (叶子结点不计为分支结点)。
  2. 插入 2 2 :树为 1→2 1 \rightarrow 2 ,1 1 的平衡因子为 −1 -1 。
  3. 插入 3 3 :发生右右不平衡,单旋转调整后树为 2 2 为根,1 1 和 3 3 为左右孩子。2 2 的平衡因子为 0 0 。
  4. 插入 4 4 :树为 2→1,3→4 2 \rightarrow 1, 3 \rightarrow 4 ,3 3 的平衡因子为 −1 -1 ,2 2 的平衡因子为 −1 -1 。
  5. 插入 5 5 :发生右右不平衡,单旋转调整后树为 2→1,4→3,5 2 \rightarrow 1, 4 \rightarrow 3, 5 。4 4 的平衡因子为 0 0 ,2 2 的平衡因子为 −1 -1 。
  6. 插入 6 6 :发生右右不平衡,单旋转调整后树为 4 4 为根,2 2 和 5 5 为左右孩子,2→1,3 2 \rightarrow 1, 3 ,5→6 5 \rightarrow 6 。4 4 的平衡因子为 0 0 ,2 2 的平衡因子为 0 0 ,5 5 的平衡因子为 −1 -1 。
  7. 插入 7 7 :发生右右不平衡,单旋转调整后树为 4 4 为根,2 2 和 6 6 为左右孩子,2→1,3 2 \rightarrow 1, 3 ,6→5,7 6 \rightarrow 5, 7 。4 4 的平衡因子为 0 0 ,2 2 的平衡因子为 0 0 ,6 6 的平衡因子为 0 0 。

最终平衡二叉树的结构如下:

复制代码
4
/ \
 2 6
/ \ / \
 1 3 5 7

分支结点为 2,4,6 2, 4, 6 ,它们的平衡因子均为 0 0 。因此,平衡因子为 0 0 的分支结点个数是 3 3 。

正确答案:D

进入练习

第 4 题

数据结构
2 分

己知三又树T 中 6 个叶结点的权分别是 2, 3, 4, 5, 6, 7,T 的带权(外部)路径长度最小是( )。

A. 27

B. 46

C. 54

D. 56

查看答案与解析收起答案与解析

参考答案:B

题目详解:
要计算三叉树 T T 的最小带权外部路径长度,可以使用类似哈夫曼编码的贪心算法。对于 k k -叉树,每次选择 k k 个最小的权值合并,直到只剩一个节点。具体步骤如下:

  1. 给定的叶结点权值为 2,3,4,5,6,7 2, 3, 4, 5, 6, 7 。

  2. 因为是三叉树(k=3 k = 3 ),每次合并 3 3 个最小的权值。如果节点数不足 3 3 的倍数,可以添加虚拟节点(权值为 0 0 ),但这里可以通过调整合并策略来处理。

  3. 第一次合并:选择最小的 3 3 个权值 2,3,4 2, 3, 4 ,合并为一个新节点,其权值为 2+3+4=9 2 + 3 + 4 = 9 。新的权值列表为 5,6,7,9 5, 6, 7, 9 。

  4. 第二次合并:选择最小的 3 3 个权值 5,6,7 5, 6, 7 ,合并为一个新节点,其权值为 5+6+7=18 5 + 6 + 7 = 18 。新的权值列表为 9,18 9, 18 。

  5. 此时只剩 2 2 个节点,不足 3 3 个,直接合并 9 9 和 18 18 ,得到根节点,其权值为 9+18=27 9 + 18 = 27 。

  6. 计算带权路径长度:每个叶结点的贡献为其权值乘以其到根的路径长度(边数)。具体计算如下:

    • 2,3,4 2, 3, 4 的路径长度为 2 2 (经过两次合并),贡献为 (2+3+4)×2=18 (2 + 3 + 4) \times 2 = 18 。
    • 5,6,7 5, 6, 7 的路径长度为 1 1 (经过一次合并),贡献为 (5+6+7)×1=18 (5 + 6 + 7) \times 1 = 18 。
    • 总带权路径长度为 18+18=46 18 + 18 = 46 。

因此,最小带权外部路径长度为 46 46 。

正确答案:B

进入练习

第 5 题

数据结构
2 分

若X 是后序线索二叉树中的叶结点,且X 存在左兄弟结点Y,则X 的右线索指向的是( )。

A. X 的父结点

B. 以Y 为根的子树的最左下结点

C. X 的左兄弟结点Y

D. 以Y 为根的子树的最右下结点

查看答案与解析收起答案与解析

参考答案:A

题目详解:
在后序线索二叉树中,结点的右线索通常指向其后序后继结点。题目中给定 X X 是叶结点,且 X X 存在左兄弟结点 Y Y 。我们需要分析 X X 的后序后继是什么。

后序遍历的顺序是:左子树 → 右子树 → 根结点。由于 X X 是叶结点,它的后序后继是其父结点。具体分析如下:

  1. 若 X X 是其父结点的右孩子,则 X X 的后序后继是其父结点。
  2. 若 X X 是其父结点的左孩子,且其父结点没有右孩子,则 X X 的后序后继仍然是其父结点。
  3. 若 X X 是其父结点的左孩子,且其父结点有右孩子,则 X X 的后序后继是以其父结点的右孩子为根的子树的最左下结点。但题目中 X X 是叶结点,且存在左兄弟 Y Y ,说明 X X 是其父结点的右孩子(因为 Y Y 是左兄弟),因此 X X 的后序后继是其父结点。

综上所述,X X 的右线索指向的是 X X 的父结点。

正确答案:A

进入练习

第 6 题

数据结构
2 分

在任意一棵非空二叉排序树 T1 中,删除某结点 v 之后形成二叉排序树 T2 ,再将 v 插入 T2 形成二叉排序树T3 。下列关于T1 与T2 的叙述中,正确的是( )。

I. 若v 是T1 的叶结点,则T1 与 T3 不同

II. 若v 是T1 的叶结点,则T1 与T3 相同

III. 若v 不是T1 的叶结点,则T1 与T3 不同

I V. 若v 不是T1 的叶结点,则T1 与T2 相同

A. 仅I、III

B. 仅I、IV

C. 仅II、III

D. 仅II、IV

查看答案与解析收起答案与解析

参考答案:C

题目详解:
在二叉排序树(BST)中,删除和插入结点的操作会影响树的结构。我们需要分析不同情况下 T1 T1 和 T3 T3 的关系:

  1. 若 v v 是 T1 T1 的叶结点:

    • 删除 v v 时,直接移除该结点,不会影响其他结点的结构,因此 T2 T2 是 T1 T1 去掉 v v 后的树。
    • 将 v v 重新插入 T2 T2 时,由于 v v 是叶结点,其插入路径与删除前完全相同,因此 T3 T3 的结构与 T1 T1 完全一致。
    • 结论:T1 T1 与 T3 T3 相同,即 II 正确,I 错误。
  2. 若 v v 不是 T1 T1 的叶结点:

    • 删除 v v 时,需要找到其前驱或后继结点替代 v v 的位置,这会导致树的结构发生变化,因此 T2 T2 与 T1 T1 不同。
    • 将 v v 重新插入 T2 T2 时,由于 v v 不是叶结点,其插入路径可能与删除前不同,因此 T3 T3 的结构与 T1 T1 不同。
    • 结论:T1 T1 与 T3 T3 不同,即 III 正确,IV 错误(因为 T1 T1 与 T2 T2 不同)。

综上,正确的叙述是 II 和 III,对应选项 C。

正确答案:C

进入练习

第 7 题

数据结构
2 分

设图的邻接矩阵A 如下所示。各顶点的度依次是( )。

2013-7

A. 1, 2, 1, 2

B. 2, 2, 1, 1

C. 3, 4, 2, 3

D. 4, 4, 2, 2

查看答案与解析收起答案与解析

参考答案:C

题目详解:
邻接矩阵A 为非对称矩阵,说明图是有向图,度为入度加出度之和。各顶点的度是矩阵中此结点对应的行(对应出度)和列(对应入度)的非零元素之和。

正确答案:C

进入练习

第 8 题

数据结构
2 分

若对如下无向图进行遍历,则下列选项中,不是广度优先遍历的序列的是( )。

2013-8

A. h, c, a, b, d, e, g, f

B. e, a, f, g, b, h, c, d

C. d, b, c, a, h, e, f, g

D. a, b, c, d, h, e, f, g

查看答案与解析收起答案与解析

参考答案:D

题目详解:
此题为送分题。只要掌握DFS和BFS的遍历过程,便能轻易解决。逐个代入,手工模拟,选项 D 是深度优先遍历,而不是广度优先遍历。

正确答案:D

进入练习

第 9 题

数据结构
2 分

下列 AOE 网表示一项包含 8 个活动的工程,通过同时加快若干活动的进度可以缩短整个工程的工期。下列选项中,加快其进度就可以缩短工程工期的是( )。

2013-9

A. c 和 e

B. d 和 c

C. f 和 d

D. f 和 h

查看答案与解析收起答案与解析

参考答案:C

题目详解:
找出 AOE 网的全部关键路径为 (b,d,c,g)、(b,d,e,h) 和 (b,f,h)。根据定义,只有关键路径上的活动时间同时减少时,才能缩短工期,即正确选项中的两条路径必须涵盖在所有关键路径之中。利用关键路径算法可求出图中的关键路径共有三条:(b,d,cg)、(b,d,e,h) 和 (b,f,h)。由此可知,选项 A 和 B 中并不能包含 (b,f,h) 这条路径,选项 C 中,并不能包含 (b,d,c,g) 和 (b,d,e,h) 这两条路径,只有 C 包含了所有的关键路径,因此只有加快 f 和 d 的进度才能缩短工期。

正确答案:C

进入练习

第 10 题

数据结构
2 分

在一棵高度为 2 的 5 阶B 树中,所包含关键字的个数最少是( )。

A. 5

B. 7

C. 8

D. 14

查看答案与解析收起答案与解析

参考答案:A

题目详解:
一棵 m m 阶B树的最小关键字数量可以通过以下规则计算:

  1. 根结点至少包含 1 1 个关键字。
  2. 非根结点至少包含 ⌈m2⌉−1 \lceil \frac{m}{2} \rceil - 1 个关键字。

对于高度为 2 2 的 5 5 阶B树:

  • 根结点至少有 1 1 个关键字。
  • 根结点的每个子结点(第二层结点)至少包含 ⌈52⌉−1=2 \lceil \frac{5}{2} \rceil - 1 = 2 个关键字。
  • 因为 5 5 阶B树每个结点最多有 5 5 个子结点,所以根结点可以有 2 2 到 5 5 个子结点。为了达到最小关键字数量,根结点取 2 2 个子结点。

因此,最小关键字数量为:

1(根结点)+2×2(两个子结点)=51 \text{(根结点)} + 2 \times 2 \text{(两个子结点)} = 5

正确答案:A

进入练习

第 11 题

数据结构
2 分

对给定的关键字序列 110, 119, 007, 911, 114, 120, 122 进行基数排序,则第 2 趟分配收集后得到的关键字序列是( )。

A. 007, 110, 119, 114, 911, 120, 122

B. 007, 110, 119, 114, 911, 122, 120

C. 007, 110, 911, 114, 119, 120, 122

D. 110, 120, 911, 122, 114, 007, 119

查看答案与解析收起答案与解析

参考答案:C

题目详解:
基数排序的第 2 趟分配收集是针对关键字的十位数进行操作。首先,我们需要将关键字序列补齐为三位数: 110,119,007,911,114,120,122 110, 119, 007, 911, 114, 120, 122 。

第 1 趟分配收集(按个位数排序)后的序列为:
110,120,911,122,114,007,119 110, 120, 911, 122, 114, 007, 119

第 2 趟分配收集(按十位数排序)的步骤如下:

  1. 分配:

    • 十位数为 0 0 的关键字: 007 007
    • 十位数为 1 1 的关键字: 110,911,114,119 110, 911, 114, 119
    • 十位数为 2 2 的关键字: 120,122 120, 122
  2. 收集:
    将分配后的桶按顺序合并,得到第 2 趟收集后的序列:
    007,110,911,114,119,120,122 007, 110, 911, 114, 119, 120, 122

因此,第 2 趟分配收集后的关键字序列为 007,110,911,114,119,120,122 007, 110, 911, 114, 119, 120, 122 ,对应选项 C。

正确答案:C

进入练习

第 12 题

计算机组成原理
2 分

某计算机主频为 1.2GHz,其指令分为 4 类,它们在基准程序中所占比例及CPI 如下表所示。

指令类型 所占比例 CPI
A 50% 2
B 20% 3
C 10% 4
D 20% 5

该机的MIPS 数是( )。

A. 100

B. 200

C. 400

D. 600

查看答案与解析收起答案与解析

参考答案:C

题目详解:
首先,我们需要计算该计算机的平均CPI(每条指令的平均时钟周期数)。平均CPI可以通过各类指令的CPI与其所占比例的加权平均来计算:

平均CPI=∑(CPIi×比例i) \text{平均CPI} = \sum (\text{CPI}_i \times \text{比例}_i)

根据题目给出的数据:

平均CPI=(2×0.5)+(3×0.2)+(4×0.1)+(5×0.2) \text{平均CPI} = (2 \times 0.5) + (3 \times 0.2) + (4 \times 0.1) + (5 \times 0.2)

计算各项:

=(1)+(0.6)+(0.4)+(1) = (1) + (0.6) + (0.4) + (1)

=3 = 3

接下来,计算MIPS(每秒百万条指令数)。MIPS的计算公式为:

MIPS=主频(Hz)平均CPI×106 \text{MIPS} = \frac{\text{主频(Hz)}}{\text{平均CPI} \times 10^6}

题目中主频为 1.2GHz,即 1.2×109 1.2 \times 10^9 Hz。代入公式:

MIPS=1.2×1093×106 \text{MIPS} = \frac{1.2 \times 10^9}{3 \times 10^6}

=1.2×1033 = \frac{1.2 \times 10^3}{3}

=0.4×103 = 0.4 \times 10^3

=400 = 400

因此,该机的MIPS数是 400。

正确答案:C

进入练习

第 13 题

计算机组成原理
2 分

若某数采用IEEE754 单精度浮点数格式表示为C640 0000H,则该数的值是( )。

A. -1.5×213

B. -1.5×212

C. -0.5×213

D. -0.5×212

查看答案与解析收起答案与解析

参考答案:A

题目详解:
IEEE754 单精度浮点数格式由 32 32 位组成,分为三个部分:

  1. 符号位 S S (1位):最高位,表示正负。
  2. 阶码 E E (8位):接下来的8位,表示指数部分,采用移码表示(偏移量为 127 127 )。
  3. 尾数 M M (23位):剩下的23位,表示小数部分,隐含最高位为1。

给定的十六进制数为 C6400000H C6400000H ,转换为二进制为:
1100 0110 0100 0000 0000 0000 0000 0000 1100 \ 0110 \ 0100 \ 0000 \ 0000 \ 0000 \ 0000 \ 0000

分解各部分:

  1. 符号位 S=1 S = 1 ,表示负数(但题目问的是绝对值,暂不考虑符号)。
  2. 阶码 E=10001100 E = 10001100 (二进制),转换为十进制为 140 140 。
    • 实际指数 e=E−127=140−127=13 e = E - 127 = 140 - 127 = 13 。
  3. 尾数 M=100 0000 0000 0000 0000 0000 M = 100 \ 0000 \ 0000 \ 0000 \ 0000 \ 0000 (二进制),隐含最高位为1,因此实际尾数为 1.100 0000 0000 0000 0000 0000 1.100 \ 0000 \ 0000 \ 0000 \ 0000 \ 0000 (二进制)。

计算数值:
(−1)S×1.M×2e=1.1×213 (-1)^S \times 1.M \times 2^e = 1.1 \times 2^{13} (二进制)。
1.1 1.1 (二进制)等于 1.5 1.5 (十进制),因此数值为 1.5×213 1.5 \times 2^{13} 。

正确答案:A

进入练习

第 14 题

计算机组成原理
2 分

某字长为 8 位的计算机中,已知整型变量x 和y 的机器数分别为[x]补 = 1 1110100,[y]补 =10110000、 若整型变量z = 2x+y/2,则z 的机器数为( )。

A. 1 1000000

B. 0 0100100

C. 1 0101010

D. 溢出

查看答案与解析收起答案与解析

参考答案:A

题目详解:
x*2,将 x 算术左移一位为 1 1101000;y/2,将 y 算术右移一位为 1 1011000, 均无溢出或丢失精度。补码相加为 1 1101000 + 1 1011000 = 1 1000000, 亦无溢出。

正确答案:A

进入练习

第 15 题

计算机组成原理
2 分

用海明码对长度为 8 位的数据进行检/纠错时,若能纠正 1 位错,则校验位数至少位( )。

A. 2

B. 3

C. 4

D. 5

查看答案与解析收起答案与解析

参考答案:C

题目详解:
海明码是一种用于检错和纠错的编码方法。为了能够检测和纠正 1 位错误,校验位的数量 k k 必须满足海明不等式:

2k≥m+k+1 2^k \geq m + k + 1

其中:

  • m m 是数据位的长度,本题中 m=8 m = 8 。
  • k k 是校验位的最小数量。

将 m=8 m = 8 代入不等式:

2k≥8+k+1 2^k \geq 8 + k + 1

即:

2k≥k+9 2^k \geq k + 9

我们需要找到最小的 k k 满足上述不等式。

尝试 k=3 k = 3 :
23=8 2^3 = 8
8≥3+9 8 \geq 3 + 9 → 8≥12 8 \geq 12 不成立。

尝试 k=4 k = 4 :
24=16 2^4 = 16
16≥4+9 16 \geq 4 + 9 → 16≥13 16 \geq 13 成立。

因此,最小的校验位数量 k k 是 4。

正确答案:C

进入练习

第 16 题

计算机组成原理
2 分

某计算机主存地址空间大小为 256MB,按字节编址,虚拟地址空间大小为 4GB,采用页式存储管理,页面大小为 4KB,TLB(快表)采用全相联映射,有 4 个页表项,内容如下表所示。则对虚拟地址 03FFF180H 进行虚拟地址变换的结果是( )。

2013-16

A. 015 3180H

B. 003 5180H

C. TLB 缺失

D. 缺页

查看答案与解析收起答案与解析

参考答案:A

题目详解:
按字节编址,页面大小为 4KB,页内地址共 12 位。地址空间大小为 4GB,虚拟地址共 32 位,前 20 位为页号。虚拟地址为 03FF F180H,故页号为 03 FFFH,页内地址为 180H。查找页标记 03FFFH 所对应的页表项,页框号为 0153H,页框号与页内地址拼接即为物理地址 0153180H。

正确答案:A

进入练习

第 17 题

计算机组成原理
2 分

假设变址寄存器R 的内容为 1000H,指令中的形式地址为 2000H;地址 1000H 中的内容为2000H,地址 2000H 中的内容为 3000H,地址 3000H 中的内容为 4000H,则变址寻址方式下访问到的操作数是( )。

A. 1000H

B. 2000H

C. 3000H

D. 4000H

查看答案与解析收起答案与解析

参考答案:D

题目详解:
在变址寻址方式下,有效地址(EA)的计算公式为:

EA=(R)+D EA = (R) + D

其中:

  • (R) (R) 表示变址寄存器 R R 中的内容;
  • D D 表示指令中给出的形式地址。

根据题目给出的数据:

  • 变址寄存器 R R 的内容为 1000H 1000H ;
  • 形式地址 D D 为 2000H 2000H 。

因此,有效地址 EA EA 的计算如下:

EA=(R)+D=1000H+2000H=3000H EA = (R) + D = 1000H + 2000H = 3000H

接下来,根据有效地址 3000H 3000H 访问内存,地址 3000H 3000H 中的内容为 4000H 4000H ,这就是变址寻址方式下访问到的操作数。

正确答案:D

进入练习

第 18 题

计算机组成原理
2 分

某CPU 主频为 1.03GHz,采用 4 级指令流水线,每个流水段的执行需要 1 个时钟周期。假定CPU 执行了 100 条指令,在其执行过程中,没有发生任何流水线阻塞,此时流水线的吞吐率为( )。

A. 0.25×109条指令/秒

B. 0.97×109条指令/秒

C. 1.0×109条指令/秒

D. 1.03×109条指令/秒

查看答案与解析收起答案与解析

参考答案:C

题目详解:
首先,我们需要明确几个关键参数和概念:

  1. CPU主频: 1.03GHz 1.03 \text{GHz} ,即 1.03×109Hz 1.03 \times 10^9 \text{Hz} ,表示每秒钟有 1.03×109 1.03 \times 10^9 个时钟周期。

  2. 流水线级数:4 级流水线,每个流水段需要 1 个时钟周期。

  3. 指令数量:100 条指令。

  4. 流水线执行时间:在没有流水线阻塞的情况下,流水线的执行时间可以通过以下公式计算:
    总时间=(流水线级数+指令数量−1)×时钟周期 \text{总时间} = (\text{流水线级数} + \text{指令数量} - 1) \times \text{时钟周期}
    其中,时钟周期 T=1主频=11.03×109秒 T = \frac{1}{\text{主频}} = \frac{1}{1.03 \times 10^9} \text{秒} 。

    代入数值:
    总时间=(4+100−1)×11.03×109=103×11.03×109=1031.03×109=100109=10−7秒 \text{总时间} = (4 + 100 - 1) \times \frac{1}{1.03 \times 10^9} = 103 \times \frac{1}{1.03 \times 10^9} = \frac{103}{1.03 \times 10^9} = \frac{100}{10^9} = 10^{-7} \text{秒}

  5. 吞吐率:吞吐率是指单位时间内执行的指令数量,计算公式为:
    吞吐率=指令数量总时间=10010−7=100×107=1.0×109条指令/秒 \text{吞吐率} = \frac{\text{指令数量}}{\text{总时间}} = \frac{100}{10^{-7}} = 100 \times 10^7 = 1.0 \times 10^9 \text{条指令/秒}

因此,流水线的吞吐率为 1.0×109 1.0 \times 10^9 条指令/秒。

正确答案:C

进入练习

第 19 题

计算机组成原理
2 分

下列选项中,用于设备和设备控制器(I/O 接口)之间互连的接口标准是( )。

A. PCI

B. USB

C. AGP

D. PCI-Express

查看答案与解析收起答案与解析

参考答案:B

题目详解:
设备和设备控制器(I/O 接口)之间互连的接口标准需要满足通用性和广泛兼容性的特点。题目中的选项分析如下:

  • A. PCI:PCI(Peripheral Component Interconnect)是一种用于连接主板和外部设备的总线标准,主要用于扩展卡(如显卡、网卡等),但它不是专门用于设备和设备控制器之间的接口标准。

  • B. USB:USB(Universal Serial Bus)是一种通用串行总线标准,广泛用于设备和设备控制器(如键盘、鼠标、打印机等外设与计算机的连接),具有即插即用、热插拔等特点,是典型的设备和设备控制器之间的接口标准。

  • C. AGP:AGP(Accelerated Graphics Port)是一种专门为显卡设计的接口标准,用于连接显卡和主板,不适用于通用设备和设备控制器的连接。

  • D. PCI-Express:PCI-Express(PCIe)是一种高速串行计算机扩展总线标准,主要用于高性能设备(如显卡、固态硬盘等),但它也不是专门用于设备和设备控制器之间的接口标准。

因此,最符合题目描述的选项是 USB,它是设备和设备控制器之间互连的通用接口标准。

正确答案:B

进入练习

第 20 题

计算机组成原理
2 分

下列选项中,用于提高RAID 可靠性的措施有( )。

I. 磁盘镜像

II. 条带化

III. 奇偶校验

IV. 增加Cache 机制

A. 仅I、II

B. 仅I、III

C. 仅I、III 和IV

D. 仅II、III 和IV

查看答案与解析收起答案与解析

参考答案:B

题目详解:
RAID(Redundant Array of Independent Disks)通过多种技术提高数据可靠性和性能。题目中的选项分析如下:

  1. 磁盘镜像(I):通过将数据完全复制到多个磁盘上实现冗余。如果一块磁盘损坏,可以从镜像磁盘恢复数据,显著提高可靠性。

  2. 条带化(II):将数据分割成块并分散存储在多个磁盘上,主要目的是提高性能(如读写速度),但本身不提供冗余或可靠性保障。

  3. 奇偶校验(III):通过计算数据的奇偶校验信息并存储到专用磁盘或分散存储,可以在磁盘故障时恢复数据,从而提高可靠性。

  4. 增加Cache 机制(IV):主要用于提升读写性能,例如通过缓存频繁访问的数据减少磁盘I/O,但对数据可靠性无直接影响。

综上,**磁盘镜像(I)和奇偶校验(III)**是直接提高RAID可靠性的措施,而条带化(II)和Cache机制(IV)与可靠性无关。因此正确答案为 B. 仅I、III。

正确答案:B

进入练习

第 21 题

计算机组成原理
2 分

某磁盘的转速为 10000rpm,半均寻道时间是 6ms,磁盘传输速率是 20MB/s,磁盘控制器延迟为 0.2ms,读取一个 4KB 的扇区所需的平均时间约为( )。

A. 9ms

B. 9.4ms

C. 12ms

D. 12.4ms

查看答案与解析收起答案与解析

参考答案:B

题目详解:
计算读取一个 4KB 扇区的平均时间需要综合考虑以下几个部分:

  1. 平均寻道时间(Tseek T_{seek} ):题目中给出为 6ms 6ms 。

  2. 平均旋转延迟(Trotation T_{rotation} ):磁盘转速为 10000rpm 10000rpm ,即每分钟 10000 转。旋转延迟是磁盘旋转半圈所需的时间:
    Trotation=12×(60×100010000)ms=3ms T_{rotation} = \frac{1}{2} \times \left( \frac{60 \times 1000}{10000} \right) ms = 3ms

  3. 传输时间(Ttransfer T_{transfer} ):磁盘传输速率为 20MB/s 20MB/s ,读取 4KB 4KB 数据所需时间为:
    Ttransfer=4KB20MB/s=4×102420×1024×1024s≈0.000195s=0.2ms T_{transfer} = \frac{4KB}{20MB/s} = \frac{4 \times 1024}{20 \times 1024 \times 1024} s \approx 0.000195s = 0.2ms

  4. 控制器延迟(Tcontroller T_{controller} ):题目中给出为 0.2ms 0.2ms 。

将以上各部分时间相加,得到总平均时间:
Ttotal=Tseek+Trotation+Ttransfer+Tcontroller=6ms+3ms+0.2ms+0.2ms=9.4ms T_{total} = T_{seek} + T_{rotation} + T_{transfer} + T_{controller} = 6ms + 3ms + 0.2ms + 0.2ms = 9.4ms

因此,正确答案是 B。

进入练习

第 22 题

计算机组成原理
2 分

下列关于中断I/O 方式和DMA 方式比较的叙述中,错误的是( )。

A. 中断I/O 方式请求的是CPU 处理时间,DMA 方式请求的是总线使用权

B. 中断响应发生在一条指令执行结束后,DMA 响应发生在一个总线事务完成后

C. 中断I/O 方式下数据传送通过软件完成,DMA 方式下数据传送由硬件完成

D. 中断I/O 方式适用于所有外部设备,DMA 方式仅适用于快速外部设备

查看答案与解析收起答案与解析

参考答案:D

题目详解:
中断I/O 方式和DMA 方式是两种不同的I/O 数据传输方式,它们的比较如下:

A. 中断I/O 方式通过中断请求CPU 的处理时间,由CPU 负责数据传输;而DMA 方式通过请求总线使用权,由DMA 控制器直接管理数据传输,无需CPU 介入。因此,该选项描述正确。

B. 中断响应通常发生在当前指令执行完成后,CPU 才会处理中断请求;而DMA 响应需要等待当前总线事务(如内存读写)完成,才能获得总线控制权。因此,该选项描述正确。

C. 中断I/O 方式的数据传输由CPU 执行中断服务程序(软件)完成;而DMA 方式的数据传输由DMA 控制器(硬件)直接管理。因此,该选项描述正确。

D. 中断I/O 方式可以适用于所有外部设备,但DMA 方式并不仅限于快速外部设备。DMA 的优势在于减少CPU 开销,适用于需要高速或大批量数据传输的设备,但也可以用于其他设备。因此,该选项描述错误。

正确答案:D

进入练习

第 23 题

操作系统
2 分

用户在删除某文件的过程中,操作系统不可能执行的操作是( )。

A. 删除此文件所在的目录

B. 删除与此文件关联的目录项

C. 删除与此文件对应的文件控制块

D. 释放与此文件关联的内存缓冲区

查看答案与解析收起答案与解析

参考答案:A

题目详解:
此文件所在目录下可能还存在其他文件,因此删除文件时不能(也不需要)删除文件所在的目录,而与此文件关联的目录项和文件控制块需要随着文件一同删除,同时释放文件关联的内存缓冲区。

正确答案:A

进入练习

第 24 题

操作系统
2 分

为支持CD-ROM 中视频文件的快速随机播放,播放性能最好的文件数据块组织方式是( )。

A. 连续结构

B. 链式结构

C. 直接索引结构

D. 多级索引结构

查看答案与解析收起答案与解析

参考答案:A

题目详解:
为了支持CD-ROM中视频文件的快速随机播放,文件数据块的组织方式需要满足以下关键要求:

  1. 快速定位:随机访问时需要能够快速定位到任意数据块的位置。
  2. 最小化寻道时间:CD-ROM的读取头移动(寻道时间)是性能瓶颈,因此需要尽量减少寻道操作。

连续结构(A选项)的特点是将文件数据块顺序存储在连续的物理块中。这种方式的优势在于:

  • 可以通过起始地址 L L 和块大小 S S 直接计算出任意数据块的物理位置,公式为:L+n×S L + n \times S ,其中 n n 是块编号。
  • 无需额外的寻道操作,读取头可以连续读取数据,非常适合顺序访问和随机访问。

链式结构(B选项)通过指针链接数据块,随机访问时需要从头遍历链表,效率低下。直接索引结构(C选项)和多级索引结构(D选项)虽然支持随机访问,但需要多次查找索引表或间接块,增加了额外的I/O开销,不适合CD-ROM的物理特性。

因此,连续结构是最佳选择,能够最大化CD-ROM的播放性能。

正确答案:A

进入练习

第 25 题

操作系统
2 分

用户程序发出磁盘I/O 请求后,系统的处理流程是:用户程序→系统调用处理程序→设备驱动程序→中断处理程序。其中,计算数据所在磁盘的柱面号、磁头号、扇区号的程序是( )。

A. 用户程序

B. 系统调用处理程序

C. 设备驱动程序

D. 中断处理程序

查看答案与解析收起答案与解析

参考答案:C

题目详解:
在磁盘I/O 请求的处理流程中,各模块的功能分工如下:

  1. 用户程序:负责发起I/O 请求,但不涉及底层磁盘物理位置的计算。
  2. 系统调用处理程序:负责将用户程序的请求转换为内核可识别的形式,并传递给下层模块。
  3. 设备驱动程序:是核心模块,负责将逻辑请求转换为物理操作。具体包括:
    • 计算数据所在磁盘的物理位置,即 柱面号 柱面号 (Cylinder)、磁头号 磁头号 (Head) 和 扇区号 扇区号 (Sector)。
    • 向磁盘控制器发送具体指令。
  4. 中断处理程序:负责在I/O 操作完成后通知CPU,处理中断信号。

因此,计算磁盘物理位置(C C 、H H 、S S )的任务是由 设备驱动程序 完成的。

正确答案:C

进入练习

第 26 题

操作系统
2 分

若某文件系统索引结点(inode)中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是( )。

A. 索引结点的总数

B. 间接地址索引的级数

C. 地址项的个数

D. 文件块大小

查看答案与解析收起答案与解析

参考答案:A

题目详解:
在文件系统中,单个文件的最大长度主要取决于以下因素:

  1. 文件块大小 (Block Size \text{Block Size} ):文件被分割成固定大小的块,块大小直接影响文件能寻址的最大空间。例如,若块大小为 4KB 4 \text{KB} ,则更大的块可以支持更大的文件。

  2. 地址项的个数:索引结点中直接地址项和间接地址项的数量决定了文件能引用的块数。直接地址项直接指向数据块,而间接地址项通过多级索引指向数据块。例如,若有 10 10 个直接地址项和 1 1 个一级间接地址项,则文件能引用的总块数为 10+Block SizeAddress Size 10 + \frac{\text{Block Size}}{\text{Address Size}} 。

  3. 间接地址索引的级数:多级索引(如一级、二级、三级间接地址)可以显著增加文件的最大长度。例如,二级间接地址可以寻址 (Block SizeAddress Size)2 \left( \frac{\text{Block Size}}{\text{Address Size}} \right)^2 个块。

  4. 索引结点的总数:这是文件系统中所有文件的索引结点数量,与单个文件的长度无关,因为它只限制文件系统中文件的总数,而不影响单个文件的大小。

因此,与单个文件长度无关的因素是索引结点的总数。

正确答案:A

进入练习

第 27 题

操作系统
2 分

设系统缓冲区和用户工作区均采用单缓冲,从外设读入 1 个数据块到系统缓冲区的时间为 100,从系统缓冲区读入 1 个数据块到用户工作区的时间为 5,对用户工作区中的 1 个数据块进行分析的时间为 90(如下图所示)。进程从外设读入并分析 2 个数据块的最短时间是( )。

2013-27

A. 200

B. 295

C. 300

D. 390

查看答案与解析收起答案与解析

参考答案:C

题目详解:
在单缓冲中,数据块 1 从外设到用户工作区的总时间为 105,在这段时间中,数据块 2 没有进行操作。在数据块 1 进行分析处理 时,数据块 2 从外设到用户工作区的总时间为 105,这段时间是并行的。再加上处理数据块 2 的时间 90,总时间为 300。

正确答案:C

进入练习

第 28 题

操作系统
2 分

下列选项中,会导致用户进程从用户态切换到内核态的操作是( )。

I. 整数除以零

II. sin()函数调用

III. 系统调用

A. 仅I、II

B. 仅I、III

C. 仅II、III

D. I、II、III

查看答案与解析收起答案与解析

参考答案:B

题目详解:
用户态切换到内核态通常发生在以下情况:

  1. 异常/中断:当 CPU 执行指令时发生异常(如除以零),会触发中断机制,切换到内核态处理异常。例如:

    • 整数除以零(I)会导致算术异常,属于上述情况。
  2. 系统调用(III):用户程序主动通过 int 0x80 \text{int 0x80} 或 syscall \text{syscall} 等指令发起系统调用,陷入内核态执行特权操作。

  3. 外部中断:如硬件中断,但与本题无关。

对于选项:

  • sin() \text{sin()} 函数调用(II)是普通的数学库函数,在用户态即可完成,无需切换内核态。

因此,仅 I(异常)和 III(系统调用)会导致态切换。

正确答案:B

进入练习

第 29 题

操作系统
2 分

计算机开机后,操作系统最终被加载到( )。

A. BIOS

B. ROM

C. EPROM

D. RAM

查看答案与解析收起答案与解析

参考答案:D

题目详解:
计算机开机后,操作系统的加载过程如下:

  1. 开机时,BIOS(Basic Input/Output System)存储在 ROM ROM 中,首先被执行。BIOS 进行硬件自检(POST)和初始化。

  2. BIOS 根据启动顺序(如硬盘、U盘等)找到引导设备,并加载引导扇区(Boot Sector)中的引导程序(如 MBR MBR 或 GPT GPT )。

  3. 引导程序进一步加载操作系统的核心部分(如内核文件)。此时,操作系统的代码和数据会被加载到 RAM RAM (随机存取存储器)中。

  4. 操作系统被加载到 RAM RAM 后,CPU 开始执行 RAM RAM 中的指令,完成操作系统的启动过程。

RAM RAM 是易失性存储器,读写速度快,适合作为操作系统和应用程序运行时的临时存储介质。而 BIOS BIOS 、ROM ROM 和 EPROM EPROM 是非易失性存储器,通常用于存储固件或引导程序,而不是操作系统的运行环境。

正确答案:D

进入练习

第 30 题

操作系统
2 分

若用户进程访问内存时产生缺页,则下列选项中,操作系统可能执行的操作是( )。

I. 处理越界错

II. 置换页

III. 分配内存

A. 仅I、II

B. 仅II、III

C. 仅I、III

D. I、II 和III

查看答案与解析收起答案与解析

参考答案:B

题目详解:
当用户进程访问内存时产生缺页,操作系统会执行以下可能操作:

  1. 置换页(II):如果物理内存已满,操作系统需要通过页面置换算法(如 LRU LRU 、 FIFO FIFO 等)选择一个页面换出到磁盘,为新的页面腾出空间。

  2. 分配内存(III):操作系统需要为缺页的进程分配一个空闲的物理页框,并将所需的页面从磁盘加载到该页框中。

选项 I I (处理越界错)与缺页无关,越界错误通常是由于访问了进程地址空间之外的非法内存地址,而缺页是由于访问的页面不在物理内存中。因此,I I 不是缺页处理的操作。

综上所述,正确的操作是 II II 和 III III ,对应选项 B B 。

正确答案:B

进入练习

第 31 题

操作系统
2 分

某系统正在执行三个进程P1 、P2 和P3 ,各进程的计算(CPU)时间和I/O 时间比例如下表所示。为提高系统资源利用率,合理的进程优先级设置应为( )。

2013-31

A. P1 > P2 > P3

B. P3 > P2 > P1

C. P2 > P1 = P3

D. P1 > P2 = P3

查看答案与解析收起答案与解析

参考答案:B

题目详解:
为了合理地设置进程优先级,应该将进程的 CPU 时间和 I/0 时间做综合考虑,对千 CPU 占用时间较少而 I/O 占用时间较多的进程,优先调度能让 I/O 更早地得到使用,提高了系统的资源利用率,显然应该具有更高的优先级。

正确答案:B

进入练习

第 32 题

操作系统
2 分

下列关于银行家算法的叙述中,正确的是( )。

A. 银行家算法可以预防死锁

B. 当系统处于安全状态时,系统中一定无死锁进程

C. 当系统处于不安全状态时,系统中一定会出现死锁进程

D. 银行家算法破坏了死锁必要条件中的“请求和保持”条件

查看答案与解析收起答案与解析

参考答案:B

题目详解:
银行家算法是一种用于避免死锁的资源分配算法,其核心思想是通过动态检查资源分配状态来确保系统始终处于安全状态。下面逐一分析各选项:

A. 银行家算法可以预防死锁
错误。银行家算法属于 死锁避免(Avoidance) 算法,而非 死锁预防(Prevention) 算法。预防死锁是通过破坏死锁的四个必要条件之一实现的,而银行家算法是通过动态检查避免系统进入不安全状态。

B. 当系统处于安全状态时,系统中一定无死锁进程
正确。安全状态的定义是存在一个安全序列,使得所有进程都能顺利完成。如果系统处于安全状态,则说明资源分配合理,不会发生死锁。

C. 当系统处于不安全状态时,系统中一定会出现死锁进程
错误。不安全状态只是 可能 导致死锁,而非必然。系统可能通过后续的资源释放或进程终止重新回到安全状态。

D. 银行家算法破坏了死锁必要条件中的“请求和保持”条件
错误。银行家算法并未破坏任何死锁必要条件,而是通过 避免循环等待 来防止死锁。

正确答案:B

进入练习

第 33 题

计算机网络
2 分

在OSI 参考模型中,下列功能需由应用层的相邻层实现的是( )。

A. 对话管理

B. 数据格式转换

C. 路由选择

D. 可靠数据传输

查看答案与解析收起答案与解析

参考答案:B

题目详解:
在OSI参考模型中,应用层是第7层,其相邻层是第6层表示层。题目问的是由应用层的相邻层(即表示层)实现的功能。我们需要分析各选项的功能归属:

A. 对话管理 - 这是会话层(第5层)的功能,不属于应用层的相邻层。

B. 数据格式转换 - 这是表示层(第6层)的核心功能,包括数据编码、加密、压缩等。表示层是应用层的直接相邻下层,因此这是正确答案。

C. 路由选择 - 这是网络层(第3层)的功能,与应用层相隔较远。

D. 可靠数据传输 - 这是传输层(第4层)的功能,不是应用层的直接相邻层。

表示层的主要职责是处理数据的 表示形式 表示形式 ,包括 数据格式转换 数据格式转换 、 加密/解密 加密/解密 和 数据压缩 数据压缩 等,确保应用层数据能被正确解释。

正确答案:B

进入练习

第 34 题

计算机网络
2 分

若下图为 10BaseT 网卡接收到的信号波形,则该网卡收到的比特串是( )。

2013-34

A. 0011 0110

B. 1010 1101

C. 0101 0010

D. 1100 0101

查看答案与解析收起答案与解析

参考答案:A

题目详解:
需要了解传输介质的命名规则:10BaseT 即 10Mbps 的以太网,采用曼彻斯特编码,将一个码元分成两个相等的间隔,前一个间隔为低电平后一个间隔为高电平表示码元 1;码元 0 正好相反,也可以采用相反的规定。故对应比特串可以是 0011 0110 或 1100 1001。

正确答案:A

进入练习

第 35 题

计算机网络
2 分

主机甲通过 1 个路由器(存储转发方式)与主机乙互联,两段链路的数据传输速率均为 10Mbps,主机甲分别采用报文交换和分组大小为 10kb 的分组交换向主机乙发送 1 个大小为 8Mb(1M =106kb)的报文。若忽略链路传播延迟、分组头开销和分组拆装时间,则两种交换方式完成该报文传输所需的总时间分别为( )。

A. 800ms、1600ms

B. 801ms、1600ms

C. 1600ms、800ms

D. 1600ms、801ms

查看答案与解析收起答案与解析

参考答案:D

题目详解:
首先,我们需要计算报文交换和分组交换的总传输时间。

  1. 报文交换:

    • 在报文交换中,整个报文作为一个整体传输。
    • 报文大小:8Mb=8×106 bits 8 \text{Mb} = 8 \times 10^6 \text{ bits} 。
    • 数据传输速率:10Mbps=10×106 bits/s 10 \text{Mbps} = 10 \times 10^6 \text{ bits/s} 。
    • 传输时间计算公式:传输时间=报文大小数据传输速率 \text{传输时间} = \frac{\text{报文大小}}{\text{数据传输速率}} 。
    • 主机甲到路由器的传输时间:8×10610×106=0.8s=800ms \frac{8 \times 10^6}{10 \times 10^6} = 0.8 \text{s} = 800 \text{ms} 。
    • 路由器到主机乙的传输时间同样为 800ms 800 \text{ms} 。
    • 总时间:800ms+800ms=1600ms 800 \text{ms} + 800 \text{ms} = 1600 \text{ms} 。
  2. 分组交换:

    • 分组大小:10kb=10×103 bits 10 \text{kb} = 10 \times 10^3 \text{ bits} 。
    • 报文总大小:8×106 bits 8 \times 10^6 \text{ bits} 。
    • 分组数量:8×10610×103=800 个分组 \frac{8 \times 10^6}{10 \times 10^3} = 800 \text{ 个分组} 。
    • 每个分组的传输时间:10×10310×106=1ms \frac{10 \times 10^3}{10 \times 10^6} = 1 \text{ms} 。
    • 在分组交换中,第一个分组经过路由器后,第二个分组开始传输,因此总时间为:
      • 第一个分组从主机甲到主机乙的时间:1ms×2=2ms 1 \text{ms} \times 2 = 2 \text{ms} 。
      • 其余 799 799 个分组从主机甲到路由器的传输时间:799×1ms=799ms 799 \times 1 \text{ms} = 799 \text{ms} 。
    • 总时间:2ms+799ms=801ms 2 \text{ms} + 799 \text{ms} = 801 \text{ms} 。

综上所述,报文交换的总时间为 1600ms 1600 \text{ms} ,分组交换的总时间为 801ms 801 \text{ms} 。

正确答案:D

进入练习

第 36 题

计算机网络
2 分

下列介质访问控方法中,可能发生冲突的是( )。

A. CDMA

B. CSMA

C. TDMA

D. FDMA

查看答案与解析收起答案与解析

参考答案:B

题目详解:
介质访问控制(MAC)方法用于管理多个设备共享同一通信介质的访问权限。以下是选项中各方法的分析:

  1. CDMA(码分多址):通过为每个用户分配独特的编码序列来区分信号,所有用户同时使用同一频段,但不会发生冲突。冲突的可能性为 0 0 。

  2. CSMA(载波侦听多路访问):设备在发送数据前先侦听信道是否空闲。如果多个设备同时检测到空闲并发送数据,则会发生冲突。冲突的概率为 Pcollision>0 P_{collision} > 0 。

  3. TDMA(时分多址):将时间划分为固定时隙,每个用户在特定时隙内独占信道,因此不会发生冲突。冲突的可能性为 0 0 。

  4. FDMA(频分多址):将频带划分为多个子频带,每个用户独占一个子频带,因此不会发生冲突。冲突的可能性为 0 0 。

综上,只有 CSMA 可能发生冲突。

正确答案:B

进入练习

第 37 题

计算机网络
2 分

HDLC 协议对 01111100 01111110 组帧后对应的比特串为( )。

A. 01111100 00111110 10

B. 01111100 01111101 01111110

C. 01111100 01111101 0

D. 01111100 01111110 01111101

查看答案与解析收起答案与解析

参考答案:A

题目详解:
HDLC(高级数据链路控制)协议使用比特填充法来实现透明传输,避免数据部分出现与帧标志相同的比特模式。HDLC的帧标志为 01111110 01111110 ,因此在数据部分遇到连续五个 1 1 后会自动插入一个 0 0 ,以防止与帧标志混淆。

原始数据为 01111100 01111110 01111100 \ 01111110 ,需要对其进行比特填充:

  1. 第一个字节 01111100 01111100 :

    • 检查连续的 1 1 的个数,没有达到五个 1 1 ,因此无需填充,保持不变。
    • 结果为 01111100 01111100 。
  2. 第二个字节 01111110 01111110 :

    • 从高位开始检查,遇到连续五个 1 1 (即 11111 11111 )后,需要插入一个 0 0 。
    • 原始比特串为 01111110 01111110 ,在五个 1 1 后插入 0 0 ,变为 011111010 011111010 。
    • 但实际填充时,只填充到连续五个 1 1 后的位置,因此填充后的结果为 01111101 0 01111101 \ 0 (因为最后一个 1 1 不属于连续五个 1 1 的部分)。
  3. 组合填充后的结果:

    • 第一个字节保持不变:01111100 01111100 。
    • 第二个字节填充后为 00111110 10 00111110 \ 10 (填充后拆分)。
    • 因此完整的组帧后比特串为 01111100 00111110 10 01111100 \ 00111110 \ 10 。

正确答案是选项 A 01111100 00111110 10 01111100 \ 00111110 \ 10 。

正确答案:A

进入练习

第 38 题

计算机网络
2 分

对于 100Mbps 的以太网交换机,当输出端口无排队,以直通交换(cut-through switching)方式转发一个以太网帧(不包括前导码)时,引入的转发延迟至少是( )。

A. 0μs

B. 0.48μs

C. 5.12μs

D. 121.44μs

查看答案与解析收起答案与解析

参考答案:B

题目详解:
在直通交换(cut-through switching)方式下,交换机只需要检测到帧的目的地址(6字节)就可以开始转发,而不需要等待整个帧接收完毕。因此,转发延迟主要由读取目的地址所需的时间决定。

计算步骤如下:

  1. 目的地址长度为 6 6 字节,即 48 48 比特。
  2. 链路速率为 100Mbps 100 \text{Mbps} ,即每秒传输 100×106 100 \times 10^6 比特。
  3. 传输 48 48 比特所需的时间为:
    延迟=48比特100×106比特/秒=0.48×10−6秒=0.48μs \text{延迟} = \frac{48 \text{比特}}{100 \times 10^6 \text{比特/秒}} = 0.48 \times 10^{-6} \text{秒} = 0.48 \mu \text{s}

因此,引入的转发延迟至少是 0.48μs 0.48 \mu \text{s} 。

正确答案:B

进入练习

第 39 题

计算机网络
2 分

主机甲与主机乙之间己建立一个TCP 连接,双方持续有数据传输,且数据无差错与丢失。若甲收到 1 个来自乙的TCP 段,该段的序号为 1913、确认序号为 2046、有效载荷为 100 字节,则甲立即发送给乙的TCP 段的序号和确认序号分别是( )。

A. 2046、2012

B. 2046、2013

C. 2047、2012

D. 2047、2013

查看答案与解析收起答案与解析

参考答案:B

题目详解:
在TCP连接中,序号(Sequence Number)和确认序号(Acknowledgment Number)用于确保数据的可靠传输。根据题目描述:

  1. 主机乙发送给主机甲的TCP段信息如下:

    • 序号(Sequence Number)为 1913 1913 ,表示该段的第一个字节的编号是 1913 1913 。
    • 确认序号(Acknowledgment Number)为 2046 2046 ,表示主机乙期望下次收到主机甲发送的数据的第一个字节的编号是 2046 2046 。
    • 有效载荷为 100 100 字节,因此该段的数据字节编号范围为 1913 1913 到 2012 2012 (即 1913+100−1=2012 1913 + 100 - 1 = 2012 )。
  2. 主机甲在收到该段后,需要立即回复一个TCP段,其信息如下:

    • 序号(Sequence Number)应为 2046 2046 ,因为这是主机乙期望的下一个字节编号。
    • 确认序号(Acknowledgment Number)应为 2013 2013 ,表示主机甲期望下次收到主机乙发送的数据的第一个字节的编号是 2013 2013 (即 2012+1 2012 + 1 )。

因此,主机甲发送的TCP段的序号和确认序号分别是 2046 2046 和 2013 2013 。

正确答案:B

进入练习

第 40 题

计算机网络
2 分

下列关于SMTP 协议的叙述中,正确的是( )。

I. 只支持传输 7 比特ASCII 码内容

II. 支持在邮件服务器之间发送邮件

III. 支持从用户代理向邮件服务器发送邮件

I V. 支持从邮件服务器向用户代理发送邮件

A. 仅I、II 和III

B. 仅I、II、IV

C. 仅I、III、IV

D. 仅II、III 和IV

查看答案与解析收起答案与解析

参考答案:A

题目详解:
SMTP(Simple Mail Transfer Protocol)是用于电子邮件传输的协议,其特点和工作方式如下:

  1. I. 只支持传输 7 比特ASCII 码内容
    SMTP 最初设计时仅支持传输 7 7 比特的 ASCII 码内容。对于非 ASCII 内容(如二进制文件或非英文字符),需要通过编码(如 Base64)转换为 ASCII 格式后再传输。因此,这一叙述是正确的。

  2. II. 支持在邮件服务器之间发送邮件
    SMTP 的主要用途之一是在邮件服务器之间传递邮件。例如,当邮件从发送方的邮件服务器(如 example.com example.com )传递到接收方的邮件服务器(如 recipient.net recipient.net )时,使用的是 SMTP 协议。因此,这一叙述是正确的。

  3. III. 支持从用户代理向邮件服务器发送邮件
    用户代理(如 Outlook、Thunderbird 等邮件客户端)使用 SMTP 协议将邮件发送到发件人的邮件服务器。因此,这一叙述是正确的。

  4. IV. 支持从邮件服务器向用户代理发送邮件
    从邮件服务器向用户代理(客户端)传递邮件通常使用 POP3 或 IMAP 协议,而不是 SMTP。因此,这一叙述是错误的。

综上所述,正确的叙述是 I、II 和 III,因此正确答案是 A。

正确答案:A

进入练习

综合应用题

7 题 · 共 66 分

第 41 题

数据结构
9 分

(13 分)已知一个整数序列A= (a0 , a1 , …, an-1 ),其中 0≤a <n(0≤i<n)。若存在:ap1 =ap2 =…apm =x 且m > n / 2(0≤ pk <n,1≤ k ≤m),则称x 为A 的主元素。例如A=(0, 5, 5, 3, 5, 7, 5, 5),则 5 为主元素;又如A =(0, 5, 5, 3, 5, 1, 5, 7),则A 中没有主元素。假设A 中的n 个元素保存在一个一维数组中,请设计一个尽可能高效的算法,找出A 的主元素。若存在主元素,则输出该元素;否则输出-1。要求:

(1)给出算法的基本设计思想。

(2)根据设计思想,采用C、C++或Java 语言描述算法,关键之处给出注释。

(3)说明你所设计算法的时间复杂度和空间复杂度。

查看答案与解析收起答案与解析

题目详解:
1)给出算法的基本设计思想:

算法的策略是从前向后扫描数组元素,标记出一个可能成为主元素的元素 Num。然后重新计数,确认 Num 是否为主元素。

算法可分为以下两步:

① 选取候选的主元素:依次扫描所给数组中的每个整数,将第一个遇到的整数 Num 保存到 c 中,记录 Num 的出现次数为 1;若遇到的下一个整数仍等于 Num,则计数加 1,否则计数减 1;当计数减到 0 时,将遇到的下一个整数保存到 c 中,计数重新记为 1,开始新一轮计数,即从当前位置开始重复上述过程,直到扫描完全部数组元素。

② 判断 c 中元素是否是真正的主元素:再次扫描该数组,统计 c 中元素出现的次数,若大于 2,则为主元素;否则,序列中不存在主元素。

2)算法实现

c 复制代码
int majority(int a[], int n) {
  if (n == 0) {
    return -1;
  }
  // 选取候选元素
  int num = a[0];
  int cnt = 1;

  // 如果主元素存在,会被以下过程筛选出来
  // 但是筛选出来的不一定是主元素
  for (int i = 1; i < n; i++) {
    if (a[i] == num) {
      // 候选元素个数 +1
      cnt++;
    } else {
      // 重新设置候选元素
      cnt--;
      if (cnt == 0) {
        num = a[i];
        cnt = 1;
      }
    }
  }

  // 再判断候选元素是不是主元素
  int m = 0;
  for (int i = 0; i < n; i++) {
    // 统计候选元素出现的次数
    if (a[i] == num) {
      m++;
    }
  }
  if (m > n / 2) {
    return num;
  }
  return -1;
}

【评分说明】

① 若考生设计的算法满足题目的功能要求且正确,则 (1)、(2) 根据所实现算法的效率给分,细则见下表:

时间复杂度 空间复杂度 (1) 得分 (2) 得分
O(n)O(n) O(1)O(1) 4 7
O(n)O(n) O(n)O(n) 4 6
O(nlog2n)O(n log_{2}n) 其他 3 6
≥O(n2)\ge O(n^2) 其他 3 5

② 若在算法的基本设计思想描述中因文字表达没有非常清晰反映出算法思路,但在算法实现中能够清晰看出算法思想且正确的,可参照①的标准给分。

③ 若算法的基本设计思想描述或算法实现中部分正确,可参照①中各种情况的相应给分标准酌情给分。

(3) 说明算法复杂性:

参考答案中实现的程序的时间复杂度为 O(m)O(m),空间复杂度为 O(1)O(1)。

【评分说明】若考生所估计的时间复杂度与空间复杂度与考生所实现的算法一致,可各给 1 分。

【说明】本题如果采用先排好序再统计的方法,只要解答正确,最高可拿 9 分,因此对于统考算法题,去花费大量时间去思考最优解法是得不偿失的。

进入练习

第 42 题

数据结构
9 分

(10 分)设包含 4 个数据元素的集合S={“do”,“for”,“repeat”,“while”},各元素的查找概率依次为 p1 = 0.35,p2 = 0.15,p3 =0.15,p4 =0.35。将S 保存在一个长度为 4 的顺序表中,采用折半查找法,查找成功时的平均查找长度为 22。请回答:

(1)若采用顺序存储结构保存S,且要求平均查找长度更短,则元素应如何排列?应使用何种查找方法?查找成功时的平均查找长度是多少?

(2)若采用链式存储结构保存S,且要求平均查找长度更短,则元素应如何排列?应使用何种查找方法?查找成功时的平均查找长度是多少?

查看答案与解析收起答案与解析

题目详解:
1)折半查找要求元素有序顺序存储,若各个元素的查找概率不同,则折半查找的性能不一定优于顺序查找。采用顺序查找时,元素按其查找概率的降序排列时查找长度最小。

采用顺序存储结构,数据元素按其查找概率降序排列。采用顺序查找方法。

查找成功时的平均查找长度=0.35×1+0.35×2+0.15×3+0.15×4=2.1。

此时,显然查找长度比折半查找的更短。

2)答案一:采用链式存储结构时,只能采用顺序查找,其性能和顺序表一样,类似于上题。数据元素按其查找概率降序排列,构成单链表。采用顺序查找方法。

查找成功时的平均查找长度=0.35×1+0.35×2+0.15×3+0.15×4=2.1。

答案二:还可以构造成二叉排序树的形式。采用二叉链表的存储结构,构造二叉排序树,元素的存储方式见下图。采用二叉排序树的查找方法。

image

查找成功时的平均查找长度=0.15×1+0.35×2+0.35×2+0.15×3=2.0。

【评分说明】

①若考生以实际元素表示“降序排列”,同样给分。

②若考生正确求出与其查找方法对应的查找成功时的平均查找长度,给 2 分;若计算过 程正确,但结果错误,给 1 分。

③考生给出其他更高效的查找方法且正确,可参照评分标准给分。

进入练习

第 43 题

计算机组成原理
11 分

(9 分)某 32 位计算机,CPU 主频为 800MHz,Cache 命中时的CPI 为 4,Cache 块大小为 32 字节;主存采用 8 体交叉存储方式,每个体的存储字长为 32 位、存储周期为 40ns;存储器总线宽度为 32 位,总线时钟频率为 200MHz,支持突发传送总线事务。每次读突发传送总线事务的过程包括:送首地址和命令、存储器准备数据、传送数据。每次突发传送 32 字节,传送地址或 32 位数据均需要一个总线时钟周期。请回答下列问题,要求给出理由或计算过程。

(1)CPU 和总线的时钟周期各为多少?总线的带宽(即最大数据传输率)为多少?

(2)Cache 缺失时,需要用几个读突发传送总线事务来完成一个主存块的读取?

(3)存储器总线完成一次读突发传送总线事务所需的时间是多少?

(4)若程序 BP 执行过程中,共执行了 100 条指令,平均每条指令需进行 1.2 次访存,Cache 缺失率为 5%,不考虑替换等开销,则BP 的CPU 执行时间是多少?

查看答案与解析收起答案与解析

题目详解:
1)CPU 的时钟周期是主频的倒数,即 1/800MHz=1.25ns。

总线的时钟周期是总线频率的倒数,即 1/200MHz=5ns。

总线宽度为 32 位,故总线带宽为 4B×200MHz=800MB/s 或 4B/5ns=800MB/s。

2)Cache 块大小是 32B,因此 Cache 缺失时需要一个读突发传送总线事务读取一个主存块。

3)一次读突发总线传输事务包括一次地址传送和 32B 数据传送:用 1 个总线时钟周期传输地址;每隔 40ns/8=5ns 启动一个体工作(各进行 1 次存取),第一个体读数据花费 40ns,之后数据存取与数据传输重叠;用 8 个总线时钟周期传输数据。读突发传送总线事务时间:5ns+40s+8×5ns=85ns

4)BP 的 CPU 执行时间包括 Cache 命中时的指令执行时间和 Cache 缺失时带来的额外开销。命中时的指令执行时间:100×4×1.25ns=500ns。 指令执行过程中 Cache 缺失时的额外开销:1.2×100×5%×85ns=510ns。BP 的 CPU 执行时间:500ns+510ns=1010ns。

【评分说明】

① 执行时间采用如下公式计算时,可酌情给分。

执行时间=指令条数×CPI×时钟周期×命中率 + 访存次数×缺失率×缺失损失

② 计算公式正确但运算结果不正确时,可酌情给分。

进入练习

第 44 题

计算机组成原理
12 分

(14 分)某计算机采用 16 位定长指令字格式,其CPU 中有一个标志寄存器,其中包含进位/借位标志CF、零标志ZF 和符号标志NF。假定为该机设计了条件转移指令,其格式如下:

2013-44

其中,00000 为操作码OP;C、Z 和N 分别为CF、ZF 和NF 的对应检测位,某检测位为 1 时表示需检测对应标志位,需检测的标志位中只要有一个为 1 就转移,否则不转移。例如,若C=1 ,Z=0,N=1,则需检测CF 和NF 的值,当CF=1或NF=1 时发生转移;OFFSET 是相对偏移量,用补码表示。转移执行时,转移目标地址为(PC) + 2+ 2×OFFSET;顺序执行时,下条指令地址为(PC)+2。请回答下列问题。

(1)该计算机存储器按字节编址还是按字编址?该条件转移指令向后(反向)最多可跳转多少条指令?

(2)某条件转移指令的地址为 200CH,指令内容如下图所示,若该指令执行时CF=0 ,ZF=0,NF=1,则该指令执行后PC 的值是多少?若该指令执行时CF = 1,ZF=0,NF=0,则该指令执行后PC 的值又是多少?请给出计算过程。

2-14-44a

(3)实现“无符号数比较小于等于时转移”功能的指令中,C、Z 和N 应各是什么?

(4)以下是该指令对应的数据通路示意图,要求给出图中部件①~③的名称或功能说明。

2013-44b
查看答案与解析收起答案与解析

题目详解:
1)因为指令长度为 16 位,且下条指令地址为 (PC)+2,故编址单位是字节。

偏移量 OFFSET 为 8 位补码,范围为 -128~127,故相对于当前条件转移指令,向后最多可跳转 127 条指令。

【评分说明】若正确给出 OFFSET 的取值范围,则酌情给分。

2)指令中 C=0,Z=1,N=1,故应根据 ZF 和 NT 的值来判断是否转移。当 CF=0,ZF=0,NF=1 时,需转移。己知指令中偏移量为 11100011B=E3H,符号扩展后为 FFE3H,左移一位(乘 2)后为 FFC6H,故 PC 的值(即转移目标地址)为 200CH+2+FFC6H=1FD4H。当 CF=1,ZF=0,NF=0 时不转移。PC 的值为 200CH+2=200EH。

3)指令中的 C、Z 和 N 应分别设置为 C=Z=1,N=0,进行数之间的大小比较通常是对两个数进行减法,而因为是无符号数比较小于等于时转移,即两个数相减结果为 0 或者负数都应该转移,若是 0,则 ZF 标志应当为 1,所以是负数,则借位标志应该为 1,而无符号数并不涉及符号标志 NF。

4)部件①用于存放当前指令,不难得出为指令寄存器;多路选择器根据符号标志 C/Z/N 来决定下一条指令的地址是 PC+2 还是 PC+2+2×OFFSET,故多路选择器左边线上的结果应该是 PC+2+2×OFFSET。根据运算的先后顺序以及与 PC+2 的连接,部件②用于左移一位实现乘 2,为移位寄存器。部件③用于 PC+2 和 2×OFFSET 相加,为加法器。

部件②:移位寄存器(用于左移一位);部件③:加法器(地址相加)。

【评分说明】合理给出部件名称或功能说明均给分。

进入练习

第 45 题

操作系统
8 分

(7 分)某博物馆最多可容纳 500 人同时参观,有一个出入口,该出入口一次仅允许一个人通过。

参观者的活动描述如下:

复制代码
cobegin
    参观者进程i:
    {
    …
    进门;
    …
    参观;
    …
    出门;
    …
    }
coend

请添加必要的信号量和P、V(或wait()、signal())操作,以实现上述过程中的互斥与同步。要求写出完整的过程,说明信号量的含义并赋初值。

查看答案与解析收起答案与解析

题目详解:
出入口一次仅允许一个人通过,设置互斥信号量 mutex, 初值为 1。博物馆最多可同时容 纳 500 人,故设置信号量 empty, 初值为 500。

c 复制代码
semaphore empty = 500;
semaphore mutex = 1;

visitor() {
    P(empty);
    P(mutex);
    进门;
    V(mutex);
    参观;
    P(mutex);
    出门;
    V(mutex);
    V(empty);
}

【评分说明】

①信号量初值给 1 分,说明含义给 1 分,两个信号量的初值和含义共 4 分。

②对 mutex 的 P、V 操作正确给 2 分。

③对 empty 的 P、V 操作正确给 1 分。

④其他答案,参照①~③的标准给分。

进入练习

第 46 题

操作系统
8 分

(8 分)某计算机主存按字节编址,逻辑地址和物理地址都是 32 位,页表项大小为 4 字节。请回答下列问题。

(1)若使用一级页表的分页存储管理方式,逻辑地址结构如下:页号(20 位) 页内偏移量(12 位)则页的大小是多少字节?页表最大占用多少字节?

2013-46

(2)若使用二级页表的分页存储管理方式,逻辑地址结构如下:页目录号(10 位) 页表索引(10 位) 页内偏移量(12 位)设逻辑地址为LA,请分别给出其对应的页目录号和页表索引的表达式。

2013-46a

(3)采用(1)中的分页存储管理方式,一个代码段起始逻辑地址为 0000 8000H,其长度为8KB,被装载到从物理地址 0090 0000H 开始的连续主存空间中。页表从主存 0020 0000H 开始的物理地址处连续存放,如下图所示(地址大小自下向上递增)。请计算出该代码段对应的两个页表项的物理地址、这两个页表项中的页框号以及代码页面 2 的起始物理地址。

2013-46b
查看答案与解析收起答案与解析

题目详解:
1)因为主存按字节编址,页内偏移量是 12 位,所以页大小为 212B=44KB2^{12}B=44KB。(1 分)

页表项数为 2202^{20},故该一级页表最大为 220×4B=44MB2^{20}×4B = 44 MB。(2 分)

2)页目录号可表示为:(((unsigned int)(LA)) >> 22) & 0x3FF。(1 分)

页表索引可表示为:(((unsigned int)(LA)) >> 12) & 0x3FF。(1 分)

【评分说明】

①页目录号也可以写成 (unsigned int)(LA) > 22;如果两个表达式没有对 LA 进行类型转换,同样给分。

②如果用除法和其他开销很大的运算方法,但对基本原理是理解的,同样给分。

③参考答案给出的是 C 语言的描述,用其他语言(包括自然语言)正确地表述了,同样给分。

3)代码页面 1 的逻辑地址为 00008000H,表明其位于第 8 个页的位置,对应页表中的第 8 个页表项,所以第 8 个页表项的物理地址 = 页表起始地址 + 8×页表项的字节数 = 00200000H + 8×4 = 00200020H。由此可得如下图所示的答案。(3 分)

image

【评分说明】共 5 个答数。物理地址 1 和物理地址 2 共 1 分;页框号 1 和页框号 2 共 1 分;物理地址 3 给 1 分。

进入练习

第 47 题

计算机网络
9 分

(9 分)假设Internet 的两个自治系统构成的网络如题 47 图所示,自治系统ASI 由路由器R1连接两个子网构成;自治系统AS2 由路由器R2、R3 互联并连接 3 个子网构成。各子网地址、R2的接口名、R1与R3 的部分接口IP 地址如题 47 图所示。请回答下列问题。

2013-47

(1)假设路由表结构如下表所示。请利用路由聚合技术,给出R2 的路由表,要求包括到达题 47图中所有子网的路由,且路由表中的路由项尽可能少。

2013-47a

(2)若R2 收到一个目的IP 地址为 194.17.20.200 的IP 分组,R2 会通过哪个接口转发该IP 分组?

(3)R1与R2 之间利用哪个路由协议交换路由信息?该路由协议的报文被封装到哪个协议的分组中进行传输?

查看答案与解析收起答案与解析

题目详解:
1)要求 R2 的路由表能到达图中所有的子网,且路由项尽可能的少,则应对每个路由接口的子网进行聚合。在 AS1 中,子网 153.14.5.0/25 和子网 153.14.5.128/25 可以聚合为子网 153.14.5.0/24;在 AS2 中,子网 194.17.20.0/25 和子网 194.17.21.0/24 可以聚合为子网 194.17.20.0/23;子网 194.17.20.128/25 单独连接到 R2 的接口 E0。(6 分)

于是可以得到 R2 的路由表如下:

目的网络 下一跳 接口
153.14.5.0/24 153.14.3.2 E0
194.17.20.0/23 194.17.24.2 S1
194.17.20.128/25 - EO

【评分说明】①每正确解答 1 个路由项,给 2 分,共 6 分。每条路由项正确解答目的网络 IP 地址但无前缀长度,给 0.5 分,正确解答前缀长度给 0.5 分,正确解答下一跳 IP 地址给 0.5 分,正确解答接口给 0.5 分。

②路由项解答部分正确或路由项多于 3 条,可酌情给分。

2)该 IP 分组的目的 P 地址 194.17.20.200 与路由表中 194.17.20.0/23 和 194.17.20.128/25 两个路由表项均匹配,根据最长匹配原则,R2 将通过 E0 接口转发该 P 分组。(1 分)

3)R1 和 R2 属于不同的自治系统,故应使用边界网关协议 BGP(或 BGP4)交换路由信息;(1 分)BGP 是应用层协议,它的报文被封装到 TCP 协议段中进行传输。(1 分)

【评分说明】若考生解答为 EGP 协议,且正确解答 EGP 采用 IP 协议进行通信,亦给分。

进入练习