编译原理课程设计实验报告 - 2 - 目录 第一部分 实验成果统计表 …………………………………………………………1 第二部分 实验简介 …………………………………………………………………2 第三部分 词法分析 …………………………………………………………………3 第四部分 语法分析 …………………………………………………………………6 4.1 LL(1)法语法分析…………………………………………………………7 4.2 递归下降法语法分析……………………………………………………10 第五部分 语义分析…………………………………………………………………19 第六部分 程序测试…………………………………………………………………22 第七部分 实验总结与体会…………………………………………………………28 第一部分 实验成果统计表 姓名 性别 班级 学号 所占比例 个人成绩 任务分工:(请用小四号宋体填写) 词法分析部分程序的调试与实现; L L (1)语法分析部分程序的调试与实现; 递归下降语法分析部分程序的调试与实现; 语义分析部分程序的调试与实现; 成绩评定: 词法分析 递归下降 LL(1) 语义分析 团队成绩 教师签章 备注 填写说明: 1、请将首页红色部分信息填全,其中:班级为 2 位数字,保留首位的0;学号为 8 位数字,计算机科学与技术学院以 53 开头;所占比例为百分数,精确到个位数,且所有人的所占比例之和为 100%;不足四人的分组请保留后面的多余空行,请勿修改该表的结构。 2、请根据实际情况填写任务分工部分,主要任务包括:编译系统的总体分析与设计,四个具体功能的设计与实现,对应的测试与验证过程(报告正文需要列出若干组具体测试样例与对应结果),系统界面的设计与美工,以及辅助工具、视图和文件等 。 3、成绩评定部分由 指 导 教师填写,请勿填写和修改。 第二部分 实验简介 本实验中实现了SNL 编译系统中的词法分析、语法分析和语义分析。其中语法分析包括递归下降分析方法和 LL(1)分析方法。 词法分析,以源程序为输入,生成单词的内部表示TOKEN 序列。 语法分析,以 TOKEN 序列为输入进行语法分析,并生成整个源程序的语法分析树。在 SNL 编译程序中,采用了两种语法分析方法实现:LL(1)和递归下降法。两种语法分析的结果是一样的。 语义分析,以语法树为输入生成标识符的属性符号表以及相关的各类信息表,如数组信息表,并进...