版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 对于算符优先分析法,它虽然是一种自下而上的语法分析方法,但它并不是一种规范归约一种规范归约的分析方法。 这是因为在算符优先文法中,仅在终结符号之间定义优先关系而未对非终结符定义优先关系,从而无法使用优先关系表去识别由单个非终结符组成的可归约串,这也就是说,算符优先分析法不是用句柄来刻画可归约串,而是用最最左素短语左素短语来刻画可归约串的。1. 最左素短语最左素短语 所谓句型的素短语素短语是指这样一种短语,它至少包含一个终结符,并且除自身之外,不再包含其它的素短语。句型最左边的素短语称最左素短语最左素短语。例如,有文法 G E E E + T | T T T * F | F F (E) | i
2、d 求该文法句型T + T * F + id的素短语和最左素短语。2. . 识别句型最左素短语的方法识别句型最左素短语的方法 由算符文法的定义可知,算符优先文法的任何句型都没有相邻的两个非终结符。其句型总可以表示成:$ N1a1 N2a2 Nnan Nn+1$ 其中每个Ni为非终结符或空, ai为终结符(1in)对算符优先文法G有如下定理: 一个算符优先文法G的任何句型的最左素短语是满足下列条件的最左子串:Ni ai Ni+1 ai+1 aj Nj+1 ai-1 ai.根据最左素短语的定理,最左素短语中的终结符号具有相同的优先关系,并且,由于最左素短语中的符号是当时最先要归约的串,其优先关系先
3、于最左素短语之外的符号,所以我们使用一个用于存放文法符号的先进后出栈,并利用优先关系表,可以确定最左素短语是否已形成来决定分析器的动作。 3. 3. 算符优先分析程序的设计算符优先分析程序的设计基本思想:$t1t3tj+1t2tjti+1tn$符号栈优先关系ti 尾头最左素短语3. 3. 算符优先分析程序的设计算符优先分析程序的设计 .= =.aj aj+1ai ai aj-1 aj=.=.下面给出算符优先分析算法。 输入:输入符号串W和优先关系表。 输出:若W是正确的句子,则接收, 否则输出错误信息。 方法:执行下图算法。栈置初值 K 1, SK $ 当前输入符号读入aSK是终结符?j K
4、Y j K1NS j 是终结符?Q S j , j j-1YS j+1SK是最左素短语K j+1 , SK NY.结束Y K=2 且 a =$?NSK aK K+1YerrorNj j-1NS j a ?.S j a ? 或 S j a ?N.=.YS j Q?.=.归约id$移进$.归约$.$=.结束$id+ id $移进.$ N+id $移进.归约 由于算符优先分析法跳过了所有单非产生式之间的归约,这样算符优先分析比规范归约要快得多,这既是优点也是缺点。由于忽略非终结符在归约过程中的作用,可能导致把本来不是句子的输入串误认为是文法句子。 设有算符优先文法A A;D | DD D(E) | FF a | (A)E E+A | A 该文法对应的算符优先关系表如下表所示。 ; a + ( ) $ ; a + ( ) $.=.=.对输入串(aa)进行算符优先分析当文法有n个终结符时,优先矩阵需占(n+1)2个存储单元优先函数的引用是一种内存占用少并便于使用的方法,当文法有n个终结符时,只需2(n+1)个存储单元1、优先函数f和g的定义当a) b时, f(a) g(b);f,g分别称为栈内优先函数和栈外优先函数;把优先关系表用优先函数来记录,称作优先关系表的线性化。不是所有的优先关系表都能线性化;且若存在优先函数,不唯
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 说课模板及框架图
- 人教部编版四年级语文上册第20课《陀螺》精美课件
- 算法设计与分析 课件 5.5.1-动态规划应用-矩阵连乘-问题描述和分析
- 2024年伊春客运从业资格证理论考试题
- 2024年呼和浩特客运资格考试考题题库答案
- 2024年河池客运资格证考试试题模拟
- 吉首大学《教师综合素质强化》2021-2022学年第一学期期末试卷
- 吉首大学《程序设计基础实验》2021-2022学年期末试卷
- 《机床夹具设计》试卷22
- 吉林艺术学院《艺术专题策划》2021-2022学年第一学期期末试卷
- 分包单位资格报审表-填写模板
- 城市经济学习题与答案
- 马工程《马克思主义发展史》课后习题答案
- 《培养良好的卫生习惯》主题班会(30张)课件
- 1到50带圈数字直接复制
- 医学学员沟通和接诊能力面试评分表
- 创业指导师培训计划
- 幼儿园中班数学《有趣的图形》课件
- 四年级上册数学课件-4.6 整数的四则运算(运算定律)▏沪教版 (共15张PPT)
- 《饲料标签》国标
- DB11-415-2016危险货物道路运输安全技术要求
评论
0/150
提交评论