山东科技大学《编译原理》期末考试试题(A卷)word版本
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
山东科技大学2015—2016学年第二学期
《编译原理》考试试卷(A卷)
班级姓名学号
一、单项选择题(共15小题,每小题2分,共30分)
1. 一个上下文无关文法G包括四个组成部分:一组终结符,一组非终结符,一个开始符号,以及一组()。
A.字符串
B.产生式
C.开始符号
D.文法
2.一个句型中称为句柄的是该句型的最左()
A.非终结符号
B.短语
C.句子
D.直接短语
3.自动机识别的语言是()
A.0型语言
B.1型语言
C.2型语言
D.3型语言
4.编译程序各阶段工作都涉及()
A.词法分析
B.表格管理
C.语法分析
D.语义分析
5.代码生成阶段的主要任务是()
A.把高级语言翻译成汇编语言
B.把高级语言翻译成机器语言
C.把中间代码变换成依赖具体机器的目标代码
D.把汇编语言翻译成机器语言
6.作为编译程序的源语言,不能是( )
A.高级语言
B.C语言
C.低级语言
D.Pascal语言
7.词法分析器的输入是()
A.单词符号串
B.源程序
C.语法单位
D.目标程序
8.给定文法A->bA︱cc,下面符号串中不是该文法的句子的是()①cc ②bcbc ③bcbcc ④bccbcc ⑤bbbcc
A.①⑤
B. ②③④
C. ①④⑤
D. ①②⑤
9.若B是非终结符,则A->a.aBb为()项目
A.移进
B.待约
C.接受
D.规约
10.文法G:
S→b|∧|(T)
T→T,S|S则FIRSTVT(T)结果是()。
A. {b,∧,(}
B. {b,∧,)}
C.{b,∧,(,,}
D.{b,∧,),,}
11.常用的中间代码形式不含()
A.三元式
B.四元式
C.逆波兰式
D.语法树
12.正规式M 1 和M 2 等价是指()。
A.M1和M2的状态数相等
B.M1和M2的有向边条数相等
C.M1和M2所识别的语言集相等
D.M1和M2状态数和有向边条数相等
13.文法G:S→xSx|y所识别的语言是()。
A.xyx
B.(xyx)*
C.x n yx n (n≥0)
D.x*yx*
14.如果文法G是无二义的,则它的任何句子α()。A.最左推导和最右推导对应的语法树必定相同
B.最左推导和最右推导对应的语法树可能不同
C.最左推导和最右推导必定相同
D.可能存在两个不同的最左推导,但它们对应的语法树相同15.词法分析器的输出结果是()。
A.单词的种别编码
B.单词在符号表中的位置
C.单词的种别编码和自身值
D.单词自身值
二、填空题(本大题共10空,每空2分,共20分)
1.对于文法G[E]:
E→T|E+T
T→F|T*F
F→P^F|P
P→(E)|i,
句型T+T*F+i的句柄是______,最左素短语是_______。
2.编译器常用的语法分析方法有_______和_______两种。
3.算符优先分析法每次都是对____________ 进行归约。
4.编译程序的工作过程主要分为如下几个阶段:词法分析、语法分析、________、___________、____________、目标代码生成。
5.假设有文法G[S]:S->Sa|b,对该文法消除左递归后得到的文法为(注:新的符号用S′表示)_________。
6.对于文法G,仅含终结符号的句型称为_________ 。
三、简答题(共6题,每题5分,共30分)
1.已知文法G[Z]:Z→aZb |ab,写出L(G(Z))的全部元素。
2.已知文法G[S] 为S →aSb|Sb|b ,试证明文法G[S] 为二义文法。3.设有文法
E→E+T | T
T→T*F | F
F→(E) | i
求下列表达式的最左推导和语法树
(1)3+4*5+6
(2)3*(4+5)
4.将如下正规文法转换为自动机。
S→0A|1B
A→1S|1
B→0S|0
5.已知文法G[S]:
S→a | (T)
T→TbS | S
(1)写出句型((TbS)ba)的语法树
(2)写出该句型短语、简单短语、句柄、素短语
6.有文法G[S]:
0) S→BB
1) B→aB|b
构造此文法的LR(0)项目集规范簇,并写出识别活前缀的DFA 四、综合应用(共2题,共20分)
1.构造下列正规式1(0|1)*101 相应的DFA
(1)由正规表达式构造NFA
(2)由转换系统NFA构造确定的有穷自动机DFA
(3)DFA的最小化
2.已知文法G[S]:
0) S→bN
1) N→BaN
2) N→ε
3) B→ab
(1)证明文法G为LL(1)文法?
(2)构造该文法的预测分析表。
(3)写出句子babaaba的分析过程。