ANTLR学习 - 编译原理 学习关键词
四种文法,0 1 2 3 - lambda 算子
二义性定理:不存在一个算法,它能在有限步内,确切的判定给定的一个文法是否为二义的。
让*优先规则高于+可解决二义性。
自上而下的分析与自下而上的分析。
词法分析 - 正规文法
确定有限自动机 和不确定有穷自动机 最小确定有穷自动机
自上而下语法分析
LL(1)文法的判别 first,follow,select集
一个上下文无关文法是LL(1)文法的充分必要条件是,对每个非终结符A的两个不同产生式,A->a,B->b满足select(A->a) 交 select(B->b)为空。
自下而上优先分析发
移进规约分析法 动作
算符优先关系表
LR分析法 SLR,LALR
语法制导翻译
属性文法,动作
逆波兰式,三元式,四元式,中间结果
简单赋值语句的翻译,布尔表达式的翻译,开关语句,for 语句。数组,结构
YACC LL(2)
四种文法,0 1 2 3 - lambda 算子
二义性定理:不存在一个算法,它能在有限步内,确切的判定给定的一个文法是否为二义的。
让*优先规则高于+可解决二义性。
自上而下的分析与自下而上的分析。
词法分析 - 正规文法
确定有限自动机 和不确定有穷自动机 最小确定有穷自动机
自上而下语法分析
LL(1)文法的判别 first,follow,select集
一个上下文无关文法是LL(1)文法的充分必要条件是,对每个非终结符A的两个不同产生式,A->a,B->b满足select(A->a) 交 select(B->b)为空。
自下而上优先分析发
移进规约分析法 动作
算符优先关系表
LR分析法 SLR,LALR
语法制导翻译
属性文法,动作
逆波兰式,三元式,四元式,中间结果
简单赋值语句的翻译,布尔表达式的翻译,开关语句,for 语句。数组,结构
YACC LL(2)
本文探讨了ANTLR的学习及其在编译原理中的应用,重点介绍了四种文法,lambda算子,二义性定理等内容。此外还涉及了自上而下与自下而上的语法分析方法,包括LL(1)文法的判别,优先分析,移进规约分析等,并讨论了语法制导翻译的相关概念。
388

被折叠的 条评论
为什么被折叠?



