




免费预览已结束,剩余12页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编译原理一、单选题1、将编译程序分为若干个“遍”是为了()。ba. 提高程序的执行效率b. 使程序的结构更加清晰c. 利用有限的机器内存并提高机器的执行效率d. 利用有限的机器内存但降低了机器的执行效率2、构造编译程序应掌握() 。da. 源程序b. 目标语言c. 编译方法d. 以上三项都是3、变量应当() 。ca. 持有左值b. 持有右值c. 既持有左值又持有右值d. 既不持有左值也不持有右值4、编译程序绝大多数时间花在()上。da. 出错处理b. 词法分析c. 目标代码生成d. 管理表格精品资料5、()不可能是目标代码。da. 汇编指令代码b.可重定位指令代码c. 绝对指令代码d. 中间代码6、编译程序是对() 。da. 汇编程序的翻译b. 高级语言程序的解释执行c. 机器语言的执行d. 高级语言的翻译7、正规式 m1 和 m2 等价是指()。ca.m1 和 m2 的状态数相等b.m1 和 m2 的有象弧条数相等c.m1 和 m2 所识别的语言集相等d.m1 和 m2 状态数和有象弧条数相等8、如果文法 g 是无二义的,则它的任何句子()。aa. 最左推导和最右推导对应的语法树必定相同。b. 最左推导和最右推导对应的语法树可能相同。c. 最左推导和最右推导必定相同。d. 可能存在两个不同的最左推导,但它们对应的语法树相同。9、文法 g: ss+t|ttt*p|p p(s)|i句型 p+t+i 的短语有() ba. i,p+tb.p, p+t ,i,p+t +ib.p+t + id.p,p+t , i10 、产生正规语言的文法为()。da.0 型b.1 型c.2 型d.3 型11 、文法 g:sb|?|(t)tt?s|s则 firstvt(t)=()ca.b , ?,(b.b , ?,)c.b ,?,(,?d.b , ?,),?12 、给定文法: aba | cc ,下面的符号串中,为该文法句子的是()。 a ccbcbcbcbccbccbccbbbcc可选项有:a.b.c.d.13 、采用自上而下分析,必须()。ca. 消除左递归b. 消除右递归c. 消除回溯d.提取公共左因子14 、由文法的开始符经0 步或多步推导产生的文法符号序列是()。ca. 短语b. 句柄c.句型d. 句子15 、后缀式 ab+cd+/ 可用表达式()来表示。b a.a+b/c+db.(a+b)/(c+d)c.a+b/(c+d)d.a+b+c/d16 、语法分析器则可以发现源程序中的()。da. 语义错误b. 语法和语义错误c. 错误并矫正d. 语法错误17 、在语法分析处理中,first 集合、 follow集合、 select集合均是() 。ba. 非终极符集b. 终极符集d. 字母表d.状态集18 、四种形式语言文法中,1 型文法又称为() 。ca.短语结构文法b. 前后文无关文法c.前后文有关文法d. 正规文法19、优化可生成()的目标代码。da.运行时间较短b. 占用存储空间较小c.运行时间短但占用内存空间大d.运行时间短且占用内存空间小20、四元式之间的联系是通过()实现的。ba.指示器b. 临时变量c.符号表d. 程序变量二、多选题1、如果在文法g 中存在一个句子,当其满足下列条件( bcd)之一时,则称该文法是二义文法。a. 其最左推导和最右推导相同b.该句子有两个不同的最左推导c. 该句子有两个不同的最右推导d.该句子有两棵不同的语法树e. 该句子对应的语法树唯一2、下面( bcd )语法制导翻译中,采用拉链回填技术。a、赋值语句b、布尔表达式的计算c、条件语句d、循环语句3、一般程序设计语言的定义都涉及到(abc)3 个方面。a、语法b、语义c、语用d、程序基本符号的确定4、程序语言一般分为(a)和(b)。a 高级语言b 低级语言c 专用程序语言d 通用程序语言5、编译程序工作时,通常有(abcd)阶段。a、词法分析b、语法分析c、中间代码生成d、语义检查e、目标代码生成6、编译过程中,语法分析的任务是( bcd)。a、分析单词是怎样构成的b、分析单词是如何构成语句和说明的c、分析语句和说明是如何构成程序的d、分析程序的结构7、语法分析的常用方法有(ab)。a、自顶向下b、自底向上c、自左向右d、自右向左8、程序设计语言常见的数据类型有:(abcd )a、数值型数据b、逻辑数据c、字符数据d、指针类型9、构造编译程序应掌握(abc )。a、源程序b、目标语言c、编译方法d、以上都不是10 、编译程序前三个阶段完成的工作是(abc )a、词法分析b、语法分析c、语义分析和中间代码生成d、代码优化11 、一个上下文无关文法g包括四个组成部分:一组终结符,一组非终结符, 以及( bc)。a、一组字符串b、一组产生式c、一个开始符号d、一个文法12 、描述一个语言的文法是(c、d)。a、唯一的b、不唯一的c、可能唯一d、也可能不唯一 13 、设有文法 gi :ii1|i0|ia|ic|a|b|c下列符号串中是该文法句子的有 (bcd )。a、ab0b、a0c01c、aaad、bc1014 、运行阶段的存储组织与管理的目的是(cd )。a、提高编译程序的运行速度b、节省编译程序的存储空间c、提高目标程序的运行速度d、为运行阶段的存储分配做准备15 、已知文法 ge :ete e+te tftt*ft f(e)id求:follow (f)=( d ), first(t)=( b )a、 *,+b、*,c、+,#,)d、 *,+,#,)e、 #,)f、*,+,#,id 16 、面向机器语言的特点是(abc)。a、程序的执行效率高b、编制效率低c、可读性差d、可读性强17 、编译程序使用(ab)区别标识符的作用域。a、说明标识符的过程b、函数的静态层次 c、函数的动态层次d、标识符的行号18 、词法分析器的输出结果是(ad)a、单词的种别编码b、单词在符号表中的位置c、单词的长度d、单词自身值19 、优化可生成(ad)的目标代码。a、运行时间较短b、占用存储空间较大c、运行时间短且占用内存空间大d、占用存储空间小22 、编译程序各阶段的工作都涉及到(bc)a、语法分析b、表格管理c、出错处理d、语义分析f、词法分析三、填空题1. 编译程序的工作过程一般可以划分为词法分析,语法分析 , 语义分析 ,中间代码 生成,代码优化等几个基本阶段,同时还会伴有 表格处理 和 出错处理 。2. 若源程序是用高级语言编写的, 目标程序 是机器语言程序或汇编程序, 则其翻译程序称为 编译程序 。3. 编译方式与解释方式的根本区别在于 是否生成目标代码 。4. 对编译程序而言 ,输入数据是 源程序 , 输出结果是 目标程序 。5. 产生式是用于定义 语法成分 的一种书写规则。6. 语法分析最常用的两类方法是 自上而下 和 自下而上 分析法7. 设 g 是一个给定的文法,s 是文法的开始符号,如果s-x( 其中 xvt*), 则称 x 是文 法的一个 句子 。8. 递归下降法不允许任一非终极符是直接 左 递归的。9. 常用的参数传递方式有 传地址 ,传值和传名。10. 在使用高级语言编程时, 首先可通过编译程序发现源程序的全部 语法 错误和语义的部分错误。11. 一个句型中的最左简单短语称为该句型的 句柄_。12. 一个典型的编译程序中,不仅包括 词法分析 、 语法分析 、 中间代码生成 、 代码优化、目标代码生成等五个部分,还应包括表格处理和出错处理。13. 从功能上说,程序语言的语句大体可分为 执行性 语句和 说明性 语句两大类。14. 语法分析是依据语言的 语法 规则进行的,中间代码产生是依据语言的 语义 规 进行的。15. 产生式是用于定义 语法成分 的一种书写规则。16. 计算机执行用高级语言编写的程序主要有两种途径: 解 释 和 编 译 。17. 局部优化是在 基本块 范围内进行的一种优化。18. 词法分析基于 正则 文法进行,即识别的单词是该类文法的句子。19. 语法分析基于 上下文无关 文法进行,即识别的是该类文法的句子。语法分析的有效 工具是 语法树 。20. 一个文法能用有穷多个规则描述无穷的符号串集合(语言)是因为文法中存在有 递归 定义的规则。四、名词解释( 1) 2 型文法(上下文无关文法)若文法 g=( vn,vt ,p,s)中的每一条规则的形式为a,其中 avn, (v nvt)*,则称 g 是 2 型文法。(2) )二义性文法如果一个文法存在某个句子对应两课不同的语法树,则称这个文法是二义性文法。(3) )有穷自动机是具有离散输入与输出系统的一种抽象数学模型。(4) )算符文法设有文法 g,若 g 中没有形如 uvw的规则,其中v 和 w 为非终结符,则称 g 为算符文法。(5) )素短语素短语是指这样一种短语,它至少包含一个终结符,并且除自身之外,不再包含其他任何更小的素短语。(6) )语法制导翻译法在语法分析过程中, 根据相应文法的每一规则所对应的语义子程序进行翻译的方法。(7) )基本块指程序中一顺序执行的语句序列,其中只有一个入口和一个出口,入口就是其中的第一个语句,出口就是其中的最后一个语句。(8) )句柄一个句型的最左直接短语称为该句型的句柄。(9) )待用信息如果在一个基本块中,四元式i 对 a 定值,四元式 j 要引用 a 值,而从 i 到 j之间没有 a 的其它定值,则称j 是四元式 i 的变量 a 的待用信息。(10) )局部优化局限于基本块范围的优化称。五、应用题1.编译过程的 5 个阶段是什么?第 1 阶段:词法分析第 2 阶段:语法分析第 3 阶段: 词义分析与中间代码产生第 4 阶段:代码优化第 5 阶段:目标代码生成2.请给出编译程序的结构框图。源程序词法分析程序语法分析程序表格管理程序语义分析和中间代码生成程序出错处理程序代码优化程序目标代码生成程序目标程序3. 设 有 文 法 ga: aa|b|e|aa|ae|a0|a1(1) )试问 vt 和 vn 是由哪些符号组成的?vn=avt=a,b,e,0,1(2) )下列符号串 a,ab0,a0e01,0a,11,eee是否为该文法的句子?a,a0e01,eee是该文法句子。4. 证明下面的文法是二义性的。sises|is|i5. 目标代码有哪几种形式?生成目标代码时通常应考虑哪几个问题?目标代码通常采用三种形式:机器语言,汇编语言,待装配机器语言模块。应着重考虑的问题:(1)如何使生成的目标代码较短;(2) 如何充分利用寄存器,以减少访问内存次数;(3)如何充分利用指令系统的特点。6. 基本的优化方法有哪几种?删除多余运算,代码外提,强度削弱,变换循环控制条件,合并已知量,复写传播和删除无用赋值。7. 构造下列正规式相应的dfa (用状态转换图表示)( 1)1( 0|1 )*1( 2)0*10*10*10*1( 3)letter(letter|digit)*8. 给出下述文法所对应的正规式。saaaba|ab|bbaa对应的正规式为: r=a(b|aa)*b解析:9.给出文法 gs, 构造相应最小的dfasas|ba|ba
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 混铁炉工成本控制考核试卷及答案
- 铝电解工专项考核试卷及答案
- 钼铁冶炼工三级安全教育(班组级)考核试卷及答案
- 2025临时工劳动合同
- 电梯安全管理人员摸底考试题库以及答案
- 竹藤家具制作工效率提升考核试卷及答案
- 值班和交接班制度考试试题(含答案)
- 2025年的借款合同范文
- 《2025年度劳动合同》
- 关于护理十八项核心制度的题库(附答案)
- 脑转移瘤的治疗进展
- 临床成人失禁相关性皮炎的预防与护理团体标准解读
- 脚手架工安全技术交底(完整版)
- DB14-T 3095-2024 致密砂岩气开发排采水回注技术规范
- 接触网运行与检修 课件全套 薛艳红 第1-9章 电气化铁道概述-高速铁路接触网精测精修
- 2024-2030年中国抗衰老产品和服务行业市场发展趋势与前景展望战略研究报告
- 输变电工程质量通病防治手册
- 酒店实美学 课件全套 杨卉 第1-13章 酒店美学概述-酒店服务之美
- 2024年秋季新人教版九年级上册化学全册教案
- 液碱卸车安全操作规程
- 建筑用砂石料采购 投标方案(技术方案)
评论
0/150
提交评论