算术表达式FOLLOW的推理(编译原理)
时间:2026-01-17
时间:2026-01-17
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
LOGO
算术表达式FOLLOW的推 的推 算术表达式 理
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: E TE’ E’ +TE’ | ε T FT’ T’ *FT’ | ε F (E) 最终答案: 最终答案:| id E:{$,)} E’:{$,)} : :
FIRST集合 集合 FIRST(F) = {(, id}; ; FIRST(E) =FIRST(T) = {(,id} FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} T,T’:{+, ), $} F:{+,*,),$} : :
LOGO
规则编号: 规则编号: a、如果存在产生式 中所有非 、如果存在产生式A αBβ,那么 ,那么FIRST(β)中所有非ε的符号 中所有 的符号 都在FOLLOW(B)中。 都在 中 b1、如果存在一个产生式 、如果存在一个产生式A αB,那么 ,那么FOLLOW(A)中的所有 中的所有 符号都加入到FOLLOW(B)中. 符号都加入到 中 b2、或者 包含ε, 、或者A αBβ且FIRST(β)包含 ,那么 且 包含 那么FOLLOW(A)中的所 中的所 有符号都加入到FOLLOW(B)中. 有符号都加入到 中 推理步骤0.FOLLOW(E) {$} {} {} {} {}
即初如化
FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: E TE’ E’ +TE’ | ε T FT’ T’ *FT’ | ε F (E) | id 1. 最终答案: 最终答案: E:{$,)} E’:{$,)} : :
FIRST集合 集合 FIRST(F) = {(, id}; ; FIRST(E) =FIRST(T) = {(,id} FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} T,T’:{+, ), $} : F:{+,*,),$} :
LOGO
1. 规则a:FIRST(E’) ∈ FOLLOW(T)=> FOLLOW(T)={+} 由E->TE’ => 规则 ( ) ( ) 规则b1:FOLLOW(E)∈ FOLLOW(E’)=> FOLLOW(E’)={$} 由E->TE’ =>规则 规则 ( ) ( ) ( ) 规则b2:FOLLOW(E)∈ FOLLOW(T)=> FOLLOW(T)={+,$} 由E->TE’ =>规则 规则 ( ) ( ) ( )FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F) {$} {} {} {} {} FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F) {$} {+,$} {$} {} {}
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: E TE’ E’ +TE’ | ε T FT’ T’ *FT’ | ε F (E) | id 最终答案: 最终答案: E:{$,)} E’:{$,)} : :
FIRST集合 集合 FIRST(F) = {(, id}; ; FIRST(E) =FIRST(T) = {(,id} FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} T,T’:{+, ), $} : F:{+,*,),$} :
LOGO
2. 规则a:FIRST(E’) ∈FOLLOW(T)=> FOLLOW(T)= {+,$} 由E’->+TE’=>规则 规则 规则b1:FOLLOW(E’)∈ FOLLOW(E’)=> FOLLOW(E’)={$} 由E’->+TE’ =>规则 规则 ( ) ( ) ( ) 由E’->+TE’ =>规则 规则b2:FOLLOW(E’)∈ FOLLOW(T)=> FOLLOW(T)={+,$} ( ) ( ) ( ) 规则
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {} {}
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {} {}
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: E TE’ E’ +TE’ | ε T FT’ T’ *FT’ | ε F (E) | id 最终答案: 最终答案: E:{$,)} E’:{$,)} : :
FIRST集合 集合 FIRST(F) = {(, id}; ; FIRST(E) =FIRST(T) = {(,id} FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} T,T’:{+,
), $} : F:{+,*,),$} :
LOGO
3. 规则a: 由T -> FT’=>规则 FIRST(T’) ∈FOLLOW(F)=> FOLLOW(F)= {}∩{*}={*} 规则 规则b1:FOLLOW(T)∈ FOLLOW(T’)=> FOLLOW(T’)= {+,$} 由T -> FT’=>规则 规则 ( ) ( ) ( ) 由T -> FT’=>规则 规则b2:FOLLOW(T)∈ FOLLOW(F)=> FOLLOW(F)={+,$} ( ) ( ) ( ) 规则
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {} {}
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {+,$} {+,$}
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: FIRST集合 集合 E TE’ E’ +TE’ FIRST(F) = {(, id}; ; |ε FIRST(E) =FIRST(T) = T FT’ T’ *FT’ | ε {(,id} F (E) | id FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} 最终答案: 最终答案: E:{$,)} E’:{$,)} : : T,T’:{+, ), $} : F:{+,*,),$} :
LOGO
4. 规则a: 由T’ *FT’ =>规则 FIRST(T’) ∈FOLLOW(F)=> FOLLOW(F)= {+,$} ∩{*}={+,*,$} 规则 规则b1:FOLLOW(T’)∈ FOLLOW(T’)=> FOLLOW(T’)= {+,$} 由T’ *FT’ =>规则 规则 ( ) ( ) ( ) 由T’ *FT’ =>规则 规则b2:FOLLOW(T’)∈ FOLLOW(F)=> FOLLOW(F)= {+,*,$} ( ) ( ) ( ) 规则
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {+,$} {+,$}
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {+,$} {+,*,$}
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: FIRST集合 集合 E TE’ E’ +TE’ FIRST(F) = {(, id}; ; |ε FIRST(E) =FIRST(T) = T FT’ T’ *FT’ | ε {(,id} F (E) | id FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} 最终答案: 最终答案: E:{$,)} E’:{$,)} : : T,T’:{+, ), $} : F:{+,*,),$} :
LOGO
5. 规则a: 由F (E) | id =>规则 FIRST(‘)’) ∈FOLLOW(E)=> FOLLOW(E)= {$}∩{)}={),$} 规则 规则b1:无 由F (E) | id =>规则 无 规则 规则b2:无 由F (E) | id =>规则 无 规则
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{$} {+,$} {$} {+,$} {+,*,$}
FOLLOW(E) FOLLOW(T) FOLLOW(E’) FOLLOW(T’) FOLLOW(F)
{),$} {+,$} {$} {+,$} {+,*,$}
这是我们老师自己写的有关编译原理follow处理办法的资料,挺不错的
文法: 文法: FIRST集合 集合 E TE’ E’ +TE’ FIRST(F) = {(, id}; ; |ε FIRST(E) =FIRST(T) = T FT’ T’ *FT’ | ε {(,id} F (E) | id FIRST(E’) = {+, ε}; FIRST(T’)={*, ε} 最终答案: 最终答案: E:{$,)} E’:{$,)} : : 重新回到开 …… 此处隐藏:5297字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:质量案例分析、内部稽核制度