编译原理模拟试卷及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模拟试题四

发表日期:2009年6月14日出处:admin 作者:编译原理课程小组编辑:admin 阅读数:406

一、选择题(50分,每空2分, 无特别说明的均为单选题)

1、在使用高级语言编程时,首先可通过编译程序发现源程序的全部错误。

a. 语法

b. 语义

c. 语用

d. 运行

2、要在某台机器上为某种语言构造编译程序,必须掌握下述那些内容____。

a. 汇编语言

b. 高级语言

c. 源语言

d. 目标语言

e. 程序设计方法学

f. 机器语言

g. 编译方法

①abf ②afg ③cdg ④efg

3、用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行。这种说法_____。

a. 正确

b. 不正确

c. 不一定

d. 都不对

4、文法G所描述的语言是_____的集合。

a. 文法G的字汇表V中所有符号组成的符号串

b. 文法G的字汇表V的闭包V*中的所有符号串

c. 由文法的识别符号推出的所有符号串

d. 由文法的识别符号推出的所有终结符号串

5、给定文法, A::= bA | cc, 下面哪些符号串可由其推导出_____。

①cc ②b*cc ③b*cbcc ④bccbcc ⑤bbbcc

可选项有:

a.①

b.①③④⑤

c.①⑤

d.①②⑤

e.①②③④⑤

6、一个语言的文法是_____。

a.有限的

b.不唯一的

c.唯一的

7、若一个文法是递归的,则它所产生语言的句子个数______。

a.必定是无穷的

b.是有限个的

c.根据具体情况而定

8、语法分析常用的方法是_____。

①自顶向下②自底向上③自左向右④自右向左

可选项有:

a.①②③④

b.①②

c.③④

d.①②③

9、LR(k)方法是______。

a. 从左到右分析,每次走k步的一种编译方法。

b. 从左到右分析,共经过k步的一种编译方法。

c. 从左到右分析,每次向前预测k步的一种编译方法。

d. 从左到右分析,是否归约句柄要向后看k个输入符号的一种编译方法。10(选2个)、在编译过程中,符号表的主要作用是_____。

a. 帮助错误处理

b. 辅助语法错误的检查

c. 辅助语义的正确性检查

d. 辅助代码生成

e. 辅助对目标程序的优化

11、LL(1)文法的条件是______。

a. 对形如U::=x1 | x2 | …| xn 的规则,要求First(xi)∩First(xj)=Φ,(i≠j);

b. 对形如U::=x1 | x2 | …| xn 的规则,若xi=>*ε, 则要求First(xj)∩Follow(U)=Φ,(i≠j)

c. a 和b

d. 都不是

12、LR(k)文法_______二义性的。

a.都是

b.都不是

c.不一定都是

13、描述语言L= { ambn | n≥m≥1 } 的文法为_____。

a. Z::=Abb A::=aA | a B::=bB | b

b. Z::=AB | b A::=Aa | a B::=aBb | b

c. Z::=Ab A::=aAb | a

d. Z::=aAb A::=Ab | aAb | ε

14、一个句型中的可归前缀为______。

a.短语

b.简单短语

c.句柄

d.规范前缀,且句柄位于该规范前缀的后端

15、Chmosky的3型语言是这样一种语言,其产生式限制为____。

a.A::= π

b. A::=a A::=aB

c.α::=β

d. αAβ::=απβ

16、高级语言编译程序常用的语法分析方法中,LL分析法属于______分析方法。

a.自左至右

b.自顶向下

c.自底向上

d.自右至左

17、LL(1) 分析法的名字中,第一个“L”的含义是_____,第二个“L”的含义是______。

a.自左至右

b.自顶向下

c.自底向上

d.自右至左

18、设有文法G[S]: S-> S*S | S+S | (S) | a, 该文法_____二义性文法。

a. 是

b. 不是

c. 不一定

19、动态存储分配时,可以采用的分配方法有______。

(1) 过程为单位的栈式动态存储分配

(2) 堆存储分配

(3) 最佳分配方法

a. (1)

b. (2)

c. (2)(3)

d. (1)(2)(3)

20. 过程调用时,参数的传递方法通常有________。

(1) 传值(2) 传地址(3) 传结果(4) 传名

a. (1)(2)

b.(1)(2)(3)

c. (1)(2)(4)

d. (1)(2)(3)(4)

21. 在编译方法中, 动态存储分配的含义是什么? 可选项有____.

a.在运行阶段对源程序中的量进行分配

b.在编译阶段对源程序中的量进行分配

c.在编译阶段对源程序中的量进行分配,在运行时这些量的地址可以根据需要改变

d.以上都不正确

22. 过程信息表中至少应该包括有_________。

(1) 过程名(2) 过程的静态层次(3) 过程入口地址

(4) 过程首部在源程序中的行号(5) 有关过程参数的信息

可选项有:

a.(1)(2)(3)

b.(1)(3)(4)

c.(1)(2)(3)(4)

d.(1)(3)(5)

e.(1)(2)(3)(4)(5)

23. 程序基本块是指________。

(1) 一个子程序

(2) 一个仅有一个入口和一个出口的语句

(3) 一个没有嵌套的程序段

(4) 一组顺序执行的程序段,仅有一个入口和一个出口

可选项有:

a. (1)

b. (2)

c. (3)

d. (4)

e. (1)(4)

f. (1)(2)

二、(15分)给定文法G[E] 如下所示:

相关文档
最新文档