自下而上语法
1.已知文法:
E→E+T | T
T→T*F | F
F→(E) | i
以句柄作为可归约串,写出符号串‘i+i*i#’的"移进-归约"分析过程。
2.P121练习1的(1)(2)。
1)计算FIRSTVT和 LASTVT。
2)找三种关系对。
3)构造算符优先关系表。
1()

| 步骤 | 符号栈 | 输入符号串 | 动作 | 
| (1) | # | i+i*i# | 移进 | 
| (2) | #i | +i*i# | 归约 | 
| (3) | #F | +i*i# | 归约 | 
| (4) | #T | +i*i# | 归约 | 
| (5) | #E | +i*i# | 移进 | 
| (6) | #E+ | i*i# | 移进 | 
| (7) | #E+i | *i# | 归约 | 
| (8) | #E+F | *i# | 归约 | 
| (9) | #E+T | *i# | 移进 | 
| (10) | #E+T* | i# | 移进 | 
| (11) | #E+T*i | # | 归约 | 
| (12) | #E+T*F | # | 归约 | 
| (13) | #E+T | # | 归约 | 
| (14) | #E | # | 接受 | 
2.P121练习1的(1)(2)。
1)计算FIRSTVT和 LASTVT。
2)找三种关系对。
3)构造算符优先关系表。
答:文法为:S->a | ^ | (T)
T->T,S | S
(1) FIRSTVT(S)={a,^,(}
FIRSTVT(T)={, ,a,^,(}
LASTVT(S)={a,^,)}
LASTVT(T)={,,a,^,)}
(2) 三种关系对
=
(T)
#S#
<
#S
(T
,S
>
S#
T)
T,
(3)构造算符优先关系表
| 
 | a | ^ | ( | ) | , | # | 
| a | 
 | 
 | 
 | > | > | > | 
| ^ | 
 | 
 | 
 | > | > | > | 
| ( | < | < | < | = | < | 
 | 
| ) | 
 | 
 | 
 | > | > | > | 
| , | < | < | < | > | > | 
 | 
| # | < | < | < | 
 | 
 | = | 
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号