编译原理复习-中国矿业大学北京.docx

编译原理复习-中国矿业大学北京.docx

ID:58153811

大小:4.85 MB

页数:55页

时间:2020-04-25

编译原理复习-中国矿业大学北京.docx_第1页
编译原理复习-中国矿业大学北京.docx_第2页
编译原理复习-中国矿业大学北京.docx_第3页
编译原理复习-中国矿业大学北京.docx_第4页
编译原理复习-中国矿业大学北京.docx_第5页
资源描述:

《编译原理复习-中国矿业大学北京.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第1章引论(小结)1.编译程序的功能:将……翻译成……2.编译过程:词法分析、语法分析、语义分析、(中间代码生成、代码优化)、目标代码生成。3.解释程序的工作模式:一个个获取、分析并执行源程序语句。4.编译程序与解释程序的根本区别:是否生成目标代码。5.PL/0编译系统的构成:以语法语义分析程序为核心,词法分析程序和代码生成程序都作为一个独立的过程被语法语义分析程序调用。6.PL/0的语法描述:EBNF7.PL/0的目标代码:p-code8.PL/0的出错处理:语法错误、语义错误、运行错误第1章练习1、程序语言一般分为(1)和(2)两大类。其中(3)与人类自然语言比较接近

2、,(4)又称为面向机器的语言。A高级语言B专用程序语言C低级语言D通用程序语言ACAC2、面向机器的语言是指(1),其特点是(2)。(1)A.用于解决机器硬件设计问题的语言B.特定计算机系统所固有的语言C.各种计算机系统都通用的语言D.只能在一台计算机上使用的语言(2)A.程序执行效率低,编写效率低,可读性差B.程序执行效率低,编写效率高,可读性强C.程序执行效率高,编写效率高,可读性强D.程序执行效率高,编写效率低,可读性差BD3、编译程序是将(1)翻译成(2);汇编程序是将(3)翻译成(4)。A.汇编语言程序B.高级语言程序C.机器语言程序D.汇编语言程序或机器语言程

3、序E.汇编语言程序或高级语言程序BDAC4、编译程序的工作过程可以划分为(1)等六个阶段,同时还伴有(2)和(3)。(1)词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。(2)表格管理(3)出错处理5、编译程序可以发现源程序的全部(1)错误和部分(2)错误。A.语用B.语义C.语法D.运行CB6、要在某台机器上为某种语言构造一个编译程序(编译器),必须掌握的内容有(1)。A.汇编语言B.源语言C.目标语言D.程序设计方法学E.编译方法F.测试方法G.机器语言BCE7、一个编译程序,不仅包含词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生

4、成,还应包括(1)。其中(2)和(3)不是每个编译程序都必需的。词法分析器用于识别(4)。语法分析器可以发现源程序中的(5)。(1)表格处理和出错处理(2)中间代码生成(3)代码优化(4)单词(5)语法错误8、程序语言的语言处理程序是一种(1)。(2)都是程序语言的处理程序,两者的主要区别在于(3)。(1)A.系统软件B.应用软件C.实时软件D.分布式系统软件(2)A.高级语言程序和低级语言程序B.解释程序和编译程序C.编译程序和操作系统D.系统程序和应用程序(3)A.单用户与多用户的差别B.对用户程序的查错能力不同C.机器执行的效率不同D.是否生成目标代码ABD9、编译

5、器必须完成的工作有(1)。A. 词法分析B. 语法分析C. 语义分析D. 中间代码生成E. 代码优化F. 目标代码生成ABCF因为代码优化是为了提高目标程序的质量,不是必须的,没有优化源程序一样能够转化为目标代码。而中间代码生成是为代码优化服务的,没有代码优化的编译器可以直接生成目标代码。10、编译时,语法分析器的任务包括(1)。A. 分析单词是怎样构成的B. 分析单词串是如何构成语句和说明的C. 分析语句和说明是如何构成程序的D. 分析程序的结构BCD11、与编译程序相比,解释程序通常缺少(1),同时,解释程序(2),它处理语言时采用的方法是(3)。(1)A.中间代码生

6、成B.目标代码生成C.词法分析D.语法分析E.代码优化(2)A.比较简单,可以移植性好,执行速度快B.比较复杂,可以移植性好,执行速度快C.比较简单,可以移植性差,执行速度慢D.比较简单,可以移植性好,执行速度慢(3)A.源程序语句被直接解释执行B.将源程序逐句转化成中间代码,解释执行C.先将源程序解释转化为目标代码,再执行D.以上方法都行(1)BE(2)D(3)B编译与解释的根本区别:是否生成目标代码工作模式是一个个获取、分析并执行源程序12、判断:“含有代码优化的编译器的执行效率高”。错。含有代码优化的编译器,其优化是指对生成的目标代码进行了优化,而不是编译器本身得到

7、了优化,所以,它提高的是目标代码的执行效率,而不是编译器本身的执行效率。13.判断:“解释方式与编译方式的区别在于解释程序对源程序没有真正进行翻译”。错。编译方式和解释方式实际上都进行的翻译,只是编译相当于笔译,而解释相当于口译。解释方式下,不将于源程序彻底翻译成目标代码,而是每读入一条语句,将其翻译成中间代码,解释其含义并执行,然后再读入下一条语句,再翻译执行。编译方式和解释方式的根本区别在于“是否生成了目标代码”。1.编译程序有哪些主要构成成分?各自的主要功能是什么?a)词法分析:从左到右读入源程序的每个字符,对构成源程序

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。