华南农业大学编译原理题库

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

文案

华南农业大学期末考试题库(含参考答案)

考试科目: 编译原理 考试时间: 120 分钟

学号 姓名 年级专业

一、本题共6小题,每小题5分,共30

分。

1、写出下面右线性正规文法所对应的正规式。

2、给出下面语言集合的上下文无关文法。(2010 2014

L 1={ a n b m

2、为正规集L 2={a n b m c k | n ≥1,m ≥1,k ≥1}构造一右线性正规文法。(2010)

3、按照编译过程的5个阶段得到编译程序的逻辑结构框图如下:

得分

文案

文案

4、简述编译过程的5个阶段及各阶段的主要功能。(多年必考)

6、简述语法制导翻译技术的基本思想。

(2013)

7、简述算符优先分析方法。(2013)

9、判断下图FA 是NFA 还是DFA ,并用正规式来描述它所识别的语言。

文案

10、判断下图FA 是NFA 还是DFA ,并用正规式来描述它所识别的语言。(2011)

11、有文法及其语义子程序如下:

S →T { print(T.h) }

T → T 1*E { T.h= T 1.h +E.h } T → E { T.h=E.h } E →(T ) {E.h= T.h} E → a { E.h= 1 }

采用移进归约的分析方法,当分析器的输入为(a)*(a*a) 时,画出其语法树(可以带注释、也可以不带注释),并求输出的结果。

12(2014)、空心圆柱体的表面积计算公式如 S=2*3.1416*(R+r)*(R-r)+ 2*3.1416*(R+r)*h

采用LR 语法制导翻译技术生成相应的三地址代码,然后运用DAG 对其进行局部优化,试写出能生成最优目标代码的优化后的三地址代码序列。

文案

13、试求表达式A+B*(-C)+B/(-C)对应的后缀式和三地址代码。(2011)

14、考虑如下的三地址语句序列:(2011)

(1). 将该代码序列划分成基本块,并给每个基本块一个序号; (2). 画出该代码序列的流图,每个基本块用(1)的序号表示; (3). 若有循环,列出构成循环的节点(

基本块)。(10分) (1).如图分成四个基本块B1、B2、B3、B4 (2).流图:

(3).构成循环的基本块是{B2, B3}

15、有翻译模式如下:

S’ →S { print(S.h) } S → a { S.h=0 } S →(T ) {S.h= T.h+1} T → T 1,S { T.h= T 1.h +S.h } T → S { T.h= S.h }

文案

采用移进归约的分析方法,当分析器的输入为(a,(a)) 时,画出其语法树(可以带注释、也可以不带注释),并求输出的结果。(2011)

得分

二、构造识别下列语言的最小DFA(共20分):

1、正规式1(0|1)* 0 | 0;(7分)

文案

文案

构造识别下列语言的最小DFA

(共15分):(2011)

得分

3、

构造下列正规式相应的DFA(用状态转换图表示)(15)(2008)(7)

(8)

(9)

(7)

(8)(9)

文案

得分

7、将下图NFA确定化。(10分)(2013)

8、将下图DFA化简。(5分)(2013)

文案

文案

9.有文法如下:

S → a | b | (T) T → TeS | S

(10分)

10.有定义算术表达式的文法如下:(2011)

E → E+T | E-T | T T → T*

F | T/F | F F → P ↑F | P P → (E) | i

构造句型E+T*P ↑P-i 的语法树;并指出该句型的所有短语、直接短语、素短

语、句柄。(10分)

11、有文法如下:(共15分) S → aSe | ae

(1) 构造文法的识别规范句型活前缀的DFA ;

(2) 分别写出上一步DFA 各状态所识别的活前缀;

(3) 给出符号串????的LR 移进-归约过程(包括状态栈、符号栈、输入串、分析动作)。

(2分)短语:(Sebe(a))、Sebe(a)、

Seb 、(a)、S 、b 、a

(1分)直接短语:S 、b 、a

(1分)素短语:b 、a

(1分)句柄:S

(1).(6分)拓广文法并给产生式编号:S’→S ①S→ aSe ②S→ae

文案

文案

12.有定义算术表达式的文法如下:

E → E+T | E-T | T T → T*

F | T/F | F F → P ↑F | P P → (E) | i

构造句型P ↑i*(E+F-T)的语法树;并指出该句型所有的短语、直接短语、素短语以及句柄。(10分)

13、给出下面语言的相应文法:(10)(2008)

L 1={a 2n+1 b n+1 | n ≥1} L 2={a n b m+n a m | n ≥1,m ≥0}

14、设有文法G[A]:(2008)

A →BCc | gD

B B →bCDE |ε

C →DaB | ca

D →dD |ε

得分

语法树: (5分)

G1:

S →aaSb|ab

G1: S →AB

A →aAb | ab

B →bBa | ε

相关文档
最新文档