ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:292.91KB ,
资源ID:25761824      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/25761824.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(编译原理复习题参考题.docx)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

编译原理复习题参考题.docx

1、编译原理复习题参考题编译原理复习题一、是非题1计算机高级语言翻译成低级语言只有解释一种方式。()3每个文法都能改写为 LL(1) 文法。 ()4算符优先关系表不一定存在对应的优先函数。 ()5LR分析方法是自顶向下语法分析方法。 ()6“ 用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行 ”这种说法。( )7一个句型的句柄一定是文法某产生式的右部。 ()9在中间代码优化中循环上的优化主要有不变表达式外提和削减运算强度。 ( )10对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。()11甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。

2、( )12递归下降分析法是自顶向下分析方法。( )13产生式是用于定义词法成分 的一种书写规则。 ()14在 SLR(1)分析法的名称中,S的含义是简单的。()15综合属性是用于 “ 自上而下 ” 传递信息。( )16符号表中的信息栏中登记了每个名字的属性和特征等有关信息,如类型、种属、所占单元大小、地址等等。 ()17程序语言的语言处理程序是一种应用软件。 ()18解释程序适用于 COBOL 和 FORTRAN 语言。 ()19一个 LL(l)文法一定是无二义的。 ()20正规文法产生的语言都可以用上下文无关文法来描述。 ()21一张转换图只包含有限个状态,其中有一个被认为是初态,最多只有一

3、个终态。 ()22目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。 ()22逆波兰法表示的表达式亦称后缀式 。 ( )23如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义的。 ( )24数组元素的地址计算与数组的存储方式有关。()25算符优先关系表不一定存在对应的优先函数。 ()26编译程序是对高级语言程序的解释执行。( )27一个有限状态自动机中,有且仅有一个唯一的终态。()28一个算符优先文法可能不存在算符优先函数与之对应。 ( )29语法分析时必须先消除文法中的左递归 。 ()30LR分析法在自左至右扫描输入串时就能发现错误,但不能准确地指出出错地点。 ()31逆

4、波兰表示法表示表达式时无须使用括号。 ( )32静态数组的存储空间可以在编译时确定。 ()33进行代码优化时应着重考虑循环的代码优化,这对提高目标代码的效率将起更大作用。 ()34两个正规集相等的必要条件是他们对应的正规式等价。 ()35一个语义子程序描述了一个文法所对应的翻译工作。 ()36设r和s分别是正规式,则有L(r|s)=L(r)L(s)。()37确定的自动机以及不确定的自动机都能正确地识别正规集。()38词法分析作为单独的一遍来处理较好。 ( )39构造LR分析器的任务就是产生LR分析表。 ()40规范归约和规范推导是互逆的两个过程。 ()41同心集的合并有可能产生新的“移进”/“

5、归约”冲突。 ( )42LR分析技术无法适用二义文法。 ( )43树形表示和四元式不便于优化,而三元式和间接三元式则便于优化。 ()44程序中的表达式语句在语义翻译时不需要回填技术。 ()45对中间代码的优化依赖于具体的计算机。 ( )46若一个句型中出现了某产生式的右部,则此右部一定是该句型的句柄。()47在程序中标识符的出现仅为使用性的。()49编译程序与具体的机器有关,与具体的语言无关。()二、选择题(请在前括号内选择最确切的一项作为答案划一个勾,多划按错论)1 一个编译程序中,不仅包含词法分析,( A ),中间代码生成,代码优化,目标代码生成等五个部分。A语法分析 B文法分析C语言分析

6、D解释分析2 语法分析器则可以发现源程序中的( D )。A语义错误 B语法和语义错误 C错误并校正 D语法错误3 解释程序处理语言时 , 大多数采用的是( B )方法。A源程序命令被逐个直接解释执行B先将源程序转化为中间代码 , 再解释执行C先将源程序解释转化为目标程序 , 再执行D以上方法都可以4 编译程序是一种( B )。A汇编程序 B翻译程序 C解释程序 D目标程序5 文法分为四种类型,即0型、1型、2型、3型。其中3型文法是( B )。A.短语文法 B正则文法 C上下文有关文法 D上下文无关文法6 通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五

7、个部分,还应包括( C )。A模拟执行器B解释器 C表格处理和出错处理 D符号执行器7 一个句型中的最左( B )称为该句型的句柄。A短语 B简单短语 C素短语 D终结符号 8 文法 GE :ETE TTFT FFa ( E )该文法句型 E F (E T) 的简单短语是下列符号串中的( B )。 ( E T ) E T F F (E T) A 和 B 和 C 和 D 9 词法分析器用于识别( C )。A句子 B句型 C单词 D产生式 10 在自底向上的语法分析方法中,分析的关键是( A )。 A寻找句柄 B寻找句型 C消除递归 D选择候选式 11 文法 G 产生的( D )的全体是该文法描述

8、的语言。A句型 B终结符集 C非终结符集 D句子12 若文法 G 定义的语言是无限集,则文法必然是( A )。 A递归的 B前后文无关的 C二义性的 D无二义性的13 四种形式语言文法中,1型文法又称为( C )文法。A短语结构文法 B前后文无关文法 C前后文有关文法 D正规文法 14 一个文法所描述的语言是( A )。A唯一的 B不唯一的 C可能唯一,好可能不唯一 D都不对15 ( B )和代码优化部分不是每个编译程序都必需的。A语法分析B中间代码生成 C词法分析 D目标代码生成 16( B )是两类程序语言处理程序。 A高级语言程序和低级语言程序 B解释程序和编译程序 C编译程序和操作系统

9、 D系统程序和应用程序 18. 一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组( D )。 A句子 B句型 C单词 D产生式19 文法分为四种类型,即0型、1型、2型、3型。其中2型文法是( D )。A短语文法 B正则文法 C上下文有关文法D上下文无关文法20文法 G 所描述的语言是( C )的集合。 A文法 G 的字母表 V 中所有符号组成的符号串 B文法 G 的字母表 V 的闭包 V* 中的所有符号串C由文法的开始符号推出的所有终极符串 D由文法的开始符号推出的所有符号串21词法分析器用于识别( C )。 A字符串 B语句 C单词 D

10、标识符22文法分为四种类型,即0型、1型、2型、3型。其中0型文法是( A )。A短语文法 B正则文法 C上下文有关文法 D上下文无关文法24( A )是一种典型的解释型语言。 ABASIC BC CFORTRAN DPASCAL25与编译系统相比,解释系统( D )。A比较简单 , 可移植性好 , 执行速度快 B比较复杂 , 可移植性好 , 执行速度快C比较简单 , 可移植性差 , 执行速度慢 D比较简单 , 可移植性好 , 执行速度慢 26用高级语言编写的程序经编译后产生的程序叫( B )。 A源程序B目标程序C连接程序 D解释程序27词法分析器用于识别( A )。 A字符串 B语句 C单

11、词 D标识符 28编写一个计算机高级语言的源程序后 , 到正式上机运行之前,一般要经过( B )这几步: (1) 编辑 (2) 编译 (3) 连接 (4) 运行 A(1)(2)(3)(4) B(1)(2)(3) C(1)(3)D(1)(4)29把汇编语言程序翻译成机器可执行的目标程序的工作是由( B )完成的。A编译器 B汇编器 C解释器 D预处理器31词法分析器的输出结果是( C )。A单词的种别编码 B单词在符号表中的位置 C单词的种别编码和自身值 D单词自身值32 正规式 M 1 和 M 2 等价是指( C )。 AM1和M2的状态数相等 BM1和M2的有向边条数相等CM1和M2所识别的

12、语言集相等 DM1和M2状态数和有向边条数相等 33 文法G:SxSx|y所识别的语言是( C )。Axyx B(xyx)* C Dx*yx* 34如果文法G是无二义的,则它的任何句子 ( A )。A最左推导和最右推导对应的语法树必定相同 B最左推导和最右推导对应的语法树可能不同C最左推导和最右推导必定相同 D可能存在两个不同的最左推导,但它们对应的语法树相同 35构造编译程序应掌握( D )。A源程序B目标语言 C编译方法 D以上三项都是36四元式之间的联系是通过( B )实现的。 A指示器 B临时变量 C符号表 D程序变量 37表达式(AB)(CD)的逆波兰表示为( B )。AABCD B

13、ABCD CABCD DABCD 41编译程序绝大多数时间花在( D )上。A出错处理 B词法分析 C目标代码生成 D表格管理42 编译程序是对( D )。 A汇编程序的翻译 B高级语言程序的解释执行C机器语言的执行 D高级语言的翻译 43 采用自上而下分析,必须( C )。A消除左递归 B消除右递归 C消除回溯 D提取公共左因子 44在规范归约中,用( B )来刻画可归约串。A直接短语 B句柄 C最左素短语 D素短语 45 若a为终结符,则A- a为( B ) 项目。A归约B移进 C接受 D待约 46间接三元式表示法的优点为( A )。 A采用间接码表,便于优化处理 B节省存储空间,不便于表

14、的修改C便于优化处理,节省存储空间 D节省存储空间,不便于优化处理 48. 在目标代码生成阶段,符号表用( D )。A目标代码生成 B语义检查 C语法检查 D地址分配49若项目集Ik含有A- ,则在状态k时,仅当面临的输入符号aFOLLOW(A)时,才采取“A- ”动作的一定是( D )。ALALR文法 BLR(0)文法 CLR(1)文法DSLR(1)文法三、填空题1编译程序的工作过程一般可以划分为词法分析,语法分析,语义分析,中间代码生成,代码优化等几个基本阶段,同时还会伴有_表格处理_和 _出错处理_。 2编译方式与解释方式的根本区别在于_是否生成目标代码_。3产生式是用于定义_语法成分_

15、的一种书写规则。 4设G是一个给定的文法,S是文法的开始符号,如果S-x( 其中 xVT*), 则称 x是文法的一个_句子_。 5自顶向下的语法分析方法的基本思想是:从文法的_开始符号_开始,根据给定的输入串并按照文法的产生式一步一步的向下进行_直接推导_,试图推导出文法的_句子_,使之与给定的输入串_匹配_。 7一个句型中的最左简单短语称为该句型的_句柄_。 8对于文法的每个产生式都配备了一组属性的计算规则,称为 _语义规则_ 。9一个典型的编译程序中,不仅包括_词法分析_、_语法分析_、_中间代码生成_、代码优化、目标代码生成等五个部分,还应包括表格处理和出错处理。10 从功能上说,程序语

16、言的语句大体可分为_执行性_语句和_说明性_语句两大类。11 扫描器的任务是从_源程序_中识别出一个个_单词符号_。 12 产生式是用于定义_语法范畴_的一种书写规则。13语法分析是依据语言的_语法_规则进行的,中间代码产生是依据语言的_语义_规进行的。14语法分析器的输入是_单词符号串_,其输出是_语法单位_。15一个名字的属性包括_类型_和_作用域_。16逆波兰式 ab+c+ d*e- 所表达的表达式为_(a+b+c)*d-e_ 。 17语法分析最常用的两类方法是_自上而下_和_自下而上_分析法。18计算机执行用高级语言编写的程序主要有两种途径:_解释_和_编译_。 19扫描器是_词法分析

17、器_,它接受输入的_源程序_,对源程序进行_词法分析_并识别出一个个单词符号,其输出结果是单词符号,供语法分析器使用。20自上而下分析法采用_移进_、归约、错误处理、_接受_等四种操作。21一个LR分析器包括两部分:一个总控程序和_一张分析表_。22后缀式abc-/所代表的表达式是_a/(b-c)_。 23局部优化是在_基本块_范围内进行的一种优化。24词法分析基于_正则_文法进行,即识别的单词是该类文法的句子。 25语法分析基于_上下文无关_文法进行,即识别的是该类文法的句子。语法分析的有效工具是_语法树_。26分析句型时,应用算符优先分析技术时,每步被直接归约的是_最左素短语_,而应用LR

18、分析技术时,每步被直接归约的是_句柄_。27语义分析阶段所生成的与源程序等价的中间表示形式可以有_逆波兰_、_四无式表示_与_三元式表示_等。28按Chomsky分类法,文法按照_规则定义的形式_进行分类。 29一个文法能用有穷多个规则描述无穷的符号串集合(语言)是因为文法中存在有_递归_定义的规则。四、简答题111. 写一文法,使其语言是偶正整数的集合,要求: (1)允许0打头;(2) 不允许0打头。解:(1)GS=(S,P,D,N,0,1,2,9,P,S) P: S-PD|D P-NP|N D-0|2|4|6|8 N-0|1|2|3|4|5|6|7|8|9 (2)GS=(S,P,R,D,N

19、,Q ,0,1,2,9,P,S) P: S-PD|P0|D P-NR|N R-QR|Q D-2|4|6|8 N-1|2|3|4|5|6|7|8|9 Q-0|1|2|3|4|5|6|7|8|9 2. 构造正规式相应的 NFA : 1(0|1)*101 解1(0|1)*101对应的NFA为 3. 写出表达式(ab*c)/(ab)d的逆波兰表示和三元式序列。逆波兰表示: abc*ab/d三元式序列: (*,b,c) (,a,) (,a,b) (/,) (,d)4. 已知文法 GS 为:SdAB AaA|aBBb|GS 产生的语言是什么? 答:GS产生的语言是L(GS)= 。5. 构造正规式相应的 D

20、FA : 1(1010 * | 1(010) * 1) * 0。解:1(1010 * | 1(010) * 1) * 0对应的NFA为:6. 已知文法G(S) Sa|(T) TT,S|S 写出句子(a,a),a)的规范归约过程及每一步的句柄。解:句型归约规则 句柄 (a,a),a) Sa a(S,a),a) TS S (T,a),a) Sa a(T,S),a) TT,S T,S(S),a) TS S(T),a) SS(T) (T)(S,a) TS S(T,a) Sa a(T,S) TT,S T,S(T) S(T) (T)S7. 写一个文法,使其语言是奇数集,且每个奇数不以0开头。解:文法G(N

21、):NAB|BAAC|DB1|3|5|7|9DB|2|4|6|8C0|D8. 设文法G(S): S(L)|a S|a LL,S|S (1) 消除左递归和回溯;(2) 计算每个非终结符的FIRST和FOLLOW。解:(1) S(L)|aS SS| LSL LSL| (2) FIRST)S)(,aFOLLOW(S)#,) FIRST(S),a,FOLLOW(S)#,)FIRST(L)(,aFOLLOW(L) ) FIRST(L),FOLLOW(L )9. 已知文法G(E) ET|ET TF|T *F F(E)|i (1)给出句型(T *Fi)的最右推导; (2)给出句型(T *Fi)的短语、素短语

22、。解:(1) 最右推导: E=T-F=(E)-(ET)=(EF)-(Ei)=(Ti)=(T*Fi)(2) 短语:(T*Fi),T*Fi,T*F,i素短语:T*F,i 11. 写出下列表达式的三地址形式的中间表示。(1) 5+6 *(a + b); (2)for j:=1 to 10 do aj + j:=0。答: (1)100: t1:=a+b 101: t2:=6*t1 102: t3:=5+t2 (2)100: j:=1 101: if j10 goto NEXT 102: i:=j+j 103: ai:=013. 写出表达式(a+b)/(a-b-(a+b*c)的三元序列及四元序列。解:(

23、1)三元式:(,a,b)(,a,b)(/,)(*,b,c)(,a,)(,)(2)四元式:(,a,b,T1)(,a,b,T2)(/,T1,T2,T3)(*,b,c,T4)(,a,T4,T5)(,T3,T5,T6)14. 写一个文法使其语言为偶数集,且每个偶数不以0开头。 解:文法G(S):SAB|B|A0 AAD|C B2|4|6|8 C1|3|5|7|9|B D0|C15. 设文法 G ( S ): SS aF|aF| aF F*aF|*a (1)消除左递归和回溯;(2)构造相应的 FIRST 和 Follow 集合。解:(1) S-aFS|aFS S-aFS| F-*aF F-F| (2)F

24、IRST(S)a,+ FOLLOW(S)FIRST(S)+, FOLLOW(S)FIRST(F)* FOLLoW(F)(+, FIRST(F)*, FOLLOW(+,17. 考虑文法 GS: S (T) | a+S | a T T,S | S 消除文法的左递归及提取公共左因子。解:消除文法GS的左递归:S(T) | a+S | a TST T,ST| 提取公共左因子: S(T) | aS S+S | TST T,ST| 18. 试为表达式 w+(a+b)*(c+d/(e-10)+8) 写出相应的逆波兰表示。解: w a b + c d e 10 - / + 8 + * +20. 已知文法 GS

25、 为 S aSb|Sb|b ,试证明文法 GS 为二义文法。证明:由文法GS:SaSb|Sb|b,对句子aabbbb对应的两棵语法树为: 因此,文法GS为二义文法。21. 文法 GS 为: S-Ac|aB A-ab B-bc 写出 L(GS) 的全部元素。解:S=Ac=abc 或S=aB=abc 所以L(GS)=abc22. 构造正规式 1(0|1)*101 相应的DFA。解:先构造NFA:确定化: 重新命名,令AB为B、AC为C、ABY为D得: 所以,可得DFA为: 23. 文法 S-a|(T) T-T,S|S 对 (a,(a,a) 和 (a,a),(a),a) 的最左推导。解: 对(a,(a,a)的最左推导为: S=(T) =(T,S) =(S,S) =(a,S) =(a,(T) =(a,(T,S) =(a,(S,S) =(a,(a,S) =(a,(a,a) 对(a,a),(a),a) 的最左推导为: S=(T) =(T,S) =(S,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1