正在加载图片...
寄存器先行准则、寄存器活跃准则、寄存器多在准则 15.设有下面基本块,试写出各临时变量的活动区间。 T1)[1] T2,T3)[3] (-,T3,T1,T4)[4 (→,T3,Y)[5] (*,T3,T4,Ts)[6 (→,T5,Z)[7 各临时变量的活动区间:T1:[[4],2:[2}-[3],T3:[3}-6 T4:[4}-6]T:[6}[7 、(10分)设有文法G[A]:A→iB*e B→SB|E S→[eC]|.i C→eClE 判定该文法是否为LL(1)文法?若是则给出它的LL(1)分析表,否则说 明理由 先计算各个产生式的 Predict集: Predict(A-> iB*)= i I Predict(B->SB)=([,.I Predict(B->8) = *1 Predict(S->[eC])=([K Predict (S->.i)=(. I Predict (C->ec)=f e I Predict (C->8)=(]1 因为 Predict集没有冲突,所以是LL(1)文法。 LL(1)分析表如下 ABS ->S B T-SB (15分)设有文法G[S]:S→LaR|R L→bR|c寄存器先行准则、寄存器活跃准则、寄存器多在准则。 15. 设有下面基本块,试写出各临时变量的活动区间。 ( + , X, 1, T1 ) [1] ( - , A, T1, T2) [2] ( * , Y, T2, T3) [3] ( - , T3, T1, T4) [4] ( , T3, Y ) [5] ( * ,T3, T4, T5) [6] ( , T5, Z ) [7] 各临时变量的活动区间:T1: [1]~[4], T2: [2]~[3],T3:[3]~[6], T4: [4]~[6], T5: [6]~[7] 二、(10 分)设有文法 G[A]: A → iB*e B → SB| S → [eC]|.i C → eC| 判定该文法是否为 LL(1)文法?若是则给出它的 LL(1)分析表,否则说 明理由。 先计算各个产生式的 Predict 集: Predict (A-> iB*e)={ i }; Predict (B-> SB) ={ [ , .} Predict (B-> ) ={ * } Predict (S->[eC]) ={ [ } Predict (S->. i) ={ . } Predict (C-> eC) ={ e } Predict (C-> ) ={ ] } 因为 Predict 集没有冲突,所以是 LL(1)文法。 LL(1)分析表如下: i * e [ ] . A -> iB*e ->  B ->S B ->S B S ->[e C] ->. i C ->eC ->  三、(15 分)设有文法 G[S]: S → LaR|R L → bR|c
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有