没有合适的资源?快使用搜索试试~ 我知道了~
首页表驱动LL(1)语法分析程序
资源详情
资源推荐
燕山大学
编译原理课程设计报告
题目:表驱动 LL(1)语法分析程序
目 录
概述
目的与意义
主要完成的任务
使用的开发工具
解决的主要问题
课程设计计划
使用的基本概念和原理
集
集
集
文法
预测分析表
总体设计
技术路线
总体结构
模块划分
详细设计
程序流程图
模块设计
函数及参数设计
编码实现
主要函数及注释
开发环境
解决的难点
注意事项
测试和试运行
测试方法
测试用例
出现的问题及解决方法
总结
附录
参考文献
第 页
概述
目的与意义
通过设计、编制和调试一个典型的 语法分析方法,进一步掌握预测
分析法的语法分析方法,达到巩固理论知识、锻炼时间能力、构建合理知识结
构的目的。
主要完成的任务
根据 分析法编写一个语法分析程序,输入已知文法,消除直接左
递归。
对改造后的文法求取 集、 集、 集。
所开发的程序可适用于不同的文法和任意输入串,且能判断该文法是
否为 文法。
对输入的任意符号串,所编制的语法分析程序应能正确判断此串是否
为文法的句子(句型分析),并要求输出分析过程。
使用的开发工具
解决的主要问题
()对输入的文法的相关信息进行处理,消除直接左递归后求取该文法
的 集、 集和 集。
()对具有相同产生式左部的 集求交集,判断是否为 文法,
若不是程序结束。
()构造该文法的预测分析表并输出。
第 页
()输入符号串,判定该符号串是否为该文法的句子。
1.5 课程设计计划
表 课设计划表
周一 查阅相关资料。
周二
周三
完成表驱动程序的编写、调试。
周四 撰写课程设计报告。
使用的基本概念和原理
集
设 !是一个上下文无关文法。
FIRST ( α )={a|α ⇒
¿
aβ "∈ V
T
, α , β ∈ V
¿
}
若
α ⇒
¿
ε
,则规定
ε ∈ FIRST (α )
。
集
设 !是一个上下文无关文法,
A ∈V
N
, 是开始符号
FOLLOW ( A )={a|S ⇒
¿
μAβ a且 ∈V
T
, a ∈ FIRST ( β ), μ∈ V
T
¿
,β ∈V
+
}
若
S ⇒
¿
μAβ
且
β ⇒
¿
ε
,则规定
¿∈ FOLLOW ( A )
。
集
一个产生式的选择符号集 。给定上下文无关文法的产生式
A →α
,
A ∈V
N
,
α ∈ V
¿
,若
α ⇒
¿
ε
,则
SELECT ( A→ α )=FIRST (α )
。如果
α ⇒
¿
ε
,
则
SELECT ( A→α )=( FIRST (α )−{ε})∪FOLLOW ( A )
。
第 页
2.4 LL(1)文法
第一个 表明自顶向下分析是从左到右扫描输入串。第二个 表明分析过
程中将用最左推导, 表明只需向右查看一个字符便可决定如何推导,即选择
哪个产生式进行推导。
判定:一个上下文无关文法是 文法的充分必要条件是,对每个非终
结 符 # 的 两 个 不 同 产 生 式
A →α , A→ β
, 满 足
SELECT ( A→α )∩SELECT ( A → β )=∅
,其中 $,% 不同时能
⇒
¿
ε
。
2.5 预测分析表
一个表驱动的 分析程序由预测分析程序、先进后出栈和预测分析表
个部分组成,其中只有预测分析表与文法有关,而分析表又可用一个矩阵 & 表
示。矩阵的元素 &'#"(中的下标 # 表示非终结符," 表示终结符或句子括号),
矩阵元素 &'#"(中的内容是一条关于 # 的产生式,表明当用非终结符 # 向下
推导时,面临输入符 " 时所采取的候选产生式。当元素内容无产生式时,则表
明用 # 为左部向下推导时遇到了不该出现的符号,因此内容为转为出错处理的
信息。
构造预测分析表:
对每个非终结符或‘)*号用 " 表示。
若
a ∈ SELECT ( A →α ) , 则把 A →α 放到 M [ A ,a ]中。
把所有无意义的 &'#"(标上出错标记。
为了使表简化,其产生式的左部可以不写入表中,表中空白处为出错。
剩余58页未读,继续阅读
游标✔卡尺
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 保险服务门店新年工作计划PPT.pptx
- 车辆安全工作计划PPT.pptx
- ipqc工作总结PPT.pptx
- 车间员工上半年工作总结PPT.pptx
- 保险公司员工的工作总结PPT.pptx
- 报价工作总结PPT.pptx
- 冲压车间实习工作总结PPT.pptx
- ktv周工作总结PPT.pptx
- 保育院总务工作计划PPT.pptx
- xx年度现代教育技术工作总结PPT.pptx
- 出纳的年终总结PPT.pptx
- 贝贝班班级工作计划PPT.pptx
- 变电值班员技术个人工作总结PPT.pptx
- 大学生读书活动策划书PPT.pptx
- 财务出纳月工作总结PPT.pptx
- 大学生“三支一扶”服务期满工作总结(2)PPT.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功