- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三 语法分析---LL (1)分析器
目录
TOC \o 1-5 \h \z 一 . 实验的目的与思路 2
(1) 目的 2
(2) 思路 2
二 . 基本的功能 3
三.总体设计 4
四.详细设计 5
五 .源程序清单 6
六.源代码 6
实验的目的与思路
1) 目的
用程序的方法实现语法分析的 LL (1)方法。
2) 思路
本程序是采用的LL (1)方法进行的语法分析,而 LL (1)的分析方法是属于自
上而下的方法。
自上而下分析的基本思想是:
对任意输入串, 试图用一切可能的方法, 从文法开
始符号(根结点)出发,自上而下为输入串建立一棵语法树。从推导的角度看,它是
从文法的开始符号出发,反复使用各种产生式,寻找与输入串匹配的推导。
在输入之前必须要进行该文法是不是 LL ( 1 )文法的判断,然后再构造相应的
LL (1)分析表来用预测分析方法进行语法分析,依据下面的文法及分析表来设计程 序实现预测分析的分析过程。
文法 G[E] :
E --E+T|T
T --T*F|F
F --(E) | i
通过观察可知道该文法是一个左递归文法,要进行语法分析就必须消除左递 归才能继续判断它是不是 LL( 1)文法,然后才能用预测分析方法进行语法分析。
消除左递归:
E --TM
M --+TM|u
T --FQ
Q --*FQ|u
F --(E) | i
在进行 LL ( 1)文法的判断:
( 1. ) 各非终结符的 FIRST 集如下:
FIRST ( E) =
FIRST (
TM)
= {( , i
}
FIRST (
M)
= { + }
FIRST (
T) =
{( ,
i }
FIRST (
Q) =
{ * }
FIRST (
F) =
{ ( ,
i }
2.)各非终结符的
FOLLOW 集如下:
FOLLOW
( E )
= { )
, # }
FOLLOW
( M )
= { )
, # }
FOLLOW
( T )
= { + ,
),
# }
FOLLOW
( Q)
= { + ,
),
# }
FOLLOW ( F) = {
* ,+, ) ,# }
(3.)各产生式的
SELECT集如下:
SELECT
(E
TM ) ={ ( ,i }
SELECT
(M
+TM ) ={+}
SELECT
(M
u) ={ }, #}
SELECT
(T
FQ) ={ ( ,i }
SELECT
(Q
*FQ ) ={ *}
SELECT
(Q
u) ={ +,), # }
SELECT
(F
(E)) ={()
SELECT
(F
i)={ i }
因为:
SELECT
(M
+TM )n SELECT (M u)二①
SELECT
(Q
*FQ )n SELECT ( Q u)=①
SELECT
(F
(E) )n SELECT (F i)二①
因此可以判断该文法是一个 LL (1)文法可以构造预测分析表。
5.根据可选集构造预测分析表如下:
1
1
+
*
(
)
U
E
E—TI
E-TI[
M
I-+TI
lku
I-u
T
T-FQ
T-FQ
Q
Q-u
Q-*FQ
Q讥
Q-u
F
F-i
1
.基本的功能
下面主要采用了 LL( 1)分析方法来进行语法分析,先通过判断该文法是不是LL( 1)文法,如果不是先将其改写成 LL( 1)文法,再将 LL( 1)文法改造成等
价形式------LL ( 1)分析表,通过分析表来进行语法分析,本程序的主要功能是对 一个文法句子的生成过程进行分析。
三.总体设计
LL (1)的语法分析程序包含了三个部分,总控程序,预测分析表函数,先 进先出的语法分析栈,本程序也是采用了同样的方法进行语法分析其功能模型图如 下:
LL( 1)语法分析功能模型图
本程序是采用预测的分析方法,因此预测分析方法的基本算法如下:
判断该文法是不是 LL( 1)文法,如果该文法不是 LL( 1)文法,则修改该文法继
续判断该文法是不是 LL( 1)文法,如果是则进行第二步,否则不运行。
构造预测分析表:
1.对文法G的每个产生式A-a执行第二步和第三步;
2 .对每个终结符 a € FIRST(a),把A-a加至L[A,a]中;
若 € FIRST(a),则对任意 b €FOLLOW(A把 A-a 加至 L[A,b]中;
把所有无定义的 L[A,a]标上“出错标志”;
上述算法可应用于任何文法 G以构造它的预测分析表 L。但是对于某些文
法,有些L[A,a]可能持有若干个产生式,或者说有些 L[A,a]可能是多重定义的。
如果G是左递归或是二义的,那么 L至少含有一个多重定义入口。因此,消除左
递归和提取左因子将有助于获得无多重定义的分析表 L。本题是
您可能关注的文档
- 综合系列—《领袖的风采团队》核心课程.docx
- 综合练习3行政理论.docx
- 综合练习网站首的整体布局商品分类版块.docx
- 综合营销团队工作周报第一期.docx
- 综合销售管理制度OC.docx
- 综合验光仪的高级使用.docx
- 综治平安创建活动方案.docx
- 综采工作面V高压供电专项安全技术措施.docx
- 综采、连采掘)工作面动态达标标准.docx
- 综采工作面日常安全生产管理经验研究.docx
- 国电系统--广东省--2023年《通信安规》科目 单选题+多选题+判断题+简答题真题冲刺卷9月份B卷.docx
- 国电系统--甘肃省--2023年《信息安规》科目 单选题+多选题+判断题+简答题真题冲刺卷下半年A卷.docx
- 国电系统--福建省--2023年《通信安规》科目 单选题+多选题+判断题+简答题真题冲刺卷上半年A卷.docx
- 国电系统--福建省--2023年《信息安规》科目 单选题+多选题+判断题+简答题真题冲刺卷下半年B卷.docx
- 国电系统--安徽省--2023年《变电安规》科目 单选题+多选题+判断题+简答题真题冲刺卷上半年B卷.docx
- 国电系统--安徽省--2023年《通信安规》科目 单选题+多选题+判断题+简答题真题冲刺卷3月份A卷.docx
- 国电系统--广东省--2023年《信息安规》科目 单选题+多选题+判断题+简答题真题冲刺卷9月份B卷.docx
- 国电系统--甘肃省--2023年《信息安规》科目 单选题+多选题+判断题+简答题真题冲刺卷下半年B卷.docx
- 国电系统--福建省--2023年《通信安规》科目 单选题+多选题+判断题+简答题真题冲刺卷3月份A卷.docx
- 国电系统--北京市--2024年《信息安规》科目 单选题+多选题+判断题+简答题真题冲刺卷上半年A卷.docx
最近下载
- 2024年北京市公安局顺义分局勤务辅警、流动人口管理员招聘考试题库(含答案).pdf VIP
- GB_T 9441—2021《球墨铸铁金相检验》标准解读.pdf VIP
- 精编人教版五年级上册数学第一单元试卷(含解析).docx VIP
- 英语时态专项练习.doc
- Pierce交联磁珠式免疫沉淀免疫共沉淀试剂盒.PDF
- (11)免疫调节——2024年九省联考+2023年四省联考+2021年八省联考生物专项精编.docx VIP
- GB/T 19812.6-2022塑料节水灌溉器材 第6部分:输水用聚乙烯(PE)管材.pdf
- 低空经济装备制造产业园项目可行性报告(模板范文).docx
- 2023年成人本科学位英语考前真题及答案.docx
- 2018年新国家开放大学报名登记表系统表.pdf VIP
文档评论(0)