解释器构造
文章平均质量分 91
ancientmoondjay
这个作者很懒,什么都没留下…
展开
-
解释器构造任务书
本学期的解释器构造课程主要是自己实现解释器。相应地我会在博客做好记录。 现在先附上任务书。 实验一 [实验名称] 编译工具的使用[实验内容和步骤] 1、阅读文献资料,了解编译工具的发展及功能。 2、选择JavaCC或者Antlr,具体了解其使用方法,包括环境安装、编译工具的语法及使用、实例分析。 3、给出使用实例,完成对CMM语言的词法语法分析器的自动实现。 4、总结上述内容,完成原创 2016-10-23 21:03:56 · 1252 阅读 · 0 评论 -
实验一:javacc学习笔记
一、概念 JavaCC(Java Compiler Compiler)是一个用JAVA开发的受欢迎的语法分析生成器。这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹配该语法的JAVA程序。 JavaCC本身并不是一个词法分析器或者解析器而是一个代码生成器,这意味着它可以根据输入的语言定义输出一个词法分析器和解析器。JavaCC输出的代码是合法的可编译Java代码。原创 2016-10-23 21:06:04 · 1362 阅读 · 4 评论 -
实验三:CMM语言语法分析
注意: 1.本程序用的是LL1预测分析表法。 2.可根据输入的文法文件自动生成first集、follow集、select集以及预测分析表。 3.文法的符号之间要有空格。 4.最后的输出文件有set.txt,parseResult.txt,tree.xml。一、 CMM语言在实验所要求的基础上增加了for循环结构、自增运算、自减运算、复合运算符如+=、方法调用等。具体文法如下:<程序> ->原创 2016-11-21 23:31:26 · 4078 阅读 · 1 评论 -
实验二:CMM语言词法分析
笔记 (一)、扫描处理 最主要的是正则表达式( regular expression)和有穷自动机( finite automata)。 扫描程序的任务是从源代码中读取字符并形成由编译器的以后部分(通常是分析程序)处 理的逻辑单元。 由记号表示的字符串有时称作它的串值( string value)或它的词义( l e x e m e)。 任何与记号相关的值都是记号的属性( a t t r原创 2016-11-11 11:12:35 · 3906 阅读 · 0 评论