LR(0)语法分析 联系客服

发布时间 : 星期日 文章LR(0)语法分析更新完毕开始阅读ed0b9161ddccda38376baf2f

淮 阴 工 学 院

编译原理课程设计报告

选题名称:系 (院):专 业:班 级:姓 名:指导老师:学年学期:

LR(0) 语 法 分 析 计 算 机 工 程 学 院 计算机科学与技术 计算机1075(单招) 赵俊丽 学号: 1071308114 于长辉 王文豪 高丽 夏森 2009 ~ 2010 学年 第 2 学期

设计任务书

课题 名称 LR(0)分析法是一种移进-规约过程,能根据当前分析栈中的符号串,同时设计 也不用向右查看输入串的符号就可唯一确定分析器的动作。通过对给定的文法目的 构造LR(0)分析表和实现某个符号串的分析掌握LR(0)分析法的基本思想。 LR(0)语法分析 实验 环境 WindowsXP 操作系统,Visual C++6.0以上编译环境 1.录入合法的LR(0)文法 任务 要求 2.构造并输出LR(0)分析表 3.对输入的符号串进行语法分析 工作进度计划 序号 1 2 3 4 起止日期 09.12.14-09.12.14 09.12.15-09.12.15 09.12.16-09.12.17 09.12.18-09.12.20 工 作 内 容 选定题目,明确题目要求 课题深入调研、细化工作,系统方案设计 程序录入、调试、整合 上机演示,课程设计分组答辩,完成课程设计报告 指导教师(签章):

年 月 日

编译原理课程设计报告

摘要:

编译程序是现代计算机系统的基本组成部分之一,语法分析是编译程序的核心部分,识别由语法分析给出的单词符号序列是否是给定文法的正确句子,把词法记号流按语言的语法结构层次地分组,以形成语法短语。一个编译程序的工作过程一般可以划分为五个阶段:词法分析、语法分析、语义分析与中间代码生成、优化、目标代码生成。LR(0)是一种自底向上的语法分析方法,是已知的最一般的无回溯的移近—归约方法,这一方法能够识别所有能用上下文无关文法描述的程序语言的结构。本文主要讨论LR(0)语法分析的构造。着重分析LR(0)分析器的一般原理、实现思想、基本设计方法以及主要实现技术和工具。操作员录入合法的LR(0)文法,则自动生成LR(0)分析表,并对任一输入串进行分析。判断其是否是给定文法的句子。还可以对输入的句子进行语法分析。

关键词:自底向上分析;移进;规约

1

目录

1 课题综述 ...................................................................................................................................... 1

1.1 课题来源......................................................................................................................... 1 1.2 意义................................................................................................................................. 1 1.3 预期目标......................................................................................................................... 1 1.4 面对的问题..................................................................................................................... 2 2 系统分析 ...................................................................................................................................... 3

2.1 涉及的基础知识 ............................................................................................................. 3 2.2 总体方案......................................................................................................................... 5 3 系统设计 ...................................................................................................................................... 5

3.1 算法描述......................................................................................................................... 6 3.3 详细流程图..................................................................................................................... 9 4 代码编写 .................................................................................................................................... 10 5 程序调试 .................................................................................................................................... 15 总 结 ............................................................................................................................................ 19 致 谢......................................................................................................................................... 20 参考文献......................................................................................................................................... 21