自下而上语法分析:

 1.已知文法:

E→E+T | T

T→T*F | F

F→(E) | i

以句柄作为可归约串,写出符号串‘i+i*i#’的"移进-归约"分析过程。

符号线 输入串 动作
# i+i*i# 移进
#i +i*i# 归约
#F +i*i# 归约
#T +i*i# 归约
#E +i*i# 移进
#E+ i*i# 移进
#E+i *i# 移进
#E+F *i# 归约
#E+T *i# 归约
#E+T* i# 移进
#E+T*i # 归约
#E+T*F # 归约
#E+T # 归约
#E # 接受

2.P121练习1的(1)(2)。

S -> a | ^ | (T)

T -> T, S | S

1)计算FIRSTVT和 LASTVT。

 

1 FIRSTVT(S) = {a , ^ , ( }
2 FIRSTVT(T) = {,, a , ^ , ( }
3 LASTVT(S) = {a , ^ , ) }
4 LASTVT(T) = {,, a , ^ , ) }

2)找三种关系对。

= < >
(T) #S S#
#S# (T T)
  ,S T,

 

 3)构造算符优先关系表。

 

 

a

,

(

)

#

a

 

 

 

 

 

 

,

 

(

=

 

)

 

 

 

#

 

 

=

posted on 2019-12-06 10:18  zlkang  阅读(113)  评论(0编辑  收藏  举报