编译原理模拟试题

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

昆明理工大学试卷(A)

考试科目:编译原理考试日期:命题教师:集体

学院:专业班级:学生姓名:风泪剑学号:

任课教师:上课班级:考试座位号:

一、填空(每空1分,共20分)

1、计算机执行用高级语言编写的程序主要有两种途径:___解释__和__编译___。

2、如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义性的。

3、扫描器的任务是从源程序中中识别出一个个单词符号。

4、语法分析器的输入是单词符号,其输出是语法单位。

5、规范规约中的可归约串是句柄

6、对于文法G1和G2,若有L(G1)=L(G2) (或G1

和G2是等价的。

7、最右推导的逆过程称为规范归约,也称为最左归约。

8、自上而下分析法采用___移进__、归约、错误处理、___接受__等四种操作。

9、语法分析的方法大致可分为两类,一类是自上而下分析法,另一类是自下而上分析法。

10、2型文法又称为上下文无关文法;3型文法又称为正则文法。

11、表达式式_a/(b-c)所代表的逆波兰表达式是___ abc-/_。

12、对于文法G,仅含终结符号的句型称为句子。

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

1、词法分析器的输出结果是()。

A.单词的种别编码B.单词在符号表中的位置

C.单词的种别编码和自身值D.单词自身值

2、3.一个句型中称为句柄的是该句型的最左()。

A.非终结符号B.短语C.句子D.直接短语

3、下推自动机识别的语言是()。

A.0型语言B.1型语言

C.2型语言D.3型语言

4、()型文法也称为正规文法。

A 0

B 1

C 2

D 3

5、采用自上而下分析,必须()。

A.消除左递归B.消除右递归

C.消除回溯D.提取公共左因子

6、设有文法G[I]: I→I1|I0|Ia|Ic|a|bc下列符号串中是该文法的句子有()。(1) ab0 (2) a0c01 (3) aaa (4) bc10

A. (1)

B. (2)(3)(4)

C. (3)(4)

D. (1)(2)(3)(4)

7、正则集合L={a n|n≥0}相应的正则表达式是()

A.a* B.a+ C.aa* D.aa+

8、在自上而下的语法分析中可能引起回溯的产生式是()。

A S→aAc|(T)

B T→ab|cD|fG

C A→aB|af

D B→cB|dG

9、若文法 G 定义的语言是无限集,则文法必然是______:

A .递归的

B 前后文无关的

C 二义性的

D 无二义性的

10、文法 G 产生的()的全体是该文法描述的语言。

A .句型 B. 终结符集 C. 非终结符集 D. 句子

三、(10分)对于文法G[E]:

E→E+T|E-T|T

T→T*F|T/F|F

F→(E)|i

(1)写出句型(F+i)-T*(E-T)的最右推导并画出语法树。

(2)写出上述句型的短语,直接短语和句柄。

四、(11

a Array

五、(15分) 对文法

G[S]: S→S,T|(T)|a

T→a(b)|a

(1) 消除该文法的左递归和提取左公因子;

(2) 求出文法改写后的各非终结符的FIRST和FOLLOW集合;

(3) 判断该文法是否是LL(1)文法。如果不是,说明理由;如果是,构造该文法的LL(1)分析表。

六、(20分)构造文法G[S]:

S->A|Ab| a

(1) 构造该文法识别全部活前缀的DFA或LR(0)项目集规范族;

(2) 判断该文法是否是SLR(1)文法。如果不是,说明理由;如果是,构造该文法的SLR(1)分析表。(p177 4-35 (4))

(1)识别全部活前缀的DFA如下:(以表格的形式来表示,很容易可以转化

(2)因为I2中含有冲突项目,所以不是LR(0)文法,其SLR(1)分析表如下:

FOLLOW(S)={#}∩{b}=φ(所以可以用SLR(1)规则解决冲突), FOLLOW(A)={b,#}

七、(4分)将将赋值语句x:= A*(B+C)+D翻译成四元式。(p254 5-8(1))(+,B,C,T1)

(*,A,T1,T2)

(+,T2,D,T3)

(=,T3,0,X)

相关文档
最新文档