编译原理复习指导.doc

编译原理复习指导.doc

ID:48353060

大小:74.00 KB

页数:20页

时间:2019-11-25

编译原理复习指导.doc_第1页
编译原理复习指导.doc_第2页
编译原理复习指导.doc_第3页
编译原理复习指导.doc_第4页
编译原理复习指导.doc_第5页
资源描述:

《编译原理复习指导.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第一章引论一:名词解释1、翻译程序:能够把某一种语言程序(源语言程序)转换成逻辑上等价的另一种语言程序(目标语言程序)的程序,称为翻译程序。分为汇编程序、解释程序、编译程序三种形式。2、编译程序:把诸如FORTRAN.Pascal>C、Ada、Smalltalk、C++或Java等这样的“高级语言”翻译成诸如汇编语言或机器语言Z类的“低级语言”的翻译程序,称为编译程序。3、编译前端:由为源语言有关但与目标机无关的那些部分组成,通常包括词法分析、语法分析、语义分析与中间代码产生,部分代码优化。4、编译后端:与kl标机有关的那部分编译程序;通常包括与日标机有关的代码优

2、化和Id标代码生成。5、遍:对源程序或源程序的中间结果从头到尾扫描一次,并作有关的加工处理,生成新的中间结果或目标程序,称为遍。分遍的优点:使整个编译程序逻辑结构清晰一些,减少对主存容量的要求;分遍的缺点:增加一些重复性工作。6、语法错误:源程序中不符合语法(词法)规则的错误。7、语义错误:源程序屮不符介语义规则的错渓。二:问答1、编译过程的五个阶段,各阶段的任务及其依循的规则、描述工具分别是什么?阶段任务依循规则描述丁具词法分析输入源程序,对构成源程序的字符串进行扫描和分解识别出一个个的单词如棊本字、标示符等。语言的词法规则正规式和有限口动机理论语法分析在词法分

3、析的基础上,根据语言的语法规则,把单词符号串分解成各类语法单位如“短语”、“句子”语言的语法规则上下文无关文法语义分析与中间代码产生对语法分析所识别出的各类语法范畴,分析其含义并进行初步翻译(产生中间代码)语言的语义规则属性文法优化对前阶段产牛的中间代码进行加工变换,以期在最后阶段能产生出更高效的目标代码程序的等价变换规则目标代码生成把中间代码(经优化处理后的中间代码)变换成特定机器上的低级语言代码硬件系统结构和机器指令含义2、编译程序的生成方法答:(1)JIJ机器语言/汇编语言作工具;(2)用高级语言作工具;(3)自编译方式;(4)建立专门的编制编译程序的冇效工

4、具。第二章高级语言及其语法描述一:名词解释1、文法:描述语言语法结构的形式规则(语法规则)。2、上下文无关文法:对任一产牛式a-B,都有(iWV“,0E(VxUVt)*,例如文法G[S]:S->ABA->BS

5、OB->SA

6、lo3>推导:如果a)=>a2=>=>an,则称这个序列式从ai到an的一个推导。4、句型:假定G是一个文法,S是它的开始符号,如果S亠〉a,则称a是一个句型。5、句子:仅含终结符的句型是一个句子。6、语言:文法G所产生的句子的全体是一个语言。7、语义:单词符号和语法单位的意义。8、词法规则:单词符号形成规则,规定字母表中哪样的字符串是一个单词

7、符号(基本字、标识符、常数、算符、界符)。9、语法规则:语法单位形成规则(表达式、语句、分程序、函数、过程、程序),如何从单词符号形成更大的结构。10、语义规则:使语言的一个合式程序具备含义的一组规则。二:问答1、名字和标识符及其区别。答:标识符是由字母和数字组成的以字母开头的一个字符串,是一个没冇意义的字符序列;名字是有明确意义和属性的字符串。区别:标识符是一个没有意义的字符序列,而名字是有意义和属性的。2、文法的二义性及其消除。答:文法二义性:如果一个文法存在某个句子对应两棵不同的语法树,称这个文法是二义的。即若一个文法中存在某个句子,有两个不同的最左(右)推

8、导,称该文法是二义的(但文法的二义性是不可判定的)。消除的方法:方法一:不改变文法屮原有的语法规则,仅加进一些语法的非形式规定。例如规定运算符优先顺序和结合律;方法二:构造一个等价的无二义性的文法,即把排除二义性的规则合并到原有文法中,改写原冇的文法。例如将文法G[E]:E-iE-E+EE-EXEE-(E)改写成G'[EJ:E-T

9、E+TT-F

10、TXFF-(E)

11、i。3、语句的分类答:功能上:说明性语句、执行性语句形式上:简单句、复合句、分程序。4、形式语言分类。答:0型普通(短语)文法1型上下文冇关文法2型上下文无关文法3型线性(正规、正则)文法第三章词法分析一

12、:名词解释1、DFA:一个确定的有限自动机(DFA)M是一个五元式M二(S,E,6,so,F)其中:(1)S是一个有限集,它的每个元素称为一个状态(2)刀是一个有穷字母表,它的每个元素称为一个输入字符(3)§是一个SXE至S的单值部分映射,6(s,a)=s^表示:当现行状态为s,输入字符为a时,将转换到下一状态s,,称L为s的一个后继状态⑷SoWS,是唯一的初态(5)FS,是一个终态集(可空)。2、NFA:一个非确定冇限自动机(NFA)M是一个五元式M=(S,L,So,F)其中:(1)S是一个有限集,它的每个元索称为一个状态(2)工是一个有穷字母表,它的每个元索称

13、为一个输入

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。