哈工大 编译原理习题.ppt

哈工大 编译原理习题.ppt

ID:51497350

大小:167.50 KB

页数:29页

时间:2020-03-25

哈工大 编译原理习题.ppt_第1页
哈工大 编译原理习题.ppt_第2页
哈工大 编译原理习题.ppt_第3页
哈工大 编译原理习题.ppt_第4页
哈工大 编译原理习题.ppt_第5页
资源描述:

《哈工大 编译原理习题.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一、有一个用于交换两个变量内容的子程序,其程序如下:ProcedureSWAP(x,y)BeginT=X;X=Y;Y=T;RETURNEND假定主程序使用callSWAP(I,K(I))语句,进入子程序之前I=5,K(I)=K(5)=6,请根据参数传递方式,写出结果。语句参数形式参传值传地址传名T=XT=5T=5T=X右=5X=Y形参X=6实参I=5Y=TRETURN主程序所得结果例1:有文法G(S)S→BAA→BSA→dB→aAB→bSB→c试写出其FIRST集FOLLOW(B)=FIRST(A)∪FIRST(S)={a,b,c,d}FOLLOW(S

2、)=FOLLOW(A)∪FOLLOW(B)∪{$}={a,b,c,d,$}FOLLOW(A)=FOLLOW(B)∪FOLLOW(S)={a,b,c,d,$}二、文法G(S)S→S*aT

3、aTT→+aT

4、ε消去左递归,求FIRST和FOLLOWS→aTS’S’→*aTS’

5、εT→+aT

6、εFIRST(S)={a}FIRST(S’)={*,ε}FIRST(T)={+,ε}FOLLOW(S)={$}FOLLOW(S’)={$}FOLLOW(T)={*,$}*+a$SS→aTS’S’S’→*aTS’S’→εTT→εTT→+aTT→ε三、文法G(S):S→(L)

7、

8、aS

9、aL→L,S

10、S1)画出句型(S,(a))的语法树2)求所有短语、直接短语、句柄和素短语短语:a、S、(a)、S,(a)、(S,(a))直接短语:S、a句柄:S素短语:a二、文法G(S)S→S*aT

11、aTT→+aT

12、ε消去左递归,求FIRST和FOLLOWS→aTS’S’→*aTS’

13、εT→+aT

14、εFIRST(S)={a}FIRST(S’)={*,ε}FIRST(T)={+,ε}FOLLOW(S)={$}FOLLOW(S’)={$}FOLLOW(T)={*,$}*+a$SS→aTS’S’S’→*aTS’S’→εTT→εTT→+aTT→ε四、文法G

15、(S):S→(A)

16、aA→A+S

17、S1)求各非终结符的FIRSTVT和LASTVT2)构造优先矩阵解:FIRSTVT(S)={a,(}FIRSTVT(A)={+,a,(}LASTVT(S)={a,)}LASTVT(A)={+,a,)}a+()a>>+<><>(<<<=)>>五、给出文法G(E):E→E+TE→TT→T*FT→FF→(E)F→I请构造文法SLR(1)的分析表解答:拓广文法如下:S→EE→E+TE→TT→T*FT→FF→(E)F→I识别活前缀的DFAS→E.E→E.+TS→.EE→.E+TE→.TT→.T*FT→.FF→.(E)F→.iE→T

18、.T→T.*FF→i.T→F.F→(.E)E→.E+TE→.TT→.T*FT→.FF→.(E)F→.iE→E+.TT→.T*FT→.FF→.(E)F→.iF→(E.)E→E.+TT→T*.FF→.(E)F→.iE→E+T.T→T.*FF→(E).T→T*F.I1I10I11I8I7I6I4I3I5I2I0I9EiF(T+*iFE(TiTFi(F)+*(FOLLOW(S)={#}FOLLOW(E)={+,#,)}FOLLOW(T)={+,),#,*}FOLLOW(F)={+,),#,*}各符号的FOLLOW集:文法G’的SLR(1)分析表如下:STATEA

19、CTIONGOTOi+*()#ETF0S5S41231S6ACC2R2S7R2R23R4R4R4R44S5S48235R6R6R6R66S5S4937S5S4108S6S119R1S7R1R110R3R3R3R311R5R5R5R5六、有文法:S→a

20、(L)L→L,S

21、S1.构造(a,((a,a),(a,a)))的分析树2。构造LL(1)分析表3。构造算符优先分析表4。构造LL(0)分析表5。构造SLR(1)分析表消除左递归:S→a

22、(L)L→SL‘L→,SL’

23、εFIRST(S)={,(}FIRST(L)FIRSTVT(S)={a,(}FIRSTVT(

24、L)={a,(,,}LASTVT(S)={),a}LASTVT(L)={),a,,}a(),$A>>>(<<=<)>>>,<<>>$<<七、考虑下面的文法,E→E+TE→TT→TFT→FF→F*F→aF→b试为该文法构造SLR分析表然后构造其识别活前缀的DFA解:首先将原文法进行拓扩0.S→E1.E→E+T2.E→T3.T→TF4.T→F5.F→F*6.F→a7.F→bT→F.F→F.*F→a.E→T.T→T.FS→.EF→.aF→.bE→.E+TE→.TT→.TFT→.FF→.F*I0I4I3I2S→E.E→E.+TEI1TF→.F*F→.bF→.aF

25、aF→b.bI5E→E+.TT→.TFT→.FF→.F*F→.bF→.a+I6F

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。