
编译原理
向前走一点点
加油
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
编译原理第一章1.1练习题
1.1.1 编译器是一种程序,它可以阅读某一种语言(源语言)编写的程序,并把该程序翻译成一个等价的、用另一种语言(目标语言)编写的程序,简言之我认为其就是把源语言->目标语言, 并且报告它在翻译过程中发现的源程序的错误。 解释器是一种语言处理器,直接利用用户提供的输入执行源程序中指定的操作。 (龙书第二版P1) 1.1.2 效率高;有更好的错误诊断,因为它逐句执行源程序。 1.1.3 汇编语...原创 2019-04-09 13:43:40 · 587 阅读 · 0 评论 -
FIRST 和 FOLLOW求解
(一)FIRST集合 概念:FIRST(α)定义为可以从α推导得到的串的首符号的串的集合。换言之,就是由非终结符推出的所有的开头符号(终结符)或者是ε,即如果α=*=>ε,那么ε也在FIRST(α)中. 1.FIRST的计算方法 计算单个文法符号X的FIRST(X)时,不断应用以下规则,直到没有新的终结符或者是ε加入。 (1)如果X是终结符号,那么FIRST(X)={X} (2)如果X是...原创 2019-04-17 21:25:36 · 7469 阅读 · 2 评论 -
语法分析之LL(1)、LR(0)、SLR(1)、LR(1)、LALR(1)
一、自顶向下 从根开始,按先根次序的创建语法分析树的各个节点,可以看作最左推导。使用自顶向下语法分析的前提是无左递归、无左公因子,如果存在,需要消除左递归以及彻底提取左公因子。 递归下降 LL(1)文法分析 使用递归下降分析会存在回溯,所以LL(1)文法随之诞生。使用LL(1)文法来构建预测分析表可以解决选择哪个产生式的问题。构建预测分析表的关键就是准确求出FIRST() 和 FOLLOW(...原创 2019-06-11 00:39:48 · 6819 阅读 · 0 评论