- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1、语法分析最常用的两类方法是 自顶向下 和 自底向上 分析法。
2、.语法分析的任务是识别给定的终极符串是否为给定文法的 句子 。
3.递归下降法不允许任一非终极符是直接 左递归 。
4.自顶向下的语法分析方法的关键是 选择候选式 的问题。
5.自顶向下的语法分析方法的基本思想是:从文法的 开始符号 开始,根据给定的输入串并按照文法的产生式一步一步的向下进行直接推导,试图推导出文法的 句子 ,使之与给定的输入串匹配。
6.自底向上的语法分析方法的基本思想是:从给定的终极符串开始,根据文法的规则一步一步的向上进行 直接 归约 ,试图 归约 到文法的 开始符号 。
7.在LR(0)分析法的名称中,L的含义是 从左到右扫描输入符号 ,R的含义是 构造一个最右推导的逆过程 ,0 的含义是 超前读入0个符号,以便确定归约用到的产生式
8.综合属性是用于 自下而上 传递信息。
9.继承属性是用于 自上而下 传递信息。
10.终结符只有 综合属性 ,它们由词法分析器提供。
11、什么是属性文法?_在上下文无关文法基础上,赋予每个文法符号以一定属性,并规定文法的每个产生式对相关属性的运算规则,这些附加了一组属性和运算规则的文法称为属性文法______________
二、选择题
1.在语法分析处理中,FIRST集合、FOLLOW集合均是 B 。
A. 非终结符集 B.终结符集 C. 字母表 D. 状态集
2.编译程序中语法分析器接收以 A 为单位的输入。
A. 单词 B. 表达式 C. 产生式 D. 句子
3.在自底向上的语法分析方法中,分析的关键是 A 。
A. 寻找句柄 B. 寻找句型 C. 消除递归 D. 选择候选式
4. 在LR分析法中,分析栈中存放的状态是识别规范句型 C 的DFA状态。
A.句柄 B. 前缀 C. 活前缀 D. LR(0)项目
5、采用自上而下分析,必须(B)。
A、消除回溯 B、消除左递归
C、消除右递归 D、提取公共左因子
6、有一语法制导翻译如下所示:
T→aDa {print “1”}
D→(A {print “2”}
D→d {print “3”}
A→Dd {print “4”}
若输入字符序列为a(((dd)d)d)a,且采用自上而下的分析方法,则输出序列为(B)。
A B C D三、判断
1.每个文法都能改写为LL(1)文法。 (F)
2.递归下降法允许任一非终极符是直接左递归的。 (T)
3.算符优先关系表不一定存在对应的优先函数。 (F)
4.自底而上语法分析方法的主要问题是候选式的选择。 (F)
5.LR法是自顶向下语法分析方法。 (F)
6.简单优先文法允许任意两个产生式具有相同右部。 (F)
7.若一个句型中出现了某产生式的右部,则此右部一定是该句型的句柄。 (F)
8.一个句型的句柄一定是文法某产生式的右部。 (T)
四、名词解释
1、LL(1)文法
LL(1)的含义:
第一个L:从左至右扫描输入串;
第二个L:最左推导;
1:分析时每一步只需向前查看一个符号
2、LR(0) 分析器
3、算符优先文法
4、翻译方案
5、可归前缀
LR分析过程中每次采取归约动作前符号栈中的内容,即规范句型的可归前缀
五、计算题
1. 有文法G[s]:
S→BA A→BS|d B→aA|bS|c
(1)证明文法G是LL(1)文法。
(2)构造LL(1)分析表。
(3)写出句子abccd的分析过程
其FIRST集如下:
FIRST(B)={a, b, c}; FIRST(A)={a, b, c, d}; FIRST(S)={a, b
文档评论(0)