收藏到会员中心
|
文档题目: |
一个编译原理语法分析器的实现与设计 |
 |
上传会员: |
£.edy猫 |
提交日期: |
2013-06-17 14:32:30 |
文档分类: |
软件工程 |
浏览次数: |
16 |
下载次数: |
0
次 |
|
|
下载地址: |
源代码 (需要:25 积分)
论文 (需要:25 积分) 如何获取积分? |
下载提示: |
不支持迅雷等下载工具,请右键另存为下载,或用浏览器下载。不退出登录1小时内重复下载不扣积分。
|
文档介绍: |
以下为文档部分内容,全文可通过注册成本站会员下载获取。也可加管理员微信/QQ:17304545代下载。
|
文档字数: |
|
文档字数:8595,附源代码 一个编译原理语法分析器的实现与设计 摘 要 编译程序一般由词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、目标代码生成程序、代码优化程序、表格管理程序和出错处理程序等成分构成。在编译原理的教学过程中,算法的讲解都需要对算法进行详细的分析,包括算法条件的判断,文法分析表的构造过程,文法分析表的具体生成,针对文法的句子的分析过程等,这些过程往往需要占用大量时间来分析、制表等。本软件的主要任务就是利用程序来完成算法的上述相关过程,以达到高效,直观的效果。本文旨在介绍语法分析方法中的一种自上而下的分析方法——LL(1)分析法。所谓LL(1)分析法是指语法分析是按自左至右的顺序向前查看一个输入字符串,并分析过程中产生句子的最左推导。 关键词:编译;语法分析;LL(1)算法;演示 Abstract ... Key words: compiler; grammar analysis; LL(1) algorithm; demonstrate 目 录 论文总页数:22页 1引言 1 1.1项目背景 1 1.2目标 1 1.3名词解释 1 1.4算法简介 2 1.4.1自顶向下分析 2 1.4.2 递归子程序 3 1.4.3 LL(K)分析方法 4 1.4.4 LL(1)分析方法 4 1.4.5LL(1)分析表 5 2 系统流程图 6 2.1程序流程图 6 2.2 系统模块流程图 7 3 系统实施 7 3.1文件读取模块 8 3.1.1文件读取使用的CommonDialog控件介绍 8 3.1.2文法左递归的判断 9 3.2算法分析模块 9 3.2.1求select集 9 3.2.2求first集 10 3.2.3求follow集 10 3.3分析表构造模块 12 3.3.1构造文法分析表 12 3.3.2A::=aβ规则 13 3.3.3A::=Dβ规则 13 3.3.4A::=ε规则 13 3.4句子分析模块 13 3.4.1读取句子 14 3.4.2分析句子 14 4 特殊问题及解决方法 14 4.1 Select集的求解 15 4.1.1 问题描述 15 4.1.2 解决方案 15 4.1.3 解决结果 15 4.2为ListBox添加水平滚动条 15 4.2.1 问题描述 15 4.2.2 解决方案 15 4.2.3 解决结果 16 5 结果测试 16 5.1测试正确文法 16 5.2测试错误文法 19 结 论 20 参考文献 20 致 谢 21 声 明 22
(本文由word文档网(www.wordocx.com)会员上传,如需要全文请注册成本站会员下载) |
|
|
|