全球旧事资料 分类
编译原理复习资料
一、简答题
1什么是编译程序?答:编译程序是一种将高级语言程序源程序翻译成低级语言目标程序的程序。将高级程序设计语言程序翻译成逻辑上等价的低级语言汇编语言机器语言程序的翻译程序。
2请写出文法的形式定义?答:一个文法G抽象地表示为四元组G(V
VtPS)其中V
表示非终结符号Vt表示终结符号,V
∪VtV字母表,V
∩VtφS是开始符号,P是产生式,形如:α→βα∈V且至少含有一个非终结符号,β∈V
3语法分析阶段的功能是什么?答:在词法分析的基础上,根据语言的语法规则,将单词符号串分解成各类语法短语例:程序、语句、表达式。确定整个输入串是否构成语法上正确的程序。
4局部优化有哪些常用的技术?答:优化技术1删除公共子表达式优化技术2复写传播优化技术3删除无用代码优化技术4对程序进行代数恒等变换(降低运算强度)优化技术5代码外提优化技术6强度削弱优化技术7删除归纳变量优化技术简介对程序进行代数恒等变换(代数简化)优化技术简介对程序进行代数恒等变换(合并已知量)
5.编译过程分哪几个阶段?答:逻辑上分五个阶段:词法分析、语法分析、语义分析与中间代码生成、代码优化、目标代码生成。每个阶段把源程序从一种表示变换成另一种表示。
6什么是文法?答:文法是描述语言的语法结构的形式规则。是一种工具,它可用于严格定义句子的结构;用有穷的规则刻划无穷的集合;文法是被用来精确而无歧义地描述语言的句子的构成方式;文法描述语言的时候不考虑语言的含义。
7语义分析阶段的功能是什么?答:对语法分析所识别出的各类语法范畴分析其含义,进行初步的翻译翻译成中间代码;并对静态语义进行审查。
8代码优化须遵循哪些原则?答:等价原则:不改变运行结果有效原则:优化后时间更短,占用空间更少合算原则:应用较低的代价取得较好的优化效果
9词法分析阶段的功能是什么?答:
1
f编译原理复习资料
逐个读入源程序字符并按照构词规则切分成一系列单词
任务:
读入源程序,输出单词符号
滤掉空格,跳过注释、换行符
追踪换行标志,指出源程序出错的行列位置
宏展开,……10什么是符号表?
答:符号表在编译程序工作的过程中需要不断收集、记录和使用源程序中一些语法符号
的类型和特征等相关信息。这些信息一般以表格形式存储于系统中。如常数表、变
量名表、数组名表、过程名表、标号表等等,统称为符号表。对于符号表r
好听全球资料 返回顶部