编译原理 语法•文法G[S]:S -> a | ^ | ( T ) T -> T ,S | S•
来源:学生作业帮 编辑:神马作文网作业帮 分类:数学作业 时间:2024/09/28 15:21:54
编译原理 语法
•文法G[S]:
S -> a | ^ | ( T ) T -> T ,S | S
•1.构造识别活前缀的自动机.
•2.证明该文法是LR(0)文法.
•3.给出输入串(a,(a,a))的分析过程.
给我个具体答案吧
•文法G[S]:
S -> a | ^ | ( T ) T -> T ,S | S
•1.构造识别活前缀的自动机.
•2.证明该文法是LR(0)文法.
•3.给出输入串(a,(a,a))的分析过程.
给我个具体答案吧
编译原理不同教材用的表示不太一样,翻译也五花八门,我不是很确定你这个活前缀是什么意思.我按我知道的告诉你,我用“.”表示状态的位置,你的书上可能通常是一个黑点表示,先要建立文法的状态集合:
S1:S->.a
S2:S->a.
S3:S->.^
S4:S->^.
S5:S->.(T)
S6:S->(.T)
S7:S->(T.)
S8:S->(T).
S9:T->.T,S
S10:T->T.,S
S11:T->T,.S
S12:T->T,S.
S13:T->.S
S14:T->S.
归集状态,和状态转换关系(这应该是要画成图的,这里没法画.)用I表示
I0:S1 S3 S5 S9 S13
输入a,I0->I1
I1:S2
输入^,I0->I2
I2:S4
输入(,I0->I3
I3:S6 S9 S13 S1 S3 S5
归约S,I0->I4
I4:S14
归约T,I0->I5
I5:S10
归约T,I3->I6
I6:S7
输入),I6->I7
I7:S8
输入,I5->I8
I8:S11 S1 S3 S5
归约S,I8->I9
I9:S12
输入a,I8->I1
输入^,I8->I2
输入(,I8->I3
输入a,I3->I1
输入^,I3->I2
输入(,I3->I3
然后你要建立状态转换表,百度不能画表格.,你将就看看( $是结束符啊.还有你的文法没有开始,即S')
先把题目中的规则编个号:
(1) S->a
(2) S->^
(3) S->(T)
(4) T->T,S
(5) T->S
action goto
状态集 a ^ ( ) ,$ S T
0 s1 s2 s3 14 10
1 acc
2 acc
3 s1
因为没有S'不知道最终怎么规约
S1:S->.a
S2:S->a.
S3:S->.^
S4:S->^.
S5:S->.(T)
S6:S->(.T)
S7:S->(T.)
S8:S->(T).
S9:T->.T,S
S10:T->T.,S
S11:T->T,.S
S12:T->T,S.
S13:T->.S
S14:T->S.
归集状态,和状态转换关系(这应该是要画成图的,这里没法画.)用I表示
I0:S1 S3 S5 S9 S13
输入a,I0->I1
I1:S2
输入^,I0->I2
I2:S4
输入(,I0->I3
I3:S6 S9 S13 S1 S3 S5
归约S,I0->I4
I4:S14
归约T,I0->I5
I5:S10
归约T,I3->I6
I6:S7
输入),I6->I7
I7:S8
输入,I5->I8
I8:S11 S1 S3 S5
归约S,I8->I9
I9:S12
输入a,I8->I1
输入^,I8->I2
输入(,I8->I3
输入a,I3->I1
输入^,I3->I2
输入(,I3->I3
然后你要建立状态转换表,百度不能画表格.,你将就看看( $是结束符啊.还有你的文法没有开始,即S')
先把题目中的规则编个号:
(1) S->a
(2) S->^
(3) S->(T)
(4) T->T,S
(5) T->S
action goto
状态集 a ^ ( ) ,$ S T
0 s1 s2 s3 14 10
1 acc
2 acc
3 s1
因为没有S'不知道最终怎么规约
编译原理 设有文法G(S)
编译原理,G:S->Pa|Pb|cP->Pd|Se|f是哪一类文法?A 左线性文法 B 右线性文法 C LL(1)文法
G.S.T/H.S.T.是什么意思
编译原理 推导题 对文法(G)=(Vn,Vr,P,S),Vn={S,A,B} Vr={a,b}开始符为S,P .
S.T.
编译原理 有文法G(S): S->aSS->bSS->a 1)构造识别文法活缀的DFA 2)写出该文法的SLR(1)
s/m t/s
S.A.T.
S.W.A.T.
关于 编译原理文法G1=(Vn,Vt,P,S)其中,Vn={S,B,C,D}Vt={a,b,c}P={S::=aSBC,
sed 's/ /\t/g'中的/g是什么意思?
编译原理文法可以定义为四元集G(S)={Vn ,Vt,P,S},那么Vn* ,Vt*和Vn+ ,Vt+,即右上角加*或+