《编译原理》学习总结
第二章 上下文无关文法和语言
老师教授了语法、语义等概念,回顾了关于程序语言定义,初等数据类型,数据结构,高级高级语言的一般特性,程序结构,语句与控制结构等内容;程序设计语言的描述工具- 文法,包括文法的定义,文法的种类等内容,用于描述程序设计语言的上下文无关文法,上下文无关文法的推导,上下文无关文法与语言,语法分析树的构造,文法的二义性等;符号串(语言)的各种运算及其性质;对于给定的一个文法,对于其某句型的推导、句型的推导过程、句子、所形成的语言等,以及推导所形成的语法树。最左推导,最右推导、规范推导等有关的概念及其产生过程;学会了什么是句型分析,什么是短语、直接短语,句柄,如何求
项目、项目分类、项目集;LR(0) 项目构造方法;LR(0) 项目集的构造;LR(0) 识别 活前缀的自动机构造;LR(0) 分析表的构造;LR(0) 文法,及其语句的分析过程;SLR (1 )分析表的构造;SLR(1) 文法及其语句的分析过程;LR (1 )项目的定义与构造;LR (1 )识别活前缀的自动机构造;LR (1 )文法及其语句的分析过程。
在进行词法分析和语法分析之后,需要进行语义分析。语义分析依据属性文法进行描述,属性文法的定义及属性文法的构造方法;基于 属性文法的处理方法,依赖图的定义及构造;抽象语法树的构造;
学会了中间表示的集中方式:图表示法及三地址代码 、三元式、间接三元式、四元式; 说明语句,赋值语句,布尔表达式,控制语句 、数组 等的翻译。
文章来源: 《编译原理》学习总结