2023 全国硕士研究生入学统一考试

计算机学科专业基础2023 真题档案

47道题150满分
00:00
返回整卷
BOK 组成原理
组成原理

2023-44

综合题9 分

补充条件(来源:2023 年第 43 题)

已知计算机 M 字长为 32 位,按字节编址,采用请求调页策略的虚拟存储管理方式,虚拟地址为 32 位,页大小为 4 KB。现有 C 语言程序段如下:

int a[24][64];
/* …… */
for (i = 0; i < 24; i++)
    for (j = 0; j < 64; j++)
        a[i][j] = 10;

已知二维数组 a 按行优先存放,在虚拟地址空间中分配的起始地址为 0042 2000H,sizeof(int) = 4,假定在 M 上执行上述程序段之前数组 a 不在主存,且在该程序段执行过程中不会发生页面置换。

本题题干

题 43 中的 C 程序段在计算机 M 上的部分机器级代码如下,每个机器级代码行中依次包含指令序号、虚拟地址、机器指令和汇编指令。

题目配图

请回答下列问题。
1)第 20 条指令的虚拟地址是多少?

2)已知第 2 条 jmp 和第 7 条 jge 都是跳转指令,其操作码分别是 EBH 和 7DH,跳转目标地址分别为 0040 1084H、0040 10BCH,这两条指令都采用什么寻址方式?给出第 2 条指令 jmp 的跳转目标地址计算过程。

3)已知第 19 条 mov 指令的功能为 “a[i][j]←10”,其中 ecx 和 edx 为寄存器名,0042 2000H 是数组 a 的首地址,指令中原操作数采用什么寻址方式?已知 edx 中存放的是变量 j,ecx 中存放的是什么?根据该指令的机器码判断计算机 M 采用的是大端还是小端方式。

4)第一次执行第 19 条指令时,取指令过程中是否会发生缺页异常?为什么?

44