编译技术习题3_第1页
编译技术习题3_第2页
编译技术习题3_第3页
编译技术习题3_第4页
编译技术习题3_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

编译技术习题3一、单项选择题1如果文法G是无二义的,则下面( )成立。A、对于文法中的任意一个句子,它的最左或最右推导对应的语法树相同 B、文法中的一个句子对应两棵不同的语法树 C、文法中的某个句子有两棵不同的最左推导 D、文法中的某个句子有两棵不同的最右推导2解释程序和编译程序是两类程序语言处理程序,它们的主要区别在于( )。A、单用户与多用户的差别 B、对用户程序的差错能力 C、机器执行效率 D、是否生成目标代码3有文法的开始符号经0步或多步推导产生的文法符号序列是( )。A、句型 B、短语 C、句柄 D、句子4规范规约分析法每次都是对( )进行归约。A、简单短语 B、句柄 C、最左短语 D、素短语5正规式MI和M2等价是指( )。A、MI和M2的状态数相等 B、Ml和M2的有向弧条数相等 C、M1和M2所识别的语言集相等 D、Ml和M2状态数和有向弧条数相等6后缀式ab+cd+/可用表达式( )来表示。A、a+b/c+d B、(a+b)/(c+d) C、a+b/(c+d) D、a+b+c/d7语法分析器则可以发现源程序中的( )。A、语义错误 B、语法和语义错误 C、错误并校正 D、语法错误8编译程序是一种( )。A、汇编程序 B、翻译程序C、解释程序 D、目标程序9数组的内情向量中肯定不含有数组的( )的信息。A、维数 B、类型 C、维上下界 D、各维的界差10某个语言,它能用正规表达式表示,但是不能使用任何正规文法表示,这个语言必然是( )。A、含二义性的语言 B、不存在的语言 C、1型文法所对应的语言 D、既含左递归又含右递归的语言11以下中间代码的表示形式中,( )更便于优化。A、三元式 B、四元式 C、树 D、后缀式12一个上下文无关文法消除了左递归,提取了左公共因子后是满足LL(1)文法的( )。A、必要条件 B、充分条件 C、充分必要条件 D、无关条件13通常一个编译程序中,不仅包含词法分析、语法分析、中间代码生成、代码优化、目标代码生成等五个部分,还应包括( )。A、模拟执行器 B、解释器 C、表格处理和出错处理 D、符号执行器14xab+cde-*f/+:=是赋值语句( )相应的后缀式。A、x:=a+b+c*d-e/f B、x:=a+(b+c)*d-e/fC、x:=a+b+c*(d-e)/f D、x:=a+b+c+(c*d)-e/f15( )是一种典型的解释型语言。A、BASIC B、C C、FORTRAN D、PASCAL16某个语言,它能用正规表达式表示,但是不能使用任何正规文法表示,这个语言必然是 ( )。A、含二义性的语言 B、不存在的语言 C、1型文法所对应的语言 D、既含左递归又含右递归的语言17间接三元式表示法的优点为( )。A、采用间接码表,便于优化处理 B、节省存储空间,不便于表的修改 C、便于优化处理,节省存储空间D、节省存储空间,不便于优化处理二、多项选择题1编译过程中扫描器的任务包括( )。A、组织原程序的输入 B、识别单词属性,并输出 C、删除注解 D、行计数、列计数2编译方法中自底向上的语法分析算法有( )。A、递归下降法 B、SLR方法 C、LL(K)分析方法 D、LR(K)方法3下面( )需要在运行阶段分配存储空间。 A、数组 B、指针变量 C、动态数组 D、静态变量E、动态变量4活动记录包括( )。A、局部变量 B、连接数据 C、形式单元 D、局部数组的内情变量E、临时工作单元5静态分配不允许程序出现( )。A、递归过程 B、静态数组 C、可变体积的数据项目 D、待定性质的名字E、静态变量6编译过程中,语法分析器的任务是( )。A、分析单词是怎样构成的 B、分析单词串是如何构成语句和说明的 C、分析语句和说明是如何构成程序的 D、分析程序的结构7栈式动态分配与管理因调用而进入过程之后,要做的工作是( )。A、定义新的活动记录的SP B、保护返回地址 C、传递参数值 D、建立DISPLAY表E、定义新的活动记录的TOP8源程序中的错误一般有( )。A、词法错误 B、语法错误 C、语义错误 D、编译错误E、违反环境限制的错误三、判断题(正确填“T”,错误填“F”)1语法制导翻译只适用于自下而上的语法分析方法。( )2分析器的基本动作是移进和规约,实际可能的动作还有接受和报错。( )3在编译中进行语法检查的目的是为了发现程序中所有错误。( ) 4自底而上语法分析方法的主要问题是候选式的选择。( )5削减运算强度破坏了临时变量在一基本块内仅被定义一次的特性。( ) 6一个活前缀r的有效项目集就是从这个DFA的初态出发,沿着标记为r的路径到达的那个项目集。( )7在程序中标识符的出现仅为使用性的。( ) 8编译程序与具体的机器有关,与具体的语言无关。( ) 9递归下降分析法是自顶向上分析方法。( ) 四、填空题1一个名字的属性包括_和_。2文法符号的属性有两种,一种称为_,另一种称为_。3典型的编译程序是由_、_以及_和_组成的。4文法符号的属性有综合属性和_。5对编译程序而言,输入数据是_,输出结果是_。6语法分析基于_文法进行,即识别的是该类文法的句子。语法分析的有效工具是_。7如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是_。8一个文法GZ若存在推导序列Z=+Z,则称GZ是_文法。9产生式是用于定义_的一种书写规则。10自顶向下的语法分析方法的基本思想是:从文法的_开始,根据给定的输入串并按照文法的产生式一步一步的向下进行_,试图推导出文法的_,使之与给定的输入串_。五、综合题1什么是S-属性文法?什么是L-属性文法?它们之间有什么关系?2. 优化编译器对下面程序的局部变量i和j不分配空间,为什么?main()long i, j;i = 5;j = i * 2;printf(%dn, i+j);编译技术习题3答案 一、单项选择题题号123456789答案ADABCBDCA题号1011121314151617答案BBACCABA二、多项选择题题号12345678答案ABCDEBDCEABCDEACDBCDABDEABCE三、判断题(正确填“T”,错误填“F”)题号123456789答案FTFFTTFFT四、填空题1、类型 作用域2、继承属性 综合属性3、词法分析 语法分析 语义分析及中间代码生成 目标代码生成4、继承属性5、源程序 目标程序6、上下文无关 语法树7、二义的8、递归9、语法范畴 10、开始符号 直接推导 句子 匹配五、问答/综合题1.答:S-属性文法是只含有综合属性的属性文法。 L-属性文法要求对于每个产生式AX1X2Xn,其每个语义规则中的每个属性或者是综合属性,或者是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论