编译原理学习笔记
文章平均质量分 81
在学习编译原理过程中的一些心得总结
余生相_
不断学习,不断努力~(ง •_•)ง
展开
-
编译原理学习笔记之词法分析
词法分析一、一些概念词法单元:编程语言中合法的字符串 词法记号:满足某种规则的词法单元,采用同一种记号 词法模式:词法单元和词法记号的对用规则举个例子词法分析器需要给记号以属性,用属性来记住记号的附加信息,以便需要时使用它们。比如其中三个_op不是二元组,因为其第一个成分足以辨别词法单元,因此可以省略第二个部分二、串和语言串和语言:语言是串的集合,串是词法单元...原创 2018-09-08 10:49:07 · 1490 阅读 · 0 评论 -
编译原理学习笔记之词法分析中的状态机与自动机
有限状态机关于词法记号的识别可以用有限状态机来描述有限状态机以转化图的形式描述状态的转化比如对于正规式d->a其中初始状态为0,匹配到a之后,到达状态1,1的双圈表示最终状态;类似地正规式d->ab正规式d->a|b正规式d->a*该状态表示可以匹配零个a到达最终状态0,也可以匹配无数个a到达最终状态0正规式d->a...原创 2018-09-12 15:53:30 · 5267 阅读 · 2 评论 -
编译原理学习笔记之上下文无关文法
一、上下文无关文法1.定义上下文无关文法是这样一个四元组(VT , VN , S, P)VT:终结符集合,非空有限集合,记号名是其同义词VN:非终结符集合,非空有限集合且VT∩VN=ΦS:开始符号P:产生式集合,形如A -> a,A∈VN,a∈(VN∪VT)*其中,终结符可以理解为词法单元,即是符号的最终形式,非终结符就是匹配终结符过程中引入的中间量,例({i...原创 2018-09-30 17:01:31 · 17904 阅读 · 1 评论 -
编译原理学习笔记之自上而下分析Ⅰ
一、自上而下分析法从根部开始构造语法树自上而下分析法不能因为左递归存在而陷入死循环,不能产生回溯,即每一步推导的产生式必须是唯一的1.消除左递归左递归形如A->Aa |b ,这种在创建分析树时一直在左子树死循环,因为推导的结果中最左还是A或者多个推到式共同作用的间接左递归消除直接左递归如上式最终结果是以b开头的无数个a的串,因此改写成A ->bA‘...原创 2018-10-02 12:50:56 · 815 阅读 · 0 评论 -
编译原理学习笔记之自上而下分析Ⅱ
一、FIRST集FIRST(a)是从a 推导出的串的起始终结符的集合计算方法若X->a.., 则将终结符a加入FIRST(X)中 若X->e,则将e加入FIRST(X)中 若X->Y…,且Y属于非终结符,则将FIRST(Y)\{e}加入到FIRST(X)中 若X->Y1Y2..YK,且Y1,Y2,..Yi-1 (2≤i≤k)都是非终结符,且Y1,Y2,...原创 2018-10-02 16:32:46 · 797 阅读 · 0 评论