ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:114.81KB ,
资源ID:14831046      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/14831046.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(编译原理复习题集docxWord格式文档下载.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

编译原理复习题集docxWord格式文档下载.docx

1、其中第一部分(device:)和第三部分(.extension) 口J缺省,device, name和 extension都是字母串,长度不限,但至少为1,画出识别这种文件名的确定有限 自动机。9. 构造一个DFA,它接受Z=0, 1 0和1的个数都是偶数的字符串。10. 设有非确定的有自限动机NFAM二(A, B, C, 0, 1, 5, A, C),其中:5 (A, 0) = C 5 (A, 1)二A, B 6 (B, 1) = C 5 (C, 1) = C。请画出状态转换 距阵和状态转换图。11. 设 匕a,b,c*是满足下述条件的符号串构成的语言:(1) 若出现a ,则其后至少紧跟两个

2、c ;(2) 若出现b,其后至少紧跟一个c o试构造识别L的最小化的DFA ,并给出描述L的正规表达式。12. 写出字母表刀二a, b上语言L二w | w的最后两个字母是竝或bb的正规式, 并画出接受该语言的最简DFAo13. 有穷自动机M接受字母表工=0, 1上所有满足下述条件的串:串中至少包含两个 连续的0或两个连续的1。请写出与M等价的正规式。14. 有正规式 b*abb*(abb*)* ,(1) 构造该正规式所对应的NFA(|fflj出状态转换图)。(2) 将所求的NFA确定化(画出确定化的状态转换图)。(3) 将所求的NFA最小化(画出最小化后的状态转换图)。15. 求出下列文法所产

3、生语言对应的止规式.STbSlaAAFAIbBBFAIbClbCTbSlaA16. 给出与下图的NFA等价的正规式。17把下面的NFA确定化。19.将下面的DFA化成最简形式。20. 为语言L= ww e (a /?)*并且在w的任何前缀中,a的个数不少于b的个数 写一个LR (1)文法,不准超过6个产生式。21. 写一个文法,使其语言是奇数集,且每个奇数不以0开头。22. 考查文法G(s):S-( T ) | a + S | a T-*T, S | S(1) 消除文法的左递归;(2) 提取公共左因子;(3) 对毎个非终结符,写岀不带冋朔的递归子程序。23. 设文法G(S):S-* (L) |

4、a S|aL-L, S|S(1) 消除左递归和冋溯;(2) 计算每个非终结符的FIRST和FOLLOW;(3) 构造预测分析表。24. 消除下列文法的左递归.SSaPISflPPTQbPIQQTcSdle25已知文法G :AaABelaBTBbld给出与上述文法等价的LL(1)文法Gfo26. 已知文法GA:A f aAB I aB - Bbld(1) 构造与GA等价的LL(1)文法;(2) 构造G A的预测分析表。27. 程序的文法如下:P DI id : TI proc id ; D ; S(1) 写一个语法制导定义,打印该程序一共声明了多少个id。(2) 写一个翻译方案,打卬该程序毎个变

5、量id的嵌套深度。28. 构造下面文法的LL (1)分析表。DtTLT - int | realL id RR t , id R | 29. 考虑下文法:DTTVT T int I floatV T id , V I ida. 在该文法中提取左公因子。b. 为所得文法的非终结符构造First和Follow集合。c. 说明所得的文法是LL(1)文法。d. 为所得文法构造LL(1)分析表。e. 假设有输入串int x , y , z写出相应LL(1)分析程序的动作。30. 说明如下文法是否是LL (1)文法,若不是,将其转换为LL (1)文法。最后给出 该文法的LL (1)分析表。AT BeB B

6、bla31设有文法:P- begin XYendX-Xd;X-d;Y-Y;sYf s(1) 该文法含有左递归吗?若有,消除它。(2) 改造后的文法是LL(1)文法吗?若是,给出其预测分析表。(3) 写出句了 begin d; s end的分析过程。32.已给文法GS:S - SaP I Sf I PP qbPIq将GS改造成LL ( 1 )文法,并给出LL ( 1 )分析表。33设文法G(S):(L)laSlaL, SIS(1) 消除左递归和回溯;34. 给定文法GS:S - AaldAbIBbldBaA cB f c构造文法GS的LR ( 1 )分析表。35. 已知文法G(S)S-a | A

7、| (T) T-T, S|S 写出句子(a, a), a)的规范归约过程及每一步的句柄。36. 已知文法G(E)E-T|E+TT-F|T *FF- (E) | i给出句型(T *F+i)的最右推导及画出语法树;37. 说明下而的文法不是SLR(l)文法,并重写一个等价的SLR(l)文法。SMalbMcldcIbdaM T dStS SMalbMcldcIbda Mid因为3是M的后继符号之一,因此在上面最右边一个项目集中有移进-归约冲突。 等价的SLR(l)文法是Sdalbdcldclbda38. 在PASCAL语言中,简单类型的变量的声明例举如下:m, n : integerp, q, r

8、: real为这样的声明写一个LR (1)文法(为简单起见,变量标识符都用id表示),并根 据你的文法写一个语法制导定义(或叫做为你的文法加上语义动作),它将变量的 类型填入符号表。39一个非LR (1)的文法如下:L t MLb I aM T 请给出所冇冇移进一归约冲突的LR (1)项目集,以说明该文法确实不是LR (1) 的。40. 若冇文法G(S)的产生式如下:SRSTRLrLTiRTL,构造识别所有项目集规范族的DFA.,判断该文法是否是SLR(l)文法,说明理由。41. 现有句型ybal/3和产生式Aba,分别指出LL (1)方法和LR (1)方法在扫描 到此句型的什么位置决定用此产

9、生式?42. 为下面的算术表达式文法写一个语法制导的翻译方案,它将每个了表达式E的符号(即值大于零还是小于零)记录在屈性E.sign屮(屈性值分别用POS或NEG表示)。你可以假定所有的整数都不为零,这样就不用担心零的符号。E T E *E 丨 +E I -E I unsignedjnteger43. 一个文法如下:St(S)S a 请给出该文法111对活前缀(有效的LR(1)项口。44. 为下面文法添加语义规则(或叫动作了程序),输出S,产生的二进制数的值,如输 入是101时,输出5oS J SS S B | BB t 0 | 145. 写出表达式(a + bM/(a + b)-d的逆波兰表

10、示及三元式序列。46. 把表达式-(a+b)*(c+d)+(a+b+c)翻译成三地址码序列。47. 设布尔表达式的文法为E -*EiVE2E EiAE?E - i假定它们将用于条件控制语句中,请(1) 改写文法,使之适合进行语法制导翻译;(2) 写出改写后的每个产生式的语义动作。48. 将语句if (A0) while ( C0 ) C=C+D;49. 设有基本块如下:T1 二S+RT2=3T3= 12/T2T4=S/RA=T1-T4T5=S+RB=T5T6=T5*T3B=T6(1) 画出中间代码的流图;(2) 设A、B是出基本块后的活跃变量,请给出优化后的三地址码序列。50. 设已构造出文法

11、G(S):(1) S tBB(2) B TaB(3) BTb的LR分析表如卜状态ACTIONGOTOab#SBs3s412accs6s75384r3rl697r2假定输入串为abab,请给出LR分析过程(即按照步骤给出状态,符号,输入串的变 化过程)。51. 给出活动记录空间结构。并给出各部分的存储对象。52. 将下而程序段翻译成四元式序列。while (ACABD) if(A=l) C=C+1 ; else while (A bAb printC a printC3 ) Aa) print(“4) 若对输入序列b(aa)a)a)b进彳亍自底向上分析,请写出输出序列。54画出 IF a0 THEN x:=x+l ELSE x:二4*( x- 1)的翻译方案图。55. 下面是一个C语言程序: main()long i;long a04; longj;(1)按照数组size的计算公式,sizeof(a)的值一定是0。(2) a00的值是4。虽然a的size是0,但它仍然有起始地址,并.ft a00的地 址等于a的起始地址。由于X86/Linux机器上,活动记录栈向低地址方向增长,另外由 于低地址放低位字节,因此a010的地址和i的地址一致,其值和i的值一样,等于4。56. 将下面的条件语句表示成三地址码序列: if ( ab ) x=a+

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1