编译原理第三版期末复习.docx
- 文档编号:285142
- 上传时间:2022-10-08
- 格式:DOCX
- 页数:16
- 大小:25.87KB
编译原理第三版期末复习.docx
《编译原理第三版期末复习.docx》由会员分享,可在线阅读,更多相关《编译原理第三版期末复习.docx(16页珍藏版)》请在冰豆网上搜索。
编译原理第三版期末复习
期末复习总结《编译原理》
第一章:
绪论
一、填空问题
①由于计算机只能认识机器语言,所以需要翻译程序将高级语言翻译成计算机可以识 别的机器语言。
②编译程序的工作过程一般主要划分为词法分析,语法分析,中间代码生成,代码优化,目标代码生成等几个基本阶段,同时还会伴有表格管理和出错处理。
③如果编译程序生成的目标程序是机器代码程序,则源程序的执行分为两个阶段:
编译阶段和运行阶段。
如果编译程序生成的目标程序是汇编语言的程序,则源程序的执行分为三个阶段:
编译阶段,汇编阶段和运行阶段。
1-02.若源程序是用高级语言编写的,目标程序是机器语言程序或汇编程序,则其翻译程序称为编译程序.
1-03.编译方式与解释方式的根本区别在于是否生成目标代码.
1-05.对编译程序而言,输入数据是源程序,输出结果是目标程序.
1-10.一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生
成等五个部分,还应包括
(1)c.其中,
(2)b和代码优化部分不是每个编译程序都必需的.
词法分析器用于识别(3)c,语法分析器则可以发现源程序中的(4)d.
(1) a.模拟执行器 b.解释器 c.表格处理和出错处理 d.符号执行器
(2) a.语法分析 b.中间代码生成 c.词法分析 d.目标代码生成
(3) a.字符串 b.语句 c.单词 d.标识符
(4) a.语义错误 b.语法和语义错误 c.错误并校正 d.语法错误
1-11.程序语言的语言处理程序是一种
(1)a.
(2)b是两类程序语言处理程序,他们的主要区别在于(3)d.
(1) a.系统软件 b.应用软件 c.实时系统 d.分布式系统
(2) a.高级语言程序和低级语言程序 b.解释程序和编译程序
c.编译程序和操作系统 d.系统程序和应用程序
(3) a.单用户与多用户的差别 b.对用户程序的查错能力
c.机器执行效率 d.是否生成目标代码
1-12.汇编程序是将a翻译成b,编译程序是将c翻译成d.
a.汇编语言程序b.机器语言程序c.高级语言程序
d.a或者be.a或者cf.b或者c
1-13.下面关于解释程序的描述正确的是b.
(1)解释程序的特点是处理程序时不产生目标代码
(2)解释程序适用于COBOL和FORTRAN语言
(3)解释程序是为打开编译程序技术的僵局而开发的
a.
(1)
(2) b.
(1) c.
(1)
(2)(3) d.
(2)(3)
1-14.高级语言的语言处理程序分为解释程序和编译程序两种.编译程序有五个阶段,而解释程序通常缺少
(1)e和
(1)b.其中,
(1)e的目的是使最后阶段产生的目标代码更为高效.
与编译系统相比,解释系统
(2)d.解释程序处理语言时,大多数采用的是(3)b方法.
(1):
a.中间代码生成 b.目标代码生成 c.词法分析 d.语法分析 e.代码优化
(2):
a.比较简单,可移植性好,执行速度快
b.比较复杂,可移植性好,执行速度快
c.比较简单,可移植性差,执行速度慢
d.比较简单,可移植性好,执行速度慢
(3):
a.源程序命令被逐个直接解释执行b.先将源程序转化为之间代码,再解释执行
c.先将源程序解释转化为目标程序,在执行d.以上方法都可以
1-15.用高级语言编写的程序经编译后产生的程序叫b.用不同语言编写的程序产生a后,可用g连接在一起生成机器可执行的程序.在机器中真正执行的是e.
a.源程序 b.目标程序 c.函数 d.过程
e.机器指令代码 f.模块 g.连接程序 h.程序库
1-16.要在某一台机器上为某种语言构造一个编译程序,必须掌握下述三方面的内容:
c,d,f.
a.汇编语言 b.高级语言 c.源语言 d.目标语言
e.程序设计方法 f.编译方法 g.测试方法 h.机器语言
1-17.由于受到具体机器主存容量的限制,编译程序几个不同阶段的工作往往被组合成
(1)d,
诸阶段的工作往往是
(2)d进行的.
(1)a.过程 b.程序 c.批量 d.遍
(2)a.顺序 b.并行 c.成批 d.穿插
1-18.编译程序与具体的机器a,与具体的语言a.
a. 有关 b.无关
1-19.使用解释程序时,在程序未执行完的情况下,a重新执行已执行过的部分.
a.也能 b.不可能
1-20.编译过程中,语法分析器的任务就是b.
(1)分析单词是怎样构成的
(2)分析单词串是如何构成语句和说明的
(3)分析语句和说明是如何构成程序的 (4)分析程序的结构
a.
(2)(3) b.
(2)(3)(4) c.
(1)
(2)(3) d.
(1)
(2)(3)(4)
1-21.编译程序是一种常用的b软件.
a. 应用 b.系统
1-22.编写一个计算机高级语言的源程序后,到正式上机运行之前,一般要经过b这几步.
(1)编辑
(2)编译 (3)连接 (4)运行
a.
(1)
(2)(3)(4) b.
(1)
(2)(3) c.
(1)(3) d.
(1)(4)
1-23.编译程序必须完成的工作有a.
(1)词法分析
(2)语法分析 (3)语义分析
(4)代码生成 (5)之间代码生成 (6)代码优化
a.
(1)
(2)(3)(4) b.
(1)
(2)(3)(4)(5) c.
(1)
(2)(3)(4)(5)(6)
d.
(1)
(2)(3)(4)(6) e.
(1)
(2)(3)(5)(6)
1-24.“用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行”这种说法a.
a.不正确 b.正确
1-25.把汇编语言程序翻译成机器可执行的目标程序的工作是由b完成的.
a.编译器 b.汇编器 c.解释器 d.预处理器
1-26.编译程序生成的目标程序b是机器语言的程序.
a. 一定 b.不一定
1-27.编译程序生成的目标程序b是可执行的程序.
a. 一定 b.不一定
1-28.编译程序是一种B。
A.汇编程序B.翻译程序C.解释程序D.目标程序
1-29.按逻辑上划分,编译程序第二步工作是C。
A.语义分析B.词法分析C.语法分析D.代码优化
1-30.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括C。
A.模拟执行器 B.解释器 C.表格处理和出错处理 D.符号执行器
1)把汇编语言程序翻译成机器可执行的目标程序的工作是由什么完成的?
解答:
由汇编器(汇编程序)完成的。
19)编译程序是一种解释程序吗?
还是什么程序?
解答:
编译程序是一种翻译程序。
二、判断问题
①高级语言程序必须经过编译程序的翻译才被计算机识别和执行。
( 错 )
答:
对高级语言的翻译,还有解释程序。
②编译程序的输入是高级语言,输出是机器语言程序。
(错)
答:
输出还有汇编语言程序。
③具有优化功能的编译程序的工作效率高。
(错)
答:
优化是编译程序的的一部分,优化的目的,是提高目标程序的质量和运行效率。
④有的编译程序可以没有目标代码生成部分。
(错)
答:
编译程序必须生成目标代码,所以目标代码生成部分是不可缺少的。
1-31.计算机高级语言翻译成低级语言只有解释一种方式。
(×)
1-32.在编译中进行语法检查的目的是为了发现程序中所有错误。
(×)
第二章:
词法分析
一、填空题
1、编译过程中扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位—单词。
2、高级程序设计语言的单词通常分为五类,它们是关键字、标识符、常数、运算符以及界限符。
3、确定的有限自动机是一个五元组,通常表示为DFA M=(S,,,S0,F)。
4、词法分析的任务是输入源程序,输出单词符号。
5、确定有限自动机DFA是NFA的一种特例。
6、若二个正规式所表示的正规集相同,则认为二者是等价的。
8-01.符号表中的信息栏中登记了每个名字的属性和特征等有关信息,如类型、种属、所占单元大小、地址等等。
6-04.终结符只有综合属性,它们由词法分析器提供。
二、判断题
1、一些语言,它们能被确定的有限自动机识别,但不能用正规表达式表示。
( 错 ) 答:
用正规式表示的语言,都能被确定的有限自动机识别。
2、每一个NFA M都对应有唯一的一个最小化的DFA M。
( 对 )
答:
每一个NFA M都可以构造一个DFA M,而DFA M又可以构造一个最小化的DFA M。
3、一个有限自动机,仅有一个唯一的终态。
(错)
答:
有限自动机的终态可以有多个。
4、确定的有限自动机以及不确定的有限自动机都能正确识别正规集。
(对)
答:
一个有限自动机能识别该正规式,所描述的语言(正规集)。
5、对任意一个正规文法G,都存在一个DFA M,满足L(G)=L(M)。
(对)
答:
对每一个正规文法G,都存在一个DFA M,使得L(G)=L(M)。
1、正规文法一定不是二义性的。
(错)
答:
文法的二义性问题是不可避免和不可判定的,正规文法也可能存在二义性的问题。
2、文法的二义性和语言的二义性是两个不同的概念。
(对)
答:
可能有两个不同的文法G和G`,其中G是二义性的,但是却有L(G)= L(G`)。
3、一个句型对应的一棵语法树,包括了该句型的所有推导。
(错)
答:
一棵语法树,只能对应一个推导,所以不能包括该句型的所有推导。
三、选择题
1、在词法分析中能识别出a,c,e。
a、关键字 b、四元式 c、运算符 d、逆波兰式 e、常数
2、令Σ={a,b},则Σ上所有以b开头,后跟若干个ab的字的全体对应的正规式b,d。
a、b(ab)* b、b(ab)+ c、(ba)*b d、(ba)+b e、b(ba)*
3、词法分析所依据的是b。
a、语义规则 b、词法规则 c、语法规则 d、等价变换规则
4、正规式V1和V2等价是指c。
a、V1和V2的状态数相等 b、V1和V2的有向弧条数相等
c、V1和V2所识别的语言集相等 d、V1和V2状态数和有向弧条数相等
5、令Σ={a,b},正规式abc代表的正规集b。
a、{a} b、{a,b,c} c、{abc} d、{b,c}
6、有限状态自动机能识别正规文法。
三、简答题
1、什么是扫描器?
扫描器的功能是什么?
扫描器就是词法分析器,它接受输入的源程序,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 第三 期末 复习