编译原理模拟题

上传人:wt****50 文档编号:34561185 上传时间:2018-02-25 格式:DOC 页数:12 大小:218.50KB
返回 下载 相关 举报
编译原理模拟题_第1页
第1页 / 共12页
编译原理模拟题_第2页
第2页 / 共12页
编译原理模拟题_第3页
第3页 / 共12页
编译原理模拟题_第4页
第4页 / 共12页
编译原理模拟题_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《编译原理模拟题》由会员分享,可在线阅读,更多相关《编译原理模拟题(12页珍藏版)》请在金锄头文库上搜索。

1、一、 填空题(每空 1 分,共 20 分)1编 译 过 程 一 般 分 为 词法分析 、 语法分析、 中 间 代 码 生 成 、 代码优化和 目 标 代 码 生 成 五 个 阶 段 。2语法分析最常用的两类方法是自上而下 和 自下而上 分析法。3确定的有穷自动机是一个 五元组 ,通常表示为 DFA=(K , , M, S, Z) 。4所谓最右推导是指 任何一步都是对中最右非终结符进行替换 。5语法分析器的任务是 分析一个文法的句子结构。6如果一个文法的任何产生式的右部都不含有相邻的非终结符,则这种文法称为 算符 文法。7进行确定的自上而下语法分析要求语言的文法是无 左递归 和 公共左因子 的。

2、8LR 分析法是一种 自下而上 的语法分析方法。9根据优化对象所涉及的程序范围,代码优化分为 局部优化 、循环优化和 局部优化 等。10常用的优化技术包括: 删除公共子表达式 、 代码外提 、 强 度 削 弱 、 复 写 传 播 、变换循环控制条件 等。(合并已知量、删除无用赋值)二、是非题(下列各题,你认为正确的,请在题后的括号内打“ ”,错的打“”。每题 2分,共 20 分) 1正规文法产生的语言都可以用上下文无关文法来描述。( )2仅考虑一个基本块,不能确定一个赋值是否真是无用的。( )3如果一个文法是递归的,则其产生的语言的句子是无穷个。 ( )4四元式之间的联系是通过符号表实现的。(

3、 )5文法的二义性和语言的二义性是两个不同的概念。 ( )6一个 LL( l)文法一定是无二义的。 ( )7在规范规约中用最左素短语来刻划可归约串。( )8目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。 ( )9编译程序是对汇编程序的翻译。 ( )10逆波兰法表示的表达式亦称前缀式。 ( )三、 简答题(每题 5 分,共 15 分)1、简述栈式存储管理策略; 2、何谓 DAG; 3、何谓文法的二义性;四、 给出下述文法对应的正规式 (7 分)S 0A| 1B A1S | 1 B0S | 0解:首先得正规式方程组: S=0A+1BA=1S+1B=0S+0求解该方程组得: S=(01|1

4、0)(01|10)* 五、 已知文法 G(E): (2 分)是文法 GS的句型。ET | E+T | E-T 短语:E+T*F, T*F (2 分)TF | T*F | T/F 直接短语:T*F (2 分)F(E) | I 句柄:T*F (2 分)证明 E+T*F 是该文法的一个句型,并指出该句型的所有短语、直接短语和句柄。(8 分)1. 何谓二义性文法?试举一例说明。 (5)答:若文法 G 的一个句子对应有两棵或两棵以上不同的推导树,则称该句子是二义性的。产生二义性句子的文法称为二义性文法,否则该文法是无二义性的。例子:给定文法 G:*|a|b考察句子 ab*,它有两棵不同的推导树,如下所示

5、: a * b * a b 编译原理模拟试题一一、是非题(请在括号内,正确的划,错误的划)(每个 2 分,共 20 分)1计算机高级语言翻译成低级语言只有解释一种方式。()2在编译中进行语法检查的目的是为了发现程序中所有错误。()3甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。 ( )4正则文法其产生式为 A-a , A-Bb, A,BVN , a 、 bVT 。 ()5每个文法都能改写为 LL(1) 文法。 ()6递归下降法允许任一非终极符是直接左递归的。 ()7算符优先关系表不一定存在对应的优先函数。 ()8自底而上语法分析方法的主要问题是候选式的选择。

6、 ()9LR 法是自顶向下语法分析方法。 ()10简单优先文法允许任意两个产生式具有相同右部。 ()二、选择题(请在前括号内选择最确切的一项作为答案划一个勾,多划按错论)(每个 4 分,共 40 分)1 一个编译程序中,不仅包含词法分析,_,中间代码生成,代码优化,目标代码生成等五个部分。A( ) 语法分析 B( )文法分析C( )语言分析D( )解释分析2 词法分析器用于识别_。 A( ) 字符串 B( )语句C( )单词 D( )标识符3 语法分析器则可以发现源程序中的_。A( ) 语义错误 B( ) 语法和语义错误C( ) 错误并校正 D( ) 语法错误4 下面关于解释程序的描述正确的是

7、_。 (1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A( ) (1)(2) B( ) (1) C( ) (1)(2)(3) D( ) (2)(3)5 解释程序处理语言时 , 大多数采用的是_方法。A( ) 源程序命令被逐个直接解释执行 B( ) 先将源程序转化为中间代码 , 再解释执行C( ) 先将源程序解释转化为目标程序 , 再执行 D( ) 以上方法都可以6 编译过程中 , 语法分析器的任务就是_。(1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3

8、) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A( ) (2)(3) B( ) (2)(3)(4)C( ) (1)(2)(3) D( ) (1)(2)(3)(4)7 编译程序是一种_。A. ( ) 汇编程序 B( ) 翻译程序 C( ) 解释程序 D( ) 目标程序8 文法 G 所描述的语言是_的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串B( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串C( ) 由文法的开始符号推出的所有终极符串D. ( ) 由文法的开始符号推出的所有符号串9 文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3

9、型文法是_。A. ( ) 短语文法 B( ) 正则文法 C( ) 上下文有关文法 D( ) 上下文无关文法10 一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 _。A( ) 句子 B( ) 句型C( ) 单词 D( ) 产生式2文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 0 型文法是_。A. ( ) 短语文法 B( ) 正则文法 C( ) 上下文有关文法 D( ) 上下文无关文法3一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 _。 A( ) 句子 B( ) 句型 C

10、 ( ) 单词 D( ) 产生式4_是一种典型的解释型语言。 A( ) BASIC B ( ) C C( ) FORTRAN D( ) PASCAL5与编译系统相比,解释系统_。A( ) 比较简单 , 可移植性好 , 执行速度快 B( ) 比较复杂 , 可移植性好 , 执行速度快 C( ) 比较简单 , 可移植性差 , 执行速度慢 D( ) 比较简单 , 可移植性好 , 执行速度慢 6用高级语言编写的程序经编译后产生的程序叫_。 A( ) 源程序 B( ) 目标程序 C ( ) 连接程序 D ( ) 解释程序7词法分析器用于识别_。 A. ( ) 字符串 B( ) 语句 C( ) 单词 D(

11、) 标识符 8编写一个计算机高级语言的源程序后 , 到正式上机运行之前,一般要经过_这几步:(1) 编辑 (2) 编译 (3) 连接 (4) 运行 A. ( ) (1)(2)(3)(4) B( ) (1)(2)(3) C( ) (1)(3) D ( ) (1)(4)9把汇编语言程序翻译成机器可执行的目标程序的工作是由_完成的。A( ) 编译器 B( ) 汇编器 C( ) 解释器 D( ) 预处理器10文法 G 所描述的语言是 _的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串B( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串C( ) 由文法的开始符号推出的所有

12、终极符串D. ( ) 由文法的开始符号推出的所有符号串三、填空题(每空 1 分,共 10 分)1编译程序的工作过程一般可以划分为词法分析,语法分析,语义分析,中间代码生成,代码优化等几个基本阶段,同时还会伴有_表格处理_和 _出错处理_。 2若源程序是用高级语言编写的,_目标程序_是机器语言程序或汇编程序,则其翻译程序称为 _编译程序_ 。3编译方式与解释方式的根本区别在于_是否生成目标代码_。4对编译程序而言,输入数据是_源程序_, 输出结果是_目标程序_。5产生式是用于定义_语法成分_的一种书写规则。 6语法分析最常用的两类方法是_自上而下_和_自下而上_分析法。 1语法分析是依据语言的_

13、语法_规则进行的,中间代码产生是依据语言的_语义_规进行的。2语法分析器的输入是_单词符号串_,其输出是_语法单位_。3一个名字的属性包括_类型_和_作用域_。5逆波兰式 ab+c+ d*e- 所表达的表达式为_(a+b+c)*d-e_ 。 1词法分析基于_正则_文法进行,即识别的单词是该类文法的句子。 2语法分析基于_上下文无关_文法进行,即识别的是该类文法的句子。语法分析的有效工具是_语法树_。3分析句型时,应用算符优先分析技术时,每步被直接归约的是_最左素短语_,而应用 LR 分析技术时,每步被直接归约的是 _句柄_。4语义分析阶段所生成的与源程序等价的中间表示形式可以有_逆波兰_、_四无式表示_与_三元式表示_等。5按 Chomsky 分类法,文法按照_规则定义的形式_进行分类。 6一个文法能用有穷多个规则描述无穷的符号串集合(语言)是因为文法中存在有_递归_定义的规则。 四、简答题(20 分)1. 什么是句子? 什么是语言 ? 答:(1)设 G 是一个给定的文法,S 是文法的开始符号,如果 S x(其中 xVT*),则称 x 是文法的一个句子。 (2)设 GS是给定文法,则由文法 G 所定义的语言 L(G)可描述为: L(G)xS x,xVT* 。2. 写一文法,使其语言是

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号