LALR,LR(1),SLR语法分析器生产器,前端代码等

时间:2014-01-30 10:33:19
【文件属性】:

文件名称:LALR,LR(1),SLR语法分析器生产器,前端代码等

文件大小:1.12MB

文件格式:RAR

更新时间:2014-01-30 10:33:19

LALR LR(1) SLR 语法分析 生成器

摘要: 编译器的构造中,语法分析是一个非常关键也是较难的部分之一,虽然现在已经有非常成熟的语法分析器的生成器,但是真正大的编译器设计者还是会选择自己处理语法分析。其中,自顶向下的方法有递归下降分析,非递归预测分析等,但是前者递归无法满足程序嵌套的深入,很容易形成栈溢出;后者手工构造对于稍微大的文法无法显得捉襟见肘。 幸运的是:自底向上分析能够很好的解决上述问题。其中LR(0), LR(1)以及LALR(1)对程序设计语言语法分析提供了很好的解决方案。但是他们三者的性能如何,到底实际中适和使用哪种分析方法?很多书都提出LALR分析方法同时拥有了前两者的优点,所以是最提倡的。 据笔者所知,YACC(Yet Another Compiler- Compiler )语法分析器生成器所使用的方法正是LALR分析法。 资源中是LALR语法分析器分析表的自动构造算法的所有代码。 能够分析标准C语言文法等,采用和YACC类似的方式LALR高效版本产生分析表。 其中论文本文旨在用程序证明LALR语法分析方法的最优性以及LR(1)方法的不可行性。 作者此次正好利用编译原理论文的机会,和大家一起去实践的证明一下吧! 关键词:LR(0) ;LR(1);LALR(1);语法分析;规模;效率;论证 YACC


网友评论

  • 还不错,做课程作业
  • 不错,有些帮助
  • 对于我比较有用,,,,,
  • 只够参考用,具体用起来太过简单
  • 这些东西就是参考一下,功能不够,实现的比较简单,还是要自己实现。
  • 初学者有点难度,没有一定基础的很困难
  • 不适合我这种初级人士…短时间内看不明白…但是看起来好像很全
  • 总体很好的
  • 代码有错误,不过可以通过修改一下来运行
  • 代码有误,但总体不错,描述很好