《程序设计语言与编译》课程PPT教学课件(高职)第十八讲 SLR分析表的构造

例:文法 S→E E→→E+T|T T→T*FF F→(E)|i
例: 文法 S’→E E→E+T│T T→T*F│F F→(E)│i

Lo= closure({S→·S}) S→>E,E→>·E+T,E→>·T,T>·T*,T→>●F,F→>·(E,F→>·i go(o, E) S>E●,E>E●+T 移进归约冲突 Logo(o,T) E→I·T→>IF 移进归约冲突 13-go(o, F) T→F● I4=go(l0() F→>(·E),E→>·E+T,E→>·T,T->·T*F,T→>·F,F→>·(E),F→>·1 Is=go(lo, 1)
I0=closure({S’→•S}) S’→•E, E→•E+T, E→•T, T→•T*F, T→•F, F→•(E), F →•i I1=go(I0 ,E) S’→E•, E→E•+T 移进-归约冲突 I2=go(I0 ,T) E→T•, T→T•*F 移进-归约冲突 I3=go(I0 ,F) T→F• I4=go(I0 ,( ) F→(•E), E→•E+T, E→•T, T→•T*F, T→•F, F→•(E), F →•i I5=go(I0 ,i) F →i•

6=go(l1,+) E→>E+·T,T→>·T*F,T→>●F,F>(E),F>i T→>T*●F,F→>(E),F→>·1 (4E) F→>(E·),E→>E·+T I9=go(6,T) E→>E+T●.T→xT●*F 移进-归约冲突 Lo=go(I, F) TT*F● 11go(l8,)) F→>(E)°
I6=go(I1 ,+) E→E+•T, T→•T*F, T→•F, F→•(E), F →•i I7=go(I2 ,*) T→T*•F, F→•(E), F →•i I8=go(I4 ,E) F→(E•), E→E•+T I9=go(I6 ,T) E→E+T•, T→T•*F 移进-归约冲突 I10=go(I7 ,F) T→T*F• I11=go(I8 ,) ) F→(E)•

四.SLR分析表的构造 1.SLR方法 当某个项目集形如 L={X>abB,A→a°,B→B時}时,出现了移进归 约冲突和归约归约冲突,可用如下方法解决,该 方法称为SLR方法
四. SLR分析表的构造 1. SLR方法 当某个项目集形如 I={X→•b, A→•, B→•}时, 出现了移进-归 约冲突和归约-归约冲突, 可用如下方法解决, 该 方法称为SLR方法

a是当前输入符号, 当{b}∩ FOLLOW(A)∩ FOLLOW(B)=Φ时 (1)a-b,则移进输入符a; (2)a∈ FOLLOW(A则用A→约, (3)a∈ FOLLOW(B,则用B→O归约 (4)此外出错
a是当前输入符号, 当{b}FOLLOW(A) FOLLOW(B)=Φ时 (1)a=b, 则移进输入符a; (2)aFOLLOW(A), 则用A→α归约; (3)aFOLLOW(B), 则用B→α归约; (4)此外出错

2.SLR分析表的构造 (1)C={L0,I1…,In},I对应状态i, lo= closure({S->S})为唯一初态; (2)对每个 若A→>0oaB∈L1,且go(12)1,则 Jaction[a_; 若A→>·∈I1,Ax为第个产生式, 则vb∈ FOLLOW(A, action[i,b]=丁i 若S→>S·∈L则 action[$=acc; (3)若go(1,A1,则goto[i,A (4)凡不能用规则(2)、(3)登记的表项均为“错误
2. SLR分析表的构造 (1)C={I0 ,I1 ,…,In}, Ii对应状态i, I0=closure({S’→•S})为唯一初态; (2)对每个Ii , 若A→•aIi , 且go(Ii ,a)=Ij , 则action[i,a]=sj; 若A→•Ii , A→为第j个产生式, 则bFOLLOW(A), action[i,b]=rj; 若S’→S•Ii , 则action[i,$]=acc; (3)若go(Ii ,A)=Ij , 则goto[i,A]=j; (4)凡不能用规则(2)、(3)登记的表项均为“错误

若由该方法构造的分析表,不含多重入 口,则该分析表称为SLR分析表相应文法 G称为SLR(1)文法
若由该方法构造的分析表, 不含多重入 口, 则该分析表称为SLR分析表,相应文法 G称为SLR(1)文法

LR分析表 状态 action goto SETF y4 2 0123456 s6 acc r2 [4 746 S4 246 r4 2 r6 r 6r6 y4 3 s5 10 73 Sr r r 5 5 135 r r5
LR分析表 状态0123456789 10 11 action goto i + * ( ) $ E T F s5 s4 1 2 3 s6 acc r2 s7 r2 r2 r4 r4 r4 r4 s5 s4 8 2 3 r6 r6 r6 r6 s5 s4 9 3 s5 s4 10 s6 s11 r1 s7 r1 r1 r3 r3 r3 r3 r5 r5 r5 r5

五.关于二义文法 例1:G(E)E→E+EE*E(E)i 拓广文法 0)S→E 1)E→E+E (2E→E*E (3)E→(E (4)E→i
五. 关于二义文法 例1: G(E) E→E+E|E*E|(E)|i 拓广文法: (0)S’→E (1)E→E+E (2)E→E*E (3)E→(E) (4)E→i

Lo= closure({S→·E}) S->·E,E→>·E+E,E→>·E*E,E→>·(E),E→·i go(o, E) S>E●E>●+EE→>E·*E 移进-归约冲突 l2=go(l0() E→>(E),E→>·E+E,E→·E*E,E→>·(E,E→>·1 go(o, 1) E→) E→>E+·E,E→>·+E,E→·*E,E→>(E,E→>·i s=go(l12*) E→>E*E,E→>E+E,E→·E*E,E→>(E)E→·i
I0=closure({S’→•E}) S’→•E, E→•E+E,E→•E*E, E→•(E), E →•i I1=go(I0 ,E) S’→E•, E→E•+E, E→E•*E 移进-归约冲突 I2=go(I0 ,( ) E→(•E), E→•E+E, E→•E*E, E→•(E), E →•i I3=go(I0 ,i) E→i• I4=go(I1 ,+) E→E+•E, E→•E+E, E→•E*E, E→•(E), E →•i I5=go(I1 ,*) E→E*•E, E→•E+E, E→•E*E, E→•(E), E →•i
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《程序设计语言与编译》课程PPT教学课件(高职)第三讲 程序单元.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第七讲 抽象数据类型.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第六讲 类型检查.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第九讲 SIMULA 67协同程序.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十一讲 一类说明语句的翻译.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十五讲 循环优化.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十四讲 代码优化.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十三讲 控制语句也可采用改写文法的方法.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十七讲 栈式分配.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十六讲 运行时存储空间管理.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十讲 含数组元素的赋值语句的翻译.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二十二讲 一类控制语句的翻译.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第二讲 强制式语言.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第八讲 控制结构.ppt
- 重庆大学材料学院:《计算机在材料工程中的应用》第一章 计算机应用的数学基础(汤爱涛).ppt
- 重庆大学材料学院:《计算机在材料工程中的应用》第五章 材料数据库与专家系统 (汤爱涛).ppt
- 重庆大学材料学院:《计算机在材料工程中的应用》第四章 计算机辅助材料的测试与分析(汤爱涛).ppt
- 重庆大学材料学院:《计算机在材料工程中的应用》第三章 相图的计算机分析与计算(汤爱涛).ppt
- 重庆大学材料学院:《计算机在材料工程中的应用》第二章 材料科学中的数值模拟与计算(汤爱涛).ppt
- 《photoshop》讲义(电子课件).doc
- 《程序设计语言与编译》课程PPT教学课件(高职)第十二讲 编译概述.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十讲 程序设计语言和编译程序.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十九讲 代码生成和代码优化.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十六讲 优先关系表的构造.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十七讲 LR分析法.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十三讲 自顶向下语法分析.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十四讲 预测分析程序.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十五讲 自底向上语法分析.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第十一讲 自动机.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第四讲 用户定义类型.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第五讲 组合类型.ppt
- 《程序设计语言与编译》课程PPT教学课件(高职)第一讲 绪论(主编:王晓斌).ppt
- 宜宾职业技术学院:《实用组网技术》课程教学资源_期末一.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_实践考试方案.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_期末二.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_期末三.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_网络工程方案设计.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_OSPF 路由协议配置.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_RIP 路由协议配置.doc
- 宜宾职业技术学院:《实用组网技术》课程教学资源_网络工程方案书写.doc