浙大软院资料-浙大编译原理提纲_第1页
浙大软院资料-浙大编译原理提纲_第2页
浙大软院资料-浙大编译原理提纲_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

编译原理(复习)考试情况:一、开卷考试二、题型:1、判断题:20分,10题2、选择题:15分,10题3、问答题(包括简答题),65分,分值分布不均匀的。三、考试范围:以课件内容为主。主要复习内容:一、介绍(对应第一章)1.什么是编译程序:将一种语言翻译为另一种语言的计算机程序。2、编译程序的基本结构,每个部分的简单介绍。词法分析(自动生成,LEX的应用)(对应第三章)1、词法分析程序: 自动生成。 给出一组关于单词的正规式描述,生成表驱动的词法分析器。正规表达式→有限状态自动机→生成表驱动的词法分析程序输入缓冲区2、正规表达式:正规表达式的操作:链接,乘方Xn=X·X·X·····X闭包*:L*=L0UL1UL2UL3U·····,L0={ε}正则闭包+:L+=L1UL2UL3U·····选择操作:|3、有限自动机:识别由正规表达式描述的单词DFA,NFA正规表达式→ NFA→DFA(确定化,最小化)利用lex自动生成扫描程序lex的源程序:文件一般格式:{定义}%%{规则}%%{用户程序}定义段:可选,包括一些定义,C代码要放在%{和%}之间。规则段:具有如下的形式,动作是一个C语言的语句,或由{及}括起来的一串C语言程序段。正则表达式动作用户程序段:在规则段中要用到的一些函数或子程序等。 语法分析(对应第四章) 上下文无关文法与分析1、基本概念与定义: 左部→右部 上下文无关文法G是一个四元组G=(VN,VT,P,S) VN:非终结符集合 VT:终结符集合 P:A→α的集合,A∈VN,α∈(VN∪VT)* S:开始符号推导、由文法定义的语言与分析树(抽象语法树)最右推导,最左推导 3、文法的二义性:若一个句子有二棵以上的分析树,则该文法称为二义文法(或歧义文法)二义性的消除4、消除左递归和提取左因子:对文法做的修改 消除左递归:A→Aα┃β A→βA’ A’→αA’┃ε自顶向下的分析递归下降的分析算法FIRST集与FOLLOW集的计算LL(1)分析LL(1)文法定义,LL(1)的含义 LL(1)的分析算法(步骤)构造LL(1)分析表满足什么条件,该文法是LL(1)文法。6、LL(1)文法的构造,如何把一非LL(1)文法转换为LL(1)文法提取左公因子法、消除左递归。(消除二义性)7、错误恢复技术LR分析(自底向上的分析)1、什么是LR分析?LR(1)的含义,什么是句柄。自下而上的分析过程:移进、归约、接受、出错。LR分析算法LR(0)文法、SLR(1)文法、LR(1)文法、LALR(1)文法的定义。(LR状态机和LR分析表。)满足什么条件,该文法是LR(1)文法等。如何利用二义文法LALR(1)分析器的自动生成工具:YACC的使用YACC如何利用歧义文法,冲突的消除等等。自底向上的错误校正语法制导下的翻译(对应第五章)语法制导定义,继承属性,综合属性SDD,属性计算,依赖图,S属性定义,L属性定义,语法制导翻译的应用SDT,实现L属性的SDD中间代码生成(对应第六章)语法树的变化中间代码的形式(三地址码,四元组,三元组)类型和声明表达式的翻译,数组元素的翻译,类型检查,控制流语句的翻译,避免多余的goto,布儿表达式和跳转语句的翻译,地址的回填,switch语句的饿翻译,过程调用的翻译运行环境

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论