编译原理习题一.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理习题一

一、简答题(15分) 1. 编译程序与解释程序有何区别? 2. 何谓素短语? 3. 过程调用时,主调程序与被调程序之间的信息传递有哪些方式? 4. 何谓语法制导翻译? 5. 何谓算符文法? 二、选择题(10分) 1. 描述一个语言的文法是( ) A.唯一的 B.不唯一的 C.可能唯一,也可能不唯一 2. 若文法G定义的语言是无限集,则文法必然是( ) A.前后文无关文法 B.正规文法 C.二义性文法 D.递归文法 3. 数组的内情向量中肯定不含数组的( )信息 A.维数 B.类型 C.各维的上下界 D.各维的界差 4. 简单优先分析每次归约的是( ) A. 最左直接短语 B.直接短语 C.最左素短语 D.控制结点 5. 最适合动态建立数据实体的内存分配方式是( ) A. 栈式分配 B.堆式分配 C.编译时预先分配 D.以上三种均可 三、(10分)给定文法G=({S,L},{a,(,)},{S→(L)|a L→L,S|S},S)。给出句型”(S,(a))”的推导和语法树并指出此句型的所有短语、直接短语、句柄和素短语。 四、(12分)设语言L是由奇数个a和偶数(可以是0)个b组成的符号串之集。 1.构造识别L的DFA;2. 给出定义L的正规文法; 五、(10分)将文法G[S]:S→[A A→AS|B] B→Bi|i 改写为等价的LL(1)文法,并给出相应的LL(1)分析表。 六、(20分)给定文法G[S]: S→(S)|a 1.构造识别文法G[S]活前缀的LR(1)项目的DFA; 2. 构造LR(1)分析表; 3. 合并同心集,构造LALR(1)分析表。 七、(8分)某语言算术表达式的文法定义为 E→E+E|i| if B then E else E其中,第三个候选式称为条件算术表达式,B为布尔表达式,then及else后的E均为算术表达式(即简单算术表达式或条件表达式),其语义为,当B为真时,表达式的值取then后的E的值,否则取else的E的值。假定所有表达式是整型的,试将下面关于条件算术表达式的属性翻译文法填写完全: ? 八、 (8分)给定PASCAL程序语句 while ab do if a0 then a:=a-1 else a:=a+1; ? 1. 将该语句翻译成逆波兰式; 2. 给出编译程序扫描到then处及分号处时所得的四元式序列。 九、 (7分)用DAG图对下面的基本块进行优化(假定出基本块后只有A、G、L是活跃的): A=B*C D=B/C E=2*3 F=E+2 G=B*C K=E+F G=K*KL=B/C试题答案 参考答案: 一、 简答题(15分) 1. 编译程序与解释程序有何区别? 答:二者的工作方法不同,后者是边解释边执行,解释所得的代码并不保存;前者是先将高级语言翻译感情上标代码,将其保存到指定的空间中,待需要时再执行之,甚至可以在案一个机器上编译,而在另一台机器上执行。 2. 何谓素短语? 答:素短语是满足下述条件的短语:(1)它至少含有一个终结符号(2)满足条件(1)的“最小”短语 3. 过程调用时,主调程序与被调程序之间的信息传递有哪些方式? 答:形式参数与实在参数结合方式传递(简称参数传递)、返回值传递、共享数据区传递。 4. 何谓语法制导翻译? 答:语法制导翻译是对前后文无关文法的扩充,即对文法中的每个产生式都附加一个语义动作或语义子程序,且在语法分析过程中,每当需要使用一个产生式进行推导或归约时,语法分析程序除执行相应的语法分析动作外,还要执行相应的语义动作或调用相应的语义子程序,完成相应的语义分析和翻译工作。 5. 何谓算符文法? 答:当一个文法的所有产生式的右部均不出现两个非终结符号相邻的情况时,该就被称为算符文法。 二、 选择题(10分) 1. 描述一个语言的文法是(B ) A.唯一的 B.不唯一的 C.可能唯一,也可能不唯一 2. 若文法G定义的语言是无限集,则文法必然是(D ) A.前后文无关文法 B.正规文法 C.二义性文法 D.递归文法 3. 数组的内情向量中肯定不含数组的(B )信息 A.维数 B.类型 C.各维的上下界 D.各维的界差 4. 简单优先分析每次归约的是(C ) A. 最左直接短语 B.直接短语 C.最左素短语 D.控制结点 5. 最适合动态建立数据实体的内存分配方式是(B ) A. 栈式分配 B.堆式分配 C.编译时预先分配 D.以上三种均可 三、(10分)给定文法G=({S,L},{a,(,)},{S→(L)|a L→L,S|S},S)。给出句型”(S,(a))”的推导和语法树并指出此句型的所有短语、直接短语、句柄和素短语。 ? 解:ST(L) T(L,S) T(L,(L)) T(L,(S)) T(L,(a)) T(S,(a)) 短语

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档