华科编译原理考试题目
大题(亲测)
- 根据要求自己写出文法
- 根据给定文法写出正规式
- 判断文法的二义性
- 根据给定代码写出四元式
- LL(1)文法的判定
- 程序流图、基本块、回边、循环
- LR(0)文法判定、SLR文法判定及分析表、给定字符串写出分析过程
小题(自己复习时总结的)
-
计算机高级语言一般都有关键字、标识符、常数、运算符 和定界符这5类单词
-
基于生成观点、计算观点和识别观点,分别形成了正规文法、 正规式和有穷自动机 3种用于描述计算机高级语言词法的工具。
-
一个正规语言可能对应多个正规文法(√)
-
一个正规式只能对应一个确定的有限状态自动机(×)
-
词法分析器的加工对象是源程序
-
有限状态自动机能识别:正规语言
-
多个初始状态的集合不是DFA的成分
-
词法分析器不能:D
- A.识别出数值常量
- B.过滤源程序中的注释
- C.扫描源程序并识别记号
- D.发现括号不匹配
-
如果文法G是无二义的,则它的任何句子α ( A )。
- A.最左推导和最右推导对应的语法树必定相同
- B. 最左推导和最右推导对应的语法树可能不同
- C.最左推导和最右推导必定相同
- D.可能存在两个不同的最左推导,但它们对应的语法树相同
-
采用自上而下分析,不必( C)。
- A.消除回溯
- B.消除左递归
- C.消除右递归
- D.提取公共左因子
-
采用自上而下分析,必须( A )。
- A.消除回溯
- B.消除左递归
- C.消除右递归
- D.提取公共左因子
-
识别上下文无关语言的自动机是(A )。
- A.下推自动机
- B.NFA
- C. DFA
- D.图灵机
-
FIRST集中可以含有 ε
-
FOLLOW集中不可以含有 ε
-
SELECT集中不可以含有 ε
-
在自底向上的语法分析方法中,分析的关键是( )。
- A.寻找句柄
-
在自顶向下的语法分析方法中,分析的关键是( )。
- D.选择候选式
-
在规范归约中,用( 句柄 )来刻画可归约串。
-
LR(1)文法都是( 无二义性但可能是左递归 )
-
一个正规式只能对应一个确定有限自动机(错)
-
编译原理是对高级语言的翻译
-
编译程序大多数时间花在表格管理上:编译过程中源程序的各种信息被保留在种种不同的表格,编译各阶段的工作都涉及到构造、查找、或更新有关的表格
-
正规文法可以是二义性的
-
一个典型的编译程序中,不仅包括词法分析… 还应包括表格处理和出错处理
-
LL(1)
- L:从左向右扫描
- L:使用最左推导
-
LR(0)
- L:从左向右扫描
- R:最右推导之逆过程(即规范归约:最左规约)
-
在使用高级语言编程时,首先可通过编译程序发现源程序的全部语法错误和语义部分错误
-
0型文法——短语文法(任何0型语言都是递归可枚举的)
-
1型文法——上下文有关文法
-
2型文法——上下文无关文法
-
3型文法——正规文法
-
在目标代码生成阶段,符号表是对符号名进行地址分配的依据
-
e1︱e2 是∑上的正规式,L(r︱s)=L®∪L(s) (而不是L®L(s))
-
LR分析技术无法适用二义文法(错)