- 1、本文档共65页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.1 引言
5.2 算符优先分析技术
5.3 LR(k)分析技术
本章小结
;5.1 引言
5.1.1 自底向上分析技术及识别算法
5.1.2 讨论的前提
5.1.3 基本实现方法;5.1 引言
5.1.1 自底向上分析技术及识别算法
基本思想是: 从输入符号串出发,在每一分析步对相应句型中的某个简单短语进行归约。如果最终能归约到识别符号,则该输入符号串是相应文法的句子,否则就不是。
当句型分析过程中每个分析步都对最左的简单短语进行直接归约时,自底向上分析技术的两个基本问题可以更确切地叙述为:如何找出句柄及把此句柄直接归约为哪个非终结符号。;5.1 引言
5.1.1 自底向上分析技术及识别算法
5.1.2 讨论的前提
识别过程是从左到右、自底向上地进行的,一般都将采用规范归约;除了特别指明的以外,每一步总是对句柄——最左的简单短语进行直接归约。;5.1.3 基本实???方法
采用自底向上分析技术时,通常以移入-归约法为基础。一般地,动作共有4类,即移入、归约、接受与报错。
移入:读入下一个输入符号并把它下推进栈;
归约:当栈顶的(部分)符号串形成一个句柄时,对此句柄进行直接归约;
接受:当识别程序发现栈中除了栈底标志符号#外仅有识别符号,而输入也已到达右端#,则接受;
报错:当识别程序察觉一个错误,因此输入符号串不是句子而无法继续识别工作时,调用一个出错处理子程序进行处理或停止。;例5.1 设有文法G[E]:E∷=E+E|E*E|(E)|i;自底向上分析技术的步骤:
1) 找出句柄u;
2) 找出规则U∷=u;
3) 把u直接归约成U。
分析技术不同,寻找句柄的方法也不同。;5.2 算符优先分析技术
一、算符优先分析技术的引进
二、算符文法
三、算符优先关系与算符优先文法
四、算符优先文法句型的识别
五、实际应用中的算符优先分析技术 ;一、算符优先分析技术的引进
对算术表达式,运算符完全决定了运算次序,运算对象完全不起作用。
因此,将文法中的终结符号看作运算符; 非终结符号看作运算对象。
算符优先分析技术:只在终结符号之间引进优先关系,并利用优先关系找出句柄(最左质短语)。;5.2算符优先分析技术
一、算符优先分析技术的引进
二、算符文法
定义5.1 如果文法G中没有形如 U∷=…VW…
的规则,其中U、V、W∈VN,则该文法G称为算符文法,缩写为OG。
;5.2算符优先分析技术
一、算符优先分析技术的引进
二、算符文法
三、算符优先关系与算符优先文法
算符优先关系
算符优先文法;5.2 简单优先分析技术
5.2.1算符优先分析技术的引进
5.2.2算符文法
算符优先关系
算符优先文法;5.2算符优先分析技术
一、算符优先分析技术的引进
二、算符文法
三、算符优先关系与算符优先文法
算符优先关系
算符优先文法;5.2 简单优先分析技术
5.2.1算符优先分析技术的引进
5.2.2算符文法
四、算符优先文法句型的识别
质短语
算符优先识别算法;
四、算符优先文法句型的识别
质短语
算符优先识别算法
例 文法G[Z]:
Z∷=E E∷=T|E+T
T∷=F|T*F F∷=(E)|i
设有输入符号串i+(i+i)*i,
试识别它是否是文法的句子。;第五章 语法分析----自底向上分析技术;五、实际应用中的算符优先分析技术
通常实际的编译程序应用算符优先分析技术实现表达式的编译时,使用的栈往往不是一个,而是两个,即运算分量栈与运算符栈,分别用来存放还不能生成目标(归约)的运算分量(标识符或常量之类终结符号)与运算符(其他终结符号)。算法框图如下:;5.2算符优先分析技术
;第五章 语法分析----自底向上分析技术;5.3.1 LR(K)分析技术的逻辑结构和分析过程;5.3.1 LR(K)分析技术的逻辑结构和分析过程;5.3.1 LR(K)分析技术的逻辑结构和分析过程;5.3.1 LR(K)分析技术的逻辑结构和分析过程;图8-3;5.3.1 LR(K)分析技术的逻辑结构和分析过程;(表8-3);5.3.1 LR(K)分析技术的逻辑结构和分析过程;5.3.1 LR(K)分析技术的逻辑结构和分析过程;5.3.2 LR(0)分析技术;5.3.2 LR(0)分析技术;5.3.2 LR(0)分析技术;5.3.2 LR(0)分析技术;5.3.2 LR(0)分析技术;5.3.2 LR(0)分析技术;5.3.2 L
文档评论(0)