Zhujiao057《编译原理》习题答案_第1页
Zhujiao057《编译原理》习题答案_第2页
Zhujiao057《编译原理》习题答案_第3页
Zhujiao057《编译原理》习题答案_第4页
Zhujiao057《编译原理》习题答案_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西安交通大学网络教育学院编译原理习题答案一、单项选择题(本大题共164小题,每小题2分)1、 如果一个编译程序能产生不同于其宿主机的机器代码,则称它为( C )。A、诊断编译程序 B、优化编译程序 C、交叉编译程序 D、可变目标编译程序2、( C )不是编译程序的组成部分。A、词法分析程序 B、代码生成程序 C、设备管理程序 D、语法分析程序3、现代多数实用编译程序所产生的目标代码都是一种可重定位的指令代码,在运行前必须借助于一个( C )把各个目标模块,包括系统提供的库模块连接在一起,确定程序变量或常数在主存中的位置,装入内存中制定的起始地址,使之成为一个可运行的绝对指令代码的程序。A、重定

2、位程序 B、解释程序 C、连接装配程序 D、诊断程序;4、产生正则语言的文法为(D)。A、0型B、1型C、2型D、3型5、(A)是一种典型的解释型语言。A、BASICB、CC、FORTRAND、PASCAL6、把汇编语言程序翻译成机器可执行的目标程序的工作是由(B)完成的。A、 编译器B、汇编器C、解释器D、预处理器7、用高级语言编写的程序经编译后产生的程序叫(B)A、 源程序B、目标程序C、连接程序D、解释程序8、文法G:Sb|(T)TT,S|S则FIRSTVT(T)(C)。A、b,(B、b,)C、b,(,,D、b,),,9、通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码

3、生成,代码优化,目标代码生成等六个部分,还应包括(C)。A、 模拟执行器 B、解释器C、表格处理和出错处理 D、符号执行器10、编译程序绝大多数时间花在(D)上。A、 出错处理B、词法分析C、目标代码生成D、表格管理11、设文法为:SSA|AAa|b则对句子aba,下面(D)是规范推导。A、SSASAAAAAaAAabAabaB、SSASAAAAAAAaAbaabaC、SSASAASAaSbaAbaabaD、SSASaSAaSbaAbaaba12、Chomsky把文法分成四种类型,其中,( D )也称正规文法A、0型 B、1型 C、2型 D、3型13、源程序是句子的集合,(B)可以较好地反映句

4、子的结构。A.、线性表B、树C、完全图D、堆栈14、词法分析器的输出结果是(D)。A、单词自身值 B、单词在符号表中的位置C、单词的种别编码D、单词的种别编码和自身值15、词法分析器不能(D)A、识别出数值常量B、过滤源程序中的注释C、扫描源程序并识别记号D、发现括号不匹配16、文法:G:SxSx | y所识别的语言是(D)。A、 xyxB、(xyx)*C、x*yx*D、xnyxn (n0)17、如果文法G是无二义的,则它的任何句子(A)A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、 可能存在两个不同的最左推导,但它们对应

5、的语法树相同18、语言的词法规则一般用Chomsky的( D )型文法来描述:A、0 B、1C、2D、319、文法S(L)|aLL,S|S中的终结符号是( B )。A、S B、, C、L D、|20、文法G所描述的语言是( D )的集合。A、文法G的字母表中的所有符号组成的符号串B、文法G的字母表的闭包*中的所有符号串C、文法G的识别符号推出的所有符号串D、文法G的识别符号推出的所有终结符号串21、语法分析器接收以( C )为单位的输入,并产生有关信息供以后各阶段使用。A、表达式 B、产生式 C、单词 D、语句;22、LR(k)文法( A )。A、都是无二义性的 B、都是二义性的 C、一部分是

6、二义性的 D、无法判定23、如果一个编译程序能产生不同于其宿主机的机器代码,则称它为:( C )。A、诊断编译程序 B、优化编译程序 C、交叉编译程序 D、可变目标编译程序24、许多广为使用的语言,如Fortran、C、Pascal等,属于( A )。A、强制式语言 B、应用式语言 C、基于规则的语言 D、面向对象的语言25、设G是一个文法,S是开始符号。若S*a,a(VTVN)*,则称a是一个( B )。A、句子 B、句型 C、推导 D、语言26、赋值语句x:=-(a+b)/(c-d)-(a+b*c)的逆波兰式表示是( C )。A、xab+cd-/-bc*a+-:= C、xab+/cd-bc

7、*a+-:=C、xab+-cd-/abc*+-:= D、xab+cd-/abc*+-:=27、在一棵语法树中的结点的继承属性和综合属性之间的相互依赖关系可以由( C )来描述。A、抽象语法树 B、语法规则 C、依赖图 D、三地址代码;28、( C )语言具有这样的特点:没有分程序结构;过程定义不允许嵌套;允许过程嵌套定义。A、Fortran B、Pascal C、C D、都不是29、Pascal中过程说明的局部变量地址分配在( B )。A、调用者的数据区中 B、被调用者的数据区中C、主程序的数据区中 D、公共数据区中30、一个数据类型通常包括三种要素,下面( C )不是:A、用于区别这种类型的

8、数据对象的属性 B、这种类型的数据对象可以具有的值C、对这种类型的数据对象的内存分配 D、可以作用于这种类型的数据对象的操作31、正则文法(A)二义性的。A、 可以是B、一定不是C、一定是32、(B)这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。A、 存在B、不存在C、无法判定是否存在33、给定文法AbA | ca,为该文法句子的是(C)A、 bbaB、cabC、bcaD、cba34、设有文法GS:SS1|S0|Sa|Sc|a|b|c,下列符号串中是该文法的句子有(D)A、 ab0B、a0c01C、a0b0aD、bc1035、文法G产生的(D)的全体是该文法描述的语言。A

9、、 句型B、终结符集C、非终结符集 D、句子36、若文法G定义的语言是无限集,则文法必然是(A)递归的B、上下文无关的C、二义性的D、无二义性的37、一个数据类型通常包括三种要素,下面( C )不是:A、用于区别这种类型的数据对象的属性 B、这种类型的数据对象可以具有的值C、对这种类型的数据对象的内存分配 D、可以作用于这种类型的数据对象的操作38、在编译方法中,动态存储分配的含义是( A )。A、在运行阶段对源程序中的量进行分配 B、在编译阶段对源程序中的量进行分配C、在编译阶段对源程序中的量进行分配,在运行时这些量的地址可以根据需要修改D、以上都不是39、以绝对机器代码为输出,所有地址均已

10、定位,这种代码的优点是( A )。A、可立即执行 B、可进一步优化 C、目标代码简短 D、目标代码执行效率高40、以( B )作为输出,允许自程序单独编译。A、绝对机器代码 B、可再定位机器语言 C、汇编语言程序 D、中间语言41、评价一个代码生成器最重要的指标是( A )。A、代码的正确性 B、代码的高效性 C、代码的简洁性 D、代码的维护性。42、文法G:EE+T|TTT*P|PP(E)|I则句型P+T+i的句柄和最左素短语为(B)。A、P+T和i B、P和P+T C、i和P+T+I D、P和T43、语言的词法规则一般用Chomsky的( D )型文法来描述:A、0 B、1C、2D、344

11、、描述一个语言的文法是(B)A、 唯一的B、不唯一的C、可能唯一45、一个文法所描述的语言是(A)A、 唯一的B、不唯一的C、可能唯一46、采用自上而下分析,必须(A)。A、消除回溯B、消除左递归C、消除右递归 D、提取公共左因子47、编译过程中,语法分析器的任务是(A) 分析单词的构成 分析单词串如何构成语句 分析语句是如何构成程序 分析程序的结构A、B、C、D、48、程序语言的单词符号一般可以分为5种,下面( B )不需要超前搜索。A、关键字 B、标识符 C、常数 D、算符和界符49、由文法的开始符经0步或多步推导产生的文法符号序列是(C)。A、短语B、句柄C、句型D、句子50、从左线性文

12、法构造有限自动机时,通常自动机状态个数比文法非终结符号数多( D )。A、4 B、2 C、0 D、151、正规表达式(|a|b)2表示的集合是( D )。A、,ab,ba,aa,bb B、ab,ba,aa,bbC、a,b,ab,aa,ba,bb D、,a,b,aa,bb,ab,ba52、高级语言编译程序常用的语法分析方法中,递归下降分析法属于( B )分析法。A、自左至右 B、自顶向下 C、自底向上 D、自右向左53、上下文无关文法可以用( C )来描述。A、正则表达式 B、正规文法 C、扩展的BNF D、翻译模式54、自上而下分析面临的四个问题中,不包括( D )。A、需消除左递归 B、存在

13、回朔 C、虚假匹配 D、寻找可归约串55、从左线性文法构造有限自动机时,通常自动机状态个数比文法非终结符号数多( D ) A、4 B、2 C、0 D、156、正规表达式(|a|b)2表示的集合是( D )A、,ab,ba,aa,bb B、ab,ba,aa,bbC、a,b,ab,aa,ba,bb D、,a,b,aa,bb,ab,ba57、词法分析器的输入是( A)。A、 符号串 B、源程序 C、语法单位 D、目标程序58、两个有穷自动机等价是指它们的(C)。A、状态数相等 B、有向弧数相等C、所识别的语言相等D、状态数和有向弧数相等59、若状态k含有项目“A ”,且仅当输入符号aFOLLOW(A

14、)时,才用规则“A ”归约的语法分析方法是(D)。A、 LALR分析法B、LR(0)分析法C、LR(1)分析法 D、SLR(1)分析法60、若a为终结符,则A a为(B)项目。A、 归约B、移进C、接受D、待约61、在使用高级语言编程时,首先可通过编译程序发现源程序的全部和部分(A)错误。A、 语法B、语义C、语用D、运行62、所谓在程序中某个给定点是活跃的,是指如果在程序中,( A )。A、该点以后被引用 B、该点以后被计算 C、该点正在被计算 D、该点一直被计算63、LR语法分析栈中存放的状态是识别( B )的DFA状态。A、前缀 B、可归前缀 C、项目 D、句柄64、算符优先分析法每次都

15、是对( B )进行归约:A、句柄 B、最左素短语 C、素短语 D、简单短语65、有文法G(S,a,SSaS,S,S),该文法是( B )。A、LL(1)文法 B、二义性文法 C、算符优先文法 D、SLR(1)文法66、文法开始符号的所有( B )作为属性计算前的初始值。A、综合属性 B、继承属性 C、继承属性和综合属性 D、都不是67、对应于产生式AXY继承属性Y.y的属性计算,可能正确的语义规则是( C )。A、A.a:=f(X.x,Y.y) B、Y.y:=f(A.a,Y.y) C、Y.y:=f(X.x) D、A.a:=f(Y.y)68、布尔表达式计算时可以采用某种优化措施,比如A and

16、B用if-then-else可解释为( B )。A、if A then true else B; B、if A then B else false;C、if A then false else true; D、if A then true else false;69、合并表达式中常量运算的目的是( D )。A、使表达式中的常量尽可能少B、是表达式尽可能简短C、将可在编译时刻计算的常量运算在编译时刻计算出来,然后用所计算出来的值替换表达式中出现的所有这种常量运算,使得生成的代码指令尽可能少D、以上都是70、语法分析器接收以( C )为单位的输入,并产生有关信息供以后各阶段使用。A、表达式 B、产

17、生式 C、单词 D、语句;71、LR语法分析栈中存放的状态是识别( B )的DFA状态。A、前缀 B、可归前缀 C、项目 D、句柄;72、中间代码生成所依据的是(C)。A、语法规则B、词法规则C、语义规则D、等价变换规则73、一个(C)指明了在分析过程中的某时刻所能看到产生式多大一部分。 A、活前缀B、前缀 C、项目D、项目集74、在LR(0)的ACTION子表中,如果某一行中存在标记“rj”的栏,则(A)。A、该行必定填满rjB、该行未填满rjC、其他行也有rj D、goto子表中也有rj75、对应于产生式AXY继承属性Y.y的属性计算,可能正确的语义规则是( C )。A、A.a:=f(X.

18、x,Y.y) B、Y.y:=f(A.a,Y.y) C、Y.y:=f(X.x) D、A.a:=f(Y.y);76、就文法的描述能力来说,有(C)。 A、SLR(1)LR(0) B、LR(1)LR(0)C、SLR(1)LR(1) D、无二义文法LR(1)77、乔姆斯基(Chomsky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是(B)A、 非限制文法B、正则文法C、上下文有关文法 D、上下文无关文法78、一个句型中的(A)称为该句型的句柄。A、 最左直接短语B、最右直接短语C、终结符D、非终结符79、在自底向上的语法分析方法中,分析的关键是(D)A、 寻找句柄B、寻找句型C、消除递

19、归D、选择候选式80、若项目集Ik含有A,则在状态k时,仅当面临的输入符号aFOLLOW(A)时,才采取“A”动作的一定是(D)。 A、LALR文法B、LR(0)文法C、LR(1)文法D、SLR(1)文法81、在LR分析法中,分析栈中存放的状态是识别规范句型(C)的DFA状态。A、 句柄B、前缀C、活前缀D、LR(0)项目82、为了便于优化处理,三地址代码可以表示成( D )。A、三元式 B、四元式 C、后缀式 D、间接三元式83、使用三元式是为了( B )。A、便于代码优化处理 B、避免把临时变量填入符号表C、节省存储代码的空间 D、提高访问代码的速度84、表达式-a+b*(-c+d)的逆波

20、兰式是( D )。A、ab+-cd+-* B、a-b+c-d+* C、a-b+c-d+* D、a-bc-d+*+85、若a为终结符,则Aa为(B)项目 A、归约B、移进C、接受D、待约86、评价一个代码生成器最重要的指标是( A )。A、代码的正确性 B、代码的高效性 C、代码的简洁性 D、代码的维护性87、以绝对机器代码为输出,所有地址均已定位,这种代码的优点是( A )。A、可立即执行 B、可进一步优化 C、目标代码简短 D、目标代码执行效率高88、一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组(B)A、 句子B、产生式C、单词D、句型89

21、、词法分析器用于识别(C)A、 句子B、产生式C、单词D、句型90、编译程序是一种(B)A、 汇编程序B、翻译程序C、解释程序D、目标程序91、按逻辑上划分,编译程序第三步工作是(A)A、 语义分析B、词法分析C、语法分析D、代码生成92、在语法分析处理中,FIRST集合、FOLLOW集合均是(B)A、 非终结符集B、终结符集C、字母表D、状态集93、如果文法G是无二义的,则它的任何句子(A)。A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同94、表达式-a+b*(-c+d)

22、的逆波兰式是( D )。A、ab+-cd+-* B、a-b+c-d+* C、a-b+c-d+* D、a-bc-d+*+95、在整个编译期间,对符号表的操作大致都有( B )。A、查询给定名字 B、填入新名字 C、访问给定名字的信息D、更新给定名字的信息 E、删除无用项96、在编译过程中,符号表的主要作用是( B )。A、帮助错误处理 B、辅助语法错误的检查 C、辅助语义的正确性检查D、辅助代码生成 E、辅助对目标程序的优化97、教材介绍了三种符号表的构造和处理方法,其中( B )中常把符号表组织成二叉树形式。A、线性组织 B、排序组织和二分法 C、杂凑(散列)组织 D、非线性组织98、编译过程

23、中,语法分析器的任务就是(B)A、分析单词是怎样构成的B、分析单词串是如何构成语句和说明的C、分析语句和说明是如何构成程序的D、分析程序的结构99、若一个文法是递归的,则它所产生的语言的句子(A)。A、 是无穷多个B、是有穷多个C、是可枚举的D、个数是常量100、识别上下文无关语言的自动机是(C)A、 下推自动机B、NFAC、DFAD、图灵机101、编译原理各阶段工作都涉及(B)A、 词法分析B、表格管理C、语法分析D、语义分析102、正则表达式R1和R2等价是指(C)A、R1和R2都是定义在一个字母表上的正则表达式B、R1和R2中使用的运算符相同C、R1和R2代表同一正则集D、 R1和R2代

24、表不同正则集103、编译程序使用( B )区别标识符的作用域。A、说明标识符的过程或函数名 B、说明标识符的过程或函数的静态层次C、说明标识符的过程或函数的动态层次 D、标识符的行号104、表达式作为实在参数可以传递给被调用的过程,替换过程体中的( B )。A、局部变量 B、形式参数 C、全局变量 D、实在参数105、两个不同过程的活动,其生存期是( B )。A、重叠的,不嵌套的 B、不重叠的,嵌套的C、重叠的,嵌套的 D、不重叠的,不嵌套的106、设G为算符优先文法,G的任意终结符对a、b有以下关系成立(C)。A、若f(a)g(b),则abB、若f(a)g(b),则a0B、akbc|k0C、

25、a2k-1bc|k0D、akakbc|k0115、将编译程序分成若干个“遍”是为了(B)。A、提高程序的执行效率B、使程序的结构更加清晰C、利用有限的机器内存并提高机器的执行效率D、利用有限的机器内存但降低了机器的执行效率116、构造编译程序应掌握(D)。A、源程序 B、目标语言 C、编译方法 D、以上三项都是117、变量应当(C)。A、持有左值 B、持有右值C、既持有左值又持有右值 D、既不持有左值也不持有右值 118、下列关于标识符和名字叙述中,正确的是(C)。A、标识符有一定的含义B、名字是一个没有意义的字符序列C、名字有确切的属性D、AC都不正确119、(D)不可能是目标代码。 A、汇

26、编指令代码B、可重定位指令代码 C、绝对指令代码D、中间代码120、若B为非终结符,则 Aa.Bb 为(D)。A、移进项目B、归约项目C、接受项目D、待约项目121、在运行空间的划分中有一个单独的区域叫堆,用来存放( C )。A、目标代码 B、静态数据 C、动态数据 D、过程参数122、Fortran语言的编译程序采用( A )分配策略。A、静态 B、最佳 C、堆式动态 D、栈式动态123、使用(A)可以定义一个程序的意义。 A、语义规则B、词法规则 C、产生规则D、词法规则124、词法分析器的输入是(B)。 A、单词符号串 B、源程序 C、语法单位 D、目标程序125、程序所需的数据空间在程

27、序运行前可确定,称为(C)管理技术。 A、动态存储B、栈式存储C、静态存储D、堆式存储126、堆式动态分配申请和释放存储空间遵守(D)原则。 A、先请先放B、先请后放C、后请先放D、任意127、静态分配允许程序出现(C)。 A、递归过程 B、可变体积的数据项目C、静态变量 D、待定性质的名字128、在编译方法中,动态存储分配的含义是(A)。 A、在运行阶段对源程序中的数组、变量、参数等进行分配B、在编译阶段对源程序中的数组、变量、参数进行分配C、在编译阶段对源程序中的数组、变量、参数等进行分配,在运行时这些数组、变量、参数的地址可根据需要改变D、以上都不正确129、中间代码生成时所遵循的是(C

28、)。 A、语法规则B、词法规则 C、语义规则D、等价变换规则130、编译程序是对(D)。 A、汇编程序的翻译B、高级语言程序的解释执行 C、机器语言的执行D、高级语言的翻译131、语法分析应遵循(C)。 A、语义规则B、语法规则 C、构词规则D、等价变换规则132、程序基本块是指( D )。A、一个子程序 B、一个仅有一个入口和一个出口的语句C、一个没有嵌套的程序段 D、一组顺序执行的程序段,仅有一个入口和一个出口133、在运行空间的划分中有一个单独的区域叫堆,用来存放( C )。A、目标代码 B、静态数据 C、动态数据 D、过程参数134、Fortran语言的编译程序采用( A )分配策略。

29、A、静态 B、最佳 C、堆式动态 D、栈式动态135、文法G:SxSx|y所识别的语言是(C)。A、xyx B、(xyx)* C、xnyxn(n0)D、x*yx*136、文法G描述的语言L(G)是指(A)。A、L(G)=|S , VT*B、L(G)=|S, VT*C、L(G)=|S,(VTVN*)D、L(G)=|S, (VTVN*)137、四元式之间的联系是通过(B)实现的。A、指示器B、临时变量C、符号表D、程序变量138、后缀式ab+cd+/可用表达式(B)来表示。a.a+b/c+db.(a+b)/(c+d)c.a+b/(c+d)d.a+b+c/d139、表达式(AB)(CD)的逆波兰表示

30、为(B)。A、ABCDB、ABCDC、ABCDD、ABCD140、中间代码的树型表示+ABCD+ 所对应的表达式为(D)。 A、A+B+C+D B、A+(B+C)+DC、(A+B)+C+DD、(A+B)+(C+D)141、四元式表示法的优点为(C)。A、不便于优化处理,但便于表的更动 B、不便于优化处理,但节省存储空间C、便于优化处理,也便于表的更动 D、便于表的更动,也节省存储空间142、终结符具有(D)属性。A、传递B、继承C、抽象D、综合143、编译程序使用(B)区别标识符的作用域。A、说明标识符的过程或函数名 B、说明标识符的过程或函数的静态层次C、说明标识符的过程或函数的动态层次 D

31、、标识符的行号144、在目标代码生成阶段,符号表用于(D)。 A、目标代码生成B、语义检查C、语法检查D、地址分配145、过程信息表不包含(B)。 A、过程入口地址 B、过程的静态层次 C、过程名 D、过程参数信息2、 多项选择题1、编译程序各阶段的工作都涉及到 BC 。 a语法分析b表格管理c出错处理 d语义分析e词法分析2、编译程序工作时,通常有 ABCE 阶段。 a词法分析b语法分析c中间代码生成 d语义检查e目标代码生成3、下面哪些说法是错误的 ACE 。a. 有向图是一个状态转换图b. 状态转换图是一个有向图c.有向图是一个DFAd.DFA可以用状态转换图表示4、对无二义性文法来说,

32、一棵语法树往往代表了 ACE 。a. 多种推导过程b. 多种最左推导过程c.一种最左推导过程d.仅一种推导过程e.一种最左推导过程5、如果文法G存在一个句子,满足下列条件 BCD 之一时,则称该文法是二义文法。a. 该句子的最左推导与最右推导相同b. 该句子有两个不同的最左推导c. 该句子有两棵不同的最右推导d. 该句子有两棵不同的语法树 e.该句子的语法树只有一个6、在词法分析中,能识别出 ACE 。a. 基本字b. 四元式c. 运算符d. 逆波兰式e. 常数7、令=a,b,则上所有以b开头,后跟若干个ab的字的全体对应的正规式为 ABD 。a. b(ab)*b. b(ab)+c.(ba)*

33、bd. (ba)+be. b(a|b)8、一个LR分析器包括 AD。 a.一个总控程序b.一个项目集c.一个活前缀d.一张分析表e.一个分析栈9、LR分析器核心部分是一张分析表,该表包括 CE 等子表。 a.LL(1)分析b.优先关系c.GOTO d.LRe.ACTION10、每一项ACTIONS,a所规定的动作包括 ACDE 。a.移进b.比较c.接受d.归约e.报错11、对LR分析表的构造,有可能存在 CE 动作冲突。a.移进b.归约c.移进/归约d.移进/移进e.归约/归约12、自上而下的语法分析方法有 ACDE 。 a.算符优先分析法b.LL(1)分析法c.SLR(1)分析法d.LR(

34、0)分析法e.LALR(1)分析法13、对LR分析器来说,存在 ABCE 等分析表的构造方法。 a.LALRb.LR(0)c.SLR(1)d.SLR(0)e.LR(1)14、在下面的BCD语法制导翻译中,采用拉链-回填技术。a赋值语句bgoto语句 c条件语句d循环语句15、下列BC中间代码形式有益于优化处理。a三元式b四元式c间接三元式d逆波兰表示法e树形表示法16、在编译程序中安排中间代码生成的目的是BD。a便于进行存储空间的组织b利于目标代码的优化c利于编译程序的移植d利于目标代码的移植e利于提高目标代码的质量17、符号表的每一项均包含 AC 。 a. 名字栏b. 类型栏c. 信息栏d.

35、 值栏e. ad均包含18、对编译程序所用到的符号表,涉及的操作有 ABC 。 a. 填写或更新信息栏内容b. 填入新名c.给定名字,访问它的有关信息d. 杂凑技术e.线性表和排序二叉树19、源程序中的错误一般有 ABCE 。 a. 词法错误b. 语法错误c. 语义错误d. 编译错误e. 违反环境限制的错误三、判断题(正确填“T”,错误填“F”)1、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。( T )2、编译程序生成的目标程序都是可执行的程序。( F )3、一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。 ( T )4、编译前端主要由与

36、源语言和目标机相关的那些部分组成。( F )5、优化的任务在于对前端编译所产生的中间代码进行加工和变换,以其能产生运行结果更为准确的目标代码。( F )6、变量既持有左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。( T )7、文法G:S-bA A-aA|a定义的语言是所有以b开头的后跟至少一个a的字符串的集合。( T )8、可能有两个不同的文法G和G,期中一个是二义的而另一个是无二义的,但是却有L(G)L(G)。( T )9、NFA M的非确定性表现在它有多个终态。( F )10、设有文法G:S-S*S | S+S | (S) | a该文法是二义的。( T )11、正则文法一定不

37、是二义的。( F )12、上下文无关文法可以产生语言L= anbnci | i=1,n=1 。( T )13、不存在任何正规文法能产生语言L=anbn | n=1。( T )14、对于每一个左线性文法G1,都存在一个右线性文法G2,使得L(G1)=L(G2)。( T )15、正规文法产生的语言都可以用上下文无关文法来描述。( T )16、上下文无关文法比正规文法有更强的描述能力。( T )17、有穷自动机接受的语言是正则语言。 ( T )18、LL(k)文法都不是二义性的。( T )19、存在一种算法,能判定任何上下文无关文法是否是LL(1)的。 ( T ) 20、一个二义性文法可以是SLR文

38、法或LALR文法。( F )21、令a, b,则上所有以b为首的字符构成的正规集的正规式为b*(a|b)*。( F )22、对任何一个NFA M,都存在一个DFA M,使得L(M)=L(M)。( T )23、对一个右线性文法G,必存在一个左线性文法G,使得L(G)=L(G),反之亦然。( T )24、对任意一个右线性文法G,都存在一个NFA M,满足L(G)=L(M)。( T ) 25、对任意一个右线性文法G,都存在一个DFA M,满足L(G)=L(M)。.( T ) 26、对任何正则表达式r,都存在一个NFA M,满足L(M)=L(r)。( T ) 27、对任何正则表达式r,都存在一个DFA

39、 M,满足L(M)=L(r)。( T ) 28、算符优先分析法不是一种规范规约法。 ( T ) 29、存在有左递归规则的文法是LL(1)的。 ( F ) 30、LL(1)文法不能用LR(1)分析器来分析。( F )31、若r1和r2是上的正规式,则r1|r2也是。( T )32、设M是一个NFA,并且L(M)x, y, z,则M的状态数至少为4个。( F )33、一个文法是含有左递归的,如果存在非终结符P,使得P*aP。( F )34、提取公共左因子的副产品是引进了大量的非终结符和产生式。( T ) 35、LR分析器在自左至右扫描输入串时就能发现其中的任何错误,并能准确地指出出错地点。( T

40、)36、在归约过程的任一时刻,一个上下文无关文法的任何句型的直接短语一般都不是唯一的。( T ) 37、只含有综合属性的属性文法是S-属性文法。( T )38、非终结符只有综合属性,由词法分析器提供。( T )39、任何算符优先文法的句型中不会有两个相邻的非终结符号。 ( T ) 40、算符优先文法中任何两个相邻的终结符号之间至少满足三种关系(,)之一。 ( F )41、任何LL(1)文法都是无二义性的。 ( T ) 42、每一个SLR(1)文法也都是LR(1)文法。 ( T ) 43、存在一种算法,能判定任何上下文无关文法是否是LL(1)的。 ( T ) 44、任何一个LL(1)文法都是一个LR(1)文法,反之亦然。 ( F ) 45、 LR(1)分析中括号中的1是指,在选用产生式A进行分析,看当前读入符号是否在FIRST()中。 ( T ) 46、若某一个句型中出现了某一产生式的右部,则此右部不一定是该句型的句柄。( F )47、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。( T )48、S属性文法一定是L属性文法。( T )49、中间代码是独立于机器的,复杂性介于源语言和机器语言之间,便于进行与机器无关调换代码优化工作。( T )50、只含有继承属性的属性文法称为-L属性文法。(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论