《编译原理》试题及答案.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《编译原理》试题及答案 一、单项选择题(共10小题,每小题2分) (题分 20分) 1.语言是 A.句子的集合 B.产生式的集合 C.符号串的集合 D.句型的集合 2.编译程序前三个阶段完成的工作是 A.词法分析、语法分析和代码优化 B.代码生成、代码优化和词法分析 C.词法分析、语法分析、语义分析和中间代码生成 D.词法分析、语法分析和代码优化 3.一个句型中称为句柄的是该句型的最左 A.非终结符号 B.短语 C.句子 D.直接短语 4.下推自动机识别的语言是 A.0型语言 B.1型语言 C.2型语言 D.3型语言 5.扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位即 A. 字符 B.单词 C.句子 D.句型 6.对应Chomsky四种文法的四种语言之间的关系是 A.L0?L1?L2?L3 B.L3?L2?L1?L0 C.L3=L2?L1?L0 D.L0?L1?L2=L3 7.词法分析的任务是 A.识别单词 B.分析句子的含义 C.识别句子 D.生成目标代码 8.常用的中间代码形式不含 A.三元式 B.四元式 C.逆波兰式 D.语法树 9. 代码优化的目的是 A.节省时间 B.节省空间 C.节省时间和空间 D.把编译程序进行等价交换 10.代码生成阶段的主要任务是 A.把高级语言翻译成汇编语言 B.把高级语言翻译成机器语言 C.把中间代码变换成依赖具体机器的目标代码 D.把汇编语言翻译成机器语言 二、填空题(本大题共5小题,每小题2分)(题分 10分) 1.编译程序首先要识别出源程序中每个( ),然后再分析每个( )并翻译其意义。 2.编译器常用的语法分析方法有( )和( )两种。 3.通常把编译过程分为分析前端与综合后端两大阶段。词法、语法和语义分析是对源程序的( 1 ),中间 代码生成、代码优化与目标代码的生成则是对源程序的( )。 4.程序设计语言的发展带来了日渐多变的运行时存储管理方案,主要分为两大类,即:( )方案和( )方案。 5.对编译程序而言,输入数据是( ),输出结果是( )。 三、名词解释题(共5小题,每小题4分) (题分 20分) 1.词法分析 2.LL(1)文法 3.语法树 4.LR(0)分析器 5.语言和文法 四、简答题(共4小题,每小题5分) (题分 20分) 1.编译程序和高级语言有什么区别? 2.编译程序的工作分为那几个阶段? 3.简述自下而上的分析方法。 4.简述代码优化的目的和意义。 五、综合应用题(共3小题,每小题10分) (题分 30分) 1.证明下述文法G: S→aSbS|aS|d 是二义性文法。 2.对于文法G[S]:S→AB,A→Aa|bB,B→a|Sb求句型baSb的全部短语、直接短语和句柄? 句型baSb的语法树如图五(2)所示。 S b 图五(2) 句型baSb的的语法树 3.设有非确定的有自限动机NFA M=({A,B,C},{0,1},δ,{A},{C}),其中: δ (A,0)={C} δ (A,1)={A,B} δ (B,1)={C} δ (C,1)={C}。请画出状态转换距阵和状态转换图。 参考答案 2 一、单项选择题(共10小题,每小题2分,共20分) 1.语言是 B.产生式的集合 C.符号串的集合 D.句型的集合 2.编译程序前三个阶段完成的工作是 A.词法分析、语法分析和代码优化 B.代码生成、代码优化和词法分析 D.词法分析、语法分析和代码优化 3.一个句型中称为句柄的是该句型的最左 A.非终结符号 B.短语 C.句子 D.直接短语 4.下推自动机识别的语言是 A.0型语言 B.1型语言 C.2型语言 D.3型语言 5.扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位即 A. 字符 B.单词 C.句子 D.句型 6.对应Chomsky四种文法的四种语言之间的关系是 A.L0?L1?L2?L3 C.L3=L2?L1?L0 D.L0?L1?L2=L3 7.词法分析的任务是 A.识别单词 B.分析句子的含义 C.识别句子 D.生成目标代码 8.常用的中间代码形式不含 A.三元式 B.四元式 C.逆波兰式 D.语法树 9. 代码优化的目的是 A.节省时间 B.节省空间 C.节省时间和空间 D.把编译程序进行等价交换 10.代码生成阶段的主要任务是 A.把高级语言翻译成汇编语言 B.把高级语言翻译成机器语言 C.把中间代码变换成依赖具体机器的目标代码 D.把汇编语言翻译成机器语言 二、填空题(本大题共5小题,每小题2分,共10分) 1.编译程序首先要识别出源程序中每个(单词),然后再分析每个(句子)并翻译其意义。 2.编译器常用的语法分析方法有(自底向上)和(自顶向下)两种。 3.通常把编译过程分为分

文档评论(0)

3344483cc + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档