实验四_用语法析器生成工具实现语法分析器.docVIP

  • 14
  • 0
  • 约5.03万字
  • 约 10页
  • 2016-12-03 发布于河南
  • 举报

实验四_用语法析器生成工具实现语法分析器.doc

实验四_用语法析器生成工具实现语法分析器

魏陈强 23020092204168 实验4 用语法分析器生成工具实现语法分析器 一、实验目的 掌握移进-归约技术语法分析技术,利用语法分析器生成工具Yacc/Bison实现语法分析器的构造。 二、实验内容 利用语法分析器生成工具Yacc/Bison编写一个语法分析程序,与词法分析器结合,能够根据语言的上下文无关文法,识别输入的单词序列是否文法的句子。 源语言的文法定义见教材附录 A.1,p394,要求实现完整的语言。 三、实验要求 1.个人完成,提交实验报告。 2.实验报告中给出采用测试源代码片断,及其对应的最右推导过程(形式可以自行考虑)。 例如,程序片断 四、实验思路 本实验在linux环境下编写。首先使用lex工具,编写词法分析器,对于识别出的token,比如id类的,则return(ID);单个字符的,比如‘’,则return(‘’),其他类似。然后生成lex.yy.c文件。接着使用yacc工具,编写语法分析器,在*.y文件中调用#include”lex.yy.c”,main(int argc,char **argv)函数中调用yyparse(),并给出yyerror()的处理方式。这样,就能将lex和yacc结合起来。生成y.tab.c文件后,gcc编译,生成a.out可执行文件。执行./a.out 1.txt,即可对1.txt文档中的程序进行语法分析。 五、详

文档评论(0)

1亿VIP精品文档

相关文档