中南大学《编译原理》课程作业(在线作业)三及参考答案 下载本文

(一) 单选题

1. 为了管理过程在一次执行中所需要的信息,使用一个连续的存储区来管理,这个区

(块) 叫做一个()。

(A) 结构体记录

(B) 数组记录

(C) 管理信息记录 (D) 活动记录

参考答案: (D)

2. 考虑下面的程序: … procedure p(x, y, z); begin x:=x+y; z:=z*z; end begin

A:=2; B:=A*2; P(A, B, B); Print A, B end. 若参数传递的方式采用传地址时,程序执行后输出 A, B的值是()。

(A) A=4,B=14

(B) A=4,B=16 (C) A=6,B=14 (D) A=6,B=16

参考答案: (D)

3. 在运行存储空间的划分中有一个单独的区域叫做堆,留给存放()。

(A) 局部数据

1 / 20

(B) 静态数据 (C) 全局数据 (D) 动态数据

参考答案: (D)

4. 所谓得结果就是每个形式参数对应两个单元,第一个单元存放实参的地址,第二个

单元存放实参的值。在过程体中对形参的任何引用或赋值都被处理成对第二个形式单元的(),但在过程工作完成返回之前必须把第二个单元的内容存放到第一个单元所指的那个实参单元之中。

(A) 间接访问

(B) 指针访问 (C) 直接访问

(D) 间接的间接访问

参考答案: (C)

5. 一个过程相应的DISPLAY表的内容为()。

(A) 现行活动记录地址

(B) 现行活动记录地址和所有外层最新活动记录的地址传递规则 (C) 所有外层最新活动记录的地址 (D) 以上都不对

2 / 20

参考答案: (B)

6. 以下程序 (1) J:=1 (2) A:=0 (3) R:=I-1 (4) C:=B+J (5) A:=C*A (6) if J=20 goto

(9) (7) J:=J+1 (8) goto (3) (9) 可划出()个基本块。

(A) 4

(B) 3 (C) 2 (D) 5

参考答案: (A)

7. 通过DISPLAY表访问非局部变量和比沿着静态链访问非局部变量()。

(A) 速度要慢

(B) 容易

(C) 速度要快 (D) 不容易

参考答案: (C)

8. 对于数据空间的存贮分配,FORTRAN采用()策略。

(A) 动态存贮分配

3 / 20

(B) 栈式存贮分配 (C) 堆式存贮分配 (D) 静态存贮分配

参考答案: (D)

9. 每条指令的执行代价定义为()。

(A) 指令访问主存次数

(B) 指令访问主存次数加1 (C) 指令访问主存次数加2 (D) 指令访问主存次数加3

参考答案: (B)

10. 如果在一个基本块中,四元式i对A定值,四元式j要引用A值,而从i到j之间

没有A的其它定值,则称j是四元式i的变量A的()。

(A) 待用信息

(B) 已用信息 (C) 使用信息 (D) 必用信息

参考答案: (A)

4 / 20