编译原理考试试卷

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

一、填空题(每空2分,共30分)

1、编译程序的整个过程可以从逻辑上划分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成等几个阶段,另外还有两个重要的工作是表格管理和出错处理

2、规范规约中的可归约串是句柄,算符优先分析中的可归约串是最左素短语。

3、语法分析方法主要可分为自顶向下和自底向上两大类。

4、LR(0)文法的项目集中不会出现移进-归约冲突和归约-归约冲突。

5、数据空间的动存态储分配方式可分为栈式和堆式两种。

6、编译程序是指能将源语言程序翻译成目标语言程序的程序。

7、确定有穷自动机DFA是NFA 的一个特例。

8、表达式(a+b)*c 的逆波兰表示为ab+c* 。

二、选择题(每题2分,共20分)

1、L R语法分析栈中存放的状态是识别 B 的DFA状态。

A、前缀

B、可归前缀

C、项目

D、句柄

2、 D 不可能是目标代码。

A、汇编指令代码

B、可重定位指令代码

C、绝对机器指令代码

D、中间代码

3、一个控制流程图就是具有 C 的有向图

A、唯一入口结点

B、唯一出口结点

C、唯一首结点

D、唯一尾结点

4、设有文法G[S]:S→b|bB B→bS ,则该文法所描述的语言是 C 。

A、L(G)={b i|i≥0}

B、L(G)={b2i|i≥0}

C、L(G)={b2i+1|i≥0}

D、L(G)={b2i+1|i≥1}

5、把汇编语言程序翻译成机器可执行的目标程序的工作是由

B 完成的。

A、编译器

B、汇编器

C、解释器

D、预处理器

6、在目标代码生成阶段,符号表用于 D 。

A、目标代码生成

B、语义检查

C、语法检查

D、预处理器地址分配0

7、规范归约是指 B 。

A、最左推导的逆过程

B、最右推导的逆过程

C、规范推导

D、最左归约逆过程

5.文法的二义性和语言的二义性是两个不同的概念。……………………… …()6.一个LL( l)文法一定是无二义的。…………………………………………… …

( )

7.在规范规约中用最左素短语来刻划可归约串。………………… ……………

( )

8.目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。…………… ( ) 9.编译程序是对汇编程序的翻译。……………………………………()

三、简答题(每题5分,共15分)

1、简述栈式存储管理策略;

2、何谓DAG;

3、何谓文法的二义性;

四、给出下述文法对应的正规式(7分)

S→ 0A| 1B

A→1S | 1

B→0S | 0

五、已知文法G(E):

E→T | E+T | E-T

T→F | T*F | T/F

F→(E) | i

证明E+T*F是该文法的一个句型,并指出该句型的所有短语、直接短语和句柄。(8分)

七、设有文法G[E]:

E (E) |ε

试判断该文法是否为SLR(1)文法,若不是,请说明理由;若是请构造SLR(1)分析表。(10分)

参考答案

一、填空题(1X20=20分)

1.词法分析、语法分析、代码优化

2.自上而下、自下而上

3.五元组、DFA=(K ,∑, M, S, Z)

4.任何一步都是对中最右非终结符进行替换

5.分析一个文法的句子结构

6.相邻、算符

MUL R1,R0 LD R0,D ADD R0,1 ST R1,M LD R1,E SUB R0,F MUL R0,R1 LD R1,M DIV R1,R0 ST R1,W

相关文档
最新文档