![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编译原理
文章平均质量分 83
学习哈工大陈鄞老师编译原理,用以记录学习点滴过程,改正之前不做笔记的坏毛病。
挑战自己~
真正的大师永远怀着学徒的心♥
展开
-
哈工大 编译原理 网课笔记 —— 7.语法分析_4
SLR分析例:LR(0)分析过程中的冲突这I2I_2I2中,当 TTT 遇到 ∗*∗ 时,是否进行归约动作E——>TE——>TE——>T,我们可以查看EEE的FOLLOWFOLLOWFOLLOW进行确定。在EEE的FOLLOWFOLLOWFOLLOW中,没有 ∗*∗ 这说明不进行上述归约动作。SLR动作这里注意a1,…a_1,\dotsa1,… 与 FOLLOWFOLLOWFOLLOW两两互不相交。进行决策时,往往只会采取一个动作SLR中的S代表.原创 2022-03-20 18:36:09 · 635 阅读 · 0 评论 -
哈工大 编译原理 网课笔记 —— 6.语法分析_3
自底向上的语法分析从分析树的底部(叶节点)向顶部(根节点)方向构造分析树可以看成是将输入串w归约为文法开始符号S的过程自顶向下的语法分析采用最左推导方式自底向上的语法分析采用最左归约方式(反向构造最右推导)自底向上语法分析的通用框架移入-归约分析(Shift-Reduce Parsing)例题:输入缓冲区存储剩余输入,分析栈存储文法符号移入-归约分析中,首先是将剩余输入第一个元素移入栈中,此时是ididid,对应文法中的④,进行④的归约再将剩余.原创 2022-03-20 18:25:38 · 282 阅读 · 0 评论 -
哈工大 编译原理 网课笔记 —— 5.语法分析_2
递归的预测分析法例子:注意:这里SELECT集中因为(4)、(7)推导出空串,所以需要进行特别分析。其他产生式都较为简单可以直接得出上图是对整个(1)进行匹配对(2)进行匹配对 进行匹配对 进行匹配对 进行匹配对进行匹配非递归的预测分析法非递归的预测分析不需要为每个非终结符编写递归下降过程,而是根据预测分析表构造一个自动机,也叫表驱动的预测分析以有穷自动机相似,但是下推自动机(多了原创 2022-03-20 18:19:04 · 348 阅读 · 0 评论 -
哈工大 编译原理 网课笔记 —— 4.语法分析_1
自顶向下分析概述自顶向下的分析从分析树的**顶部(根节点)向底部(叶节点)**方向构造分析树可以看成是从文法开始符号S推导出词串w的过程每一步推导中,都需要做两个选择替换当前句型中的哪个非终结符 那个替换用该非终结符的哪个候选式进行替换 如何替换最左推导在最左推导中,总是选择每个句型的最左非终结符进行替换最右推导在最右推导中,总是选择每个句型的最右非终结符进行替换-最左推导和最右推导的唯一性自顶向下的语法.原创 2022-03-10 20:28:11 · 243 阅读 · 0 评论 -
哈工大 编译原理 网课笔记 —— 3.词法分析
正则表达式正则表达式简单介绍正则表达式定义RERERE 是 正则表达式 缩写例: C语言无符号整数的RERE 的代数定律正则语言可以用RE定义的语言叫做正则语言(regular language)或正则集合(regular set)正则文法与正则表达式等价对任何正则文法 GGG,存在定义同一语言的正则表达式$ r $对任何正则表达式 rrr,存在生成同一语言的正则文法 GGG正则定义为了方便起见,.原创 2022-03-10 19:52:27 · 265 阅读 · 0 评论 -
哈工大 编译原理 网课笔记 —— 1.绪论
1.什么是编译计算机程序涉及语言与编译机器语言(计算机可以理解的语言)汇编语言(引入助记符号)高级语言(类似于数学定义和自然语言的简洁形式)编译器在语言处理系统中的位置2.编译系统的结构使用英汉翻译类比编译系统功能中间表示很重要编译器的结构3.词法分析概述词法分析:从左到右扫描源程序,识别出每个有正确含义的单词(token)token表示: <种别码、属性值>属性值起到区分作用例子:❓词法分析器原创 2022-03-04 18:14:25 · 438 阅读 · 0 评论