- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理要点整理
编译原理要点整理
//红色字体标注的是重点中的重点,大题的归宿
引论
翻译器,编译器的定义
编译器工作步骤和流程
编译器前端后端的概念,理解为什么要有前端后端
“遍”的概念
词法分析
词法分析器的定义
词法分析器所要完成的任务
记号,模式,词法单元概念区分
串的运算(和,连接,指数,闭包,正闭包)
正规定义
转换图(注意开始状态和结束状态以及需要将指针回退的状态)
不确定的有限自动机(NFA)定义
确定的有限自动机(DFA)定义
从正规式到NFA(明确通过正规式如何构造连接运算,和运算,闭包运算的NFA)
此方法产生的NFA的性质
从NFA到DFA(子集构造法)
DFA的化简(合并不可区别状态)
从语言描述直接到DFA
了解Lex
学完本章:能语言描述改写成正规定义,能将正规定义转化为语言描述,给出一个正规式,能转换成相应的NFA,DFA并化简。
语法分析
上下文无关文法定义
区分句子和句型
最左推导 最右推导
分析树
文法二义性
消除左递归 提左因子
了解语言鸟瞰(0型文法:短语文法;1型文法:上下文有关文法;2型文法:上下文无关文法;3型文法:正规式)
FIRST集合 FOLLOW集合定义及计算方法
LL(1)文法定义
了解自上而下的递归下降的预测分析
自上而下非递归的预测分析(详细明确预测分析器接受某一输入串时的具体过程,明确栈如何变化,输入输出如何变化)
预测分析表的构造
句柄的概念
自下而上的分析方法:用栈实现移近-归约分析(详细明确预测分析器接受某一输入串时的具体过程,明确栈如何变化,输入输出如何变化)
LR文法和LR分析算法
构造SLR分析表(从文法构造识别活前缀的DFA(LR(0)项目集规范族),从DFA构造SLR分析表)
构造规范的LR分析表(从文法构造识别活前缀的DFA(LR(1)项目集规范族),从DFA构造规范的LR分析表)
构造LALR分析表(从文法构造识别活前缀的DFA(合并同心的LR(1)项目集),从DFA构造规范的LR分析表)(合并同心项目集可能会引起归约-归约冲突,不会引起新的移进-归约冲突)
学完本章:能计算FIRST集合和FOLLOW集合;给定一个文法,能判断是否是LL(1)文法,并为其构造分析表;能构造LR(1)文法的三种预测分析表;明确移近归约分析中的每一个步骤,明确栈如何变化。
语法制导的翻译
语法制导的定义
综合属性(S属性定义)
注释分析树(S属性定义可以自下而上的完成)
继承属性
语法树
S属性的自下而上计算(将LR分析器增加一个域来保存综合属性值)(一定要明确每一步移近-归约时属性栈如何变化)
L属性定义(例:变量类型声明的语法制导定义)
翻译方案(能根据文法以及需要计算的属性写出一个翻译方案)
L属性定义的自上而下的计算
L属性定义的自下而上的计算
学完本章:要能根据要求设计简单问题的语法制导定义和翻译方案。
例:为文法
S— ( L ) | a
L— L , S | S
写一个语法制导定义,它输出括号的对数。
(不要求)
运行时存储空间的组织和管理
过程定义、过程调用、形式参数、实在参数、活动的生存期
名字的作用域和绑定
活动记录(运行程序时存储区布局,活动记录的一般布局)
局部数据的安排(内存对齐问题)
局部存储分配策略
全局存储分配策略(静态,栈式,堆式)
运行栈 活动树
访问链 控制链
非局部名字的访问(静态作用域,动态作用域的区别)
四种参数传递方式的区别(值调用,引用调用,复写-恢复调用,换名调用)
学完本章:能判断一个变量的作用域;熟悉静态分配与动态栈式分配的区别;明确非局部数据访问的实现方法;各种参数传递方式的区别;会处理内存对齐问题;会画活动树。
例:指出下面程序中各个变量对应的分配策略?
int a;
void p(int b){
int c;
int *d = malloc(sizeof(int)*b);
}
void main(){p(3);}
中间代码生成
中间语言(能将表达式转化为后缀表示,图形表示,三地址代码形式)
区分图形表示中的语法树和有向无环图
学完本章:能将表达式转化为后缀表达式,语法树,有向无环图,三地址代码形式。
例:将表达式a := (b + c*d ) + c*d转化为后缀表达式,有向无环图,三地址代码形式
代码生成
指令的代价
学完本章:会计算指令的代价
例:指令 代价
MOV R0,R1 1
MOV R5,M 2
ADD #1, R3 2
SUB 4(R0), *12(R1) 3
高效能学习的大学习方法
您可能关注的文档
最近下载
- 电气与PLC控制技术:自动化生产线的PLC 控制系统装调PPT教学课件.pptx VIP
- YJT26-2024应急避难场所 设施设备及物资配置.doc VIP
- 幼儿园课程(学前教育专业高职)全套教学课件.pptx
- 新疆政法考试题库及答案.doc VIP
- 电气与PLC控制技术:X62W 型铣床电气控制系统的装调与故障检修PPT教学课件.pptx VIP
- 比较思想政治教育(第二版) 010 比较思想政治教育(第二版) 第十章.pptx VIP
- 一种低轨卫星的地面跟踪装置和方法.pdf VIP
- 比较思想政治教育(第二版) 001 比较思想政治教育(第二版) 第一章.pptx VIP
- 蔬菜配送投标方案(技术标 361页).doc VIP
- 比较思想政治教育(第二版) 006 比较思想政治教育(第二版) 第六章.pptx VIP
文档评论(0)