![Zhujiao057《编译原理》习题答案_第1页](http://file4.renrendoc.com/view/96ad9f16400e273addfb76122986b10d/96ad9f16400e273addfb76122986b10d1.gif)
![Zhujiao057《编译原理》习题答案_第2页](http://file4.renrendoc.com/view/96ad9f16400e273addfb76122986b10d/96ad9f16400e273addfb76122986b10d2.gif)
![Zhujiao057《编译原理》习题答案_第3页](http://file4.renrendoc.com/view/96ad9f16400e273addfb76122986b10d/96ad9f16400e273addfb76122986b10d3.gif)
![Zhujiao057《编译原理》习题答案_第4页](http://file4.renrendoc.com/view/96ad9f16400e273addfb76122986b10d/96ad9f16400e273addfb76122986b10d4.gif)
![Zhujiao057《编译原理》习题答案_第5页](http://file4.renrendoc.com/view/96ad9f16400e273addfb76122986b10d/96ad9f16400e273addfb76122986b10d5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西安交通大学网络教育学院编译原理习题答案一、单项选择题(本大题共164小题,每小题2分)1、如果一个编译程序能产生不同于其宿主机的机器代码,则称它为(C)。A、诊断编译程序B、优化编译程序C、交叉编译程序D、可变目标编译程序2、(C)不是编译程序的组成部分。A、词法分析程序B、代码生成程序C、设备管理程序D、语法分析程序3、现代多数实用编译程序所产生的目标代码都是一种可重定位的指令代码,在运行前必须借助于一个(C)把各个目标模块,包括系统提供的库模块连接在一起,确定程序变量或常数在主存中的位置,装入内存中制定的起始地址,使之成为一个可运行的绝对指令代码的程序。A、重定位程序B、解释程序C、连接
2、装配程序D、诊断程序;4、产生正则语言的文法为(D)。A、0型B、1型C、2型D、3型5、(A)是一种典型的解释型语言。A、BASICB、CC、FORTRAND、PASCAL6、把汇编语言程序翻译成机器可执行的目标程序的工作是由完成的。A、编译器B、汇编器C、解释器D、预处理器7、用高级语言编写的程序经编译后产生的程序叫(B)A、源程序8、目标程序C、连接程序D、解释程序8、文法G:S-b|八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、词法分析&目标代码生成D、表格管理11、设文法为:S-SA|AAfa|b则对句子aba,下面(D)是规范推导。西安交通大学网络教育学院西安交通大学网络教育学院西安交通大学网络教育学院西安交通大学网络教育学院AA、存在B、不存在C、无法判定是否存在A、SnSAnSAAnAAAnaAAnabAnabaB、SnSAnSAAnAAAnAAanAbanabaC、SnSAnSAAnSAanSbanAbanabaD、SnSAnSanSAanSbanAbanaba12、C
4、homsky把文法分成四种类型,其中,(D)也称正规文法人、0型8、1型&2型0、3型13、源程序是句子的集合,(B)可以较好地反映句子的结构。A.、线性表A.、线性表B、树14、词法分析器的输出结果是(D)。A、单词自身值C、单词的种别编码15、词法分析器不能(D)A、识别出数值常量C、扫描源程序并识别记号16、文法:G:S-xSx|y所识别的语言是(D)。A、xyxB、(xyx)*C、完全图D、堆栈B、单词在符号表中的位置D、单词的种别编码和自身值B、过滤源程序中的注释D、发现括号不匹配C、x*yx*D、xnyxn(nN0)17、如果文法G是无二义的,则它的任何句子a(A)A、最左推导和最
5、右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同18、语言的词法规则一般用Chomsky的(D)型文法来描述:A、0B、1C、2D、319、文法SjL)|aLT,S|S中的终结符号是(B)。A、SB、,C、LD、|20、文法G所描述的语言是(D)的集合。A、文法G的字母表E中的所有符号组成的符号串B、文法G的字母表E的闭包E*中的所有符号串C、文法G的识别符号推出的所有符号串D、文法G的识别符号推出的所有终结符号串21、语法分析器接收以(C)为单位的输入,并产生有关信息供以后各阶段使用。A、
6、表达式B、产生式C、单词D、语句;22、LR(k)文法(A)。A、都是无二义性的B、都是二义性的C、一部分是二义性的D、无法判定23、如果一个编译程序能产生不同于其宿主机的机器代码,则称它为:(C)。A、诊断编译程序B、优化编译程序C、交叉编译程序D、可变目标编译程序24、许多广为使用的语言,如Fortran、C、Pascal等,属于(A)。A、强制式语言B、应用式语言C、基于规则的语言D、面向对象的语言25、设G是一个文法,S是开始符号。右Sn*a,ae(VTdVN)*,则称a是一个(B)。A、句子8、句型C、推导D、语言26、赋值语句x:=-(a+b)/(c-d)-(a+b*c)的逆波兰式
7、表示是(C)。A、xab+cd-/-bc*a+-:=C、xab+/cd-bc*a+-:=C、xab+-cd-/abc*+-:=D、xab+cd-/abc*+-:=27、在一棵语法树中的结点的继承属性和综合属性之间的相互依赖关系可以由(C)来描述。A、抽象语法树B、语法规则C、依赖图D、三地址代码;28、(C)语言具有这样的特点:没有分程序结构;过程定义不允许嵌套;允许过程嵌套定义。A、FortranB、PascalC、CD、都不是29、Pascal中过程说明的局部变量地址分配在(B)。A、调用者的数据区中B、被调用者的数据区中C、主程序的数据区中D、公共数据区中30、一个数据类型通常包括三种要
8、素,下面(C)不是:A、用于区别这种类型的数据对象的属性B、这种类型的数据对象可以具有的值C、对这种类型的数据对象的内存分配D、可以作用于这种类型的数据对象的操作31、正则文法(A)二义性的。A、可以是B、一定不是C、一定是32、(B)这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。33、给定文法A-bA|ca,为该文法句子的是(C)A、bbaB、cabC、bcaD、cba34、设有文法GS:SSl|S0|Sa|Sc|a|b|c,下列符号串中是该文法的句子有(D)A、ab0B、a0c01C、a0b0aD、bc1035、文法G产生的(D)的全体是该文法描述的语言。A、句型B、
9、终结符集C、非终结符集D、句子36、若文法G定义的语言是无限集,则文法必然是(A)递归的B、上下文无关的C、二义性的D、无二义性的37、一个数据类型通常包括三种要素,下面(C)不是:A、用于区别这种类型的数据对象的属性B、这种类型的数据对象可以具有的值C、对这种类型的数据对象的内存分配D、可以作用于这种类型的数据对象的操作38、在编译方法中,动态存储分配的含义是(A)。A、在运行阶段对源程序中的量进行分配B、在编译阶段对源程序中的量进行分配C、在编译阶段对源程序中的量进行分配,在运行时这些量的地址可以根据需要修改D、以上都不是39、以绝对机器代码为输出,所有地址均已定位,这种代码的优点是(A)
10、。A、可立即执行B、可进一步优化C、目标代码简短D、目标代码执行效率高40、以(B)作为输出,允许自程序单独编译。A、绝对机器代码B、可再定位机器语言C、汇编语言程序D、中间语言41、评价一个代码生成器最重要的指标是(A)。A、代码的正确性B、代码的高效性C、代码的简洁性D、代码的维护性。42、文法G:E-E+T|TT-T*P|PP-(E)|I则句型P+T+i的句柄和最左素短语为(B)。A、P+T和iB、P和P+TC、i和P+T+ID、P和T43、语言的词法规则一般用Chomsky的(D)型文法来描述:A、0B、1C、2D、344、描述一个语言的文法是(B)C、可能唯一A、唯一的BC、可能唯一
11、西安交通大学网络教育学院西安交通大学网络教育学院西安交通大学网络教育学院西安交通大学网络教育学院45、一个文法所描述的语言是(A)A、唯一的B、不唯一的46、采用自上而下分析,必须(A)。A、消除回溯C、消除右递归47、编译过程中,语法分析器的任务是(A)分析单词的构成分析单词串如何构成语句分析语句是如何构成程序分析程序的结构A、B、C、可能唯一B、消除左递归D、提取公共左因子CC、可能唯一B、消除左递归D、提取公共左因子C、D、下面(B)不需要超前搜索。D、算符和界符48、程序语言的单词符号一般可以分为5种,A、关键字B、标识符C、常数A、短语B、句柄&句型D、句子50、从左线性文法构造有限
12、自动机时,通常自动机状态个数比文法非终结符号数多(D)。A、4B、2C、0D、151、正规表达式(|a|b)2表示的集合是(D)。A、,ab,ba,aa,bbB、ab,ba,aa,bbC、a,b,ab,aa,ba,bbD、,a,b,aa,bb,ab,ba52、高级语言编译程序常用的语法分析方法中,递归下降分析法属于(B)分析法。人、自左至右8、自顶向下&自底向上0、自右向左53、上下文无关文法可以用(C)来描述。A、正则表达式B、正规文法C、扩展的BNFD、翻译模式54、自上而下分析面临的四个问题中,不包括(D)。A、需消除左递归B、存在回朔C、虚假匹配D、寻找可归约串55、从左线性文法构造有
13、限自动机时,通常自动机状态个数比文法非终结符号数多(D)A、4B、2C、0D、156、正规表达式(|a|b)2表示的集合是(D)A、,ab,ba,aa,bbB、ab,ba,aa,bbC、a,b,ab,aa,ba,bbD、e,a,b,aa,bb,ab,ba57、词法分析器的输入是(A)。A、符号串B、源程序C、语法单位0、目标程序58、两个有穷自动机等价是指它们的(C)。A、状态数相等B、有向弧数相等C、所识别的语言相等D、状态数和有向弧数相等59、若状态k含有项目“人一&”且仅当输入符号aFOLLOW(A)时,才用规则“A-a”归约的语法分析方法是(D)。A、LALR分析法B、LR(0)分析法
14、C、LR分析法D、SLR分析法60、若a为终结符,则A-aaS为项目。A、归约B、移进C、接受D、待约61、在使用高级语言编程时,首先可通过编译程序发现源程序的全部和部分(A)错误。A、语法B、语义C、语用D、运行62、所谓在程序中某个给定点是活跃的,是指如果在程序中,(A)。A、该点以后被引用B、该点以后被计算C、该点正在被计算D、该点一直被计算63、LR语法分析栈中存放的状态是识别(B)的DFA状态。A、前缀B、可归前缀做项目D、句柄64、算符优先分析法每次都是对(B)进行归约:A、句柄B、最左素短语C、素短语D、简单短语65、有文法G=(S,a,S-SaS,S-,S),该文法是(B)。A
15、、LL(1)文法B、二义性文法C、算符优先文法D、SLR(1)文法66、文法开始符号的所有(B)作为属性计算前的初始值。A、综合属性B、继承属性C、继承属性和综合属性D、都不是67、对应于产生式A-XY继承属性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、布尔表达式计算时可以采用某种优化措施,比如AandB用if-then-else可解释为(B)。A、ifAthentrueelseB;B、ifAthenBelsefalse;C、ifAthenfalseelsetrue;
16、D、ifAthentrueelsefalse;69、合并表达式中常量运算的目的是(D)。A、使表达式中的常量尽可能少B、是表达式尽可能简短C、将可在编译时刻计算的常量运算在编译时刻计算出来,然后用所计算出来的值替换表达式中出现的所有这种常量运算,使得生成的代码指令尽可能少D、以上都是70、语法分析器接收以(C)为单位的输入,并产生有关信息供以后各阶段使用。A、表达式B、产生式C、单词D、语句;71、LR语法分析栈中存放的状态是识别(B)的DFA状态。A、前缀B、可归前缀做项目D、句柄;72、中间代码生成所依据的是(C)。A、语法规则B、词法规则C、语义规则D、等价变换规则73、一个(C)指明了
17、在分析过程中的某时刻所能看到产生式多大一部分。A、活前缀B、前缀&项目0、项目集74、在LR(0)的ACTION子表中,如果某一行中存在标记“rj”的栏,则(A)。A、该行必定填满rjB、该行未填满rjC、其他行也有门D、goto子表中也有rj75、对应于产生式A-XY继承属性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);76、就文法的描述能力来说,有(C)。A、SLR(1)uLR(0)B、LR(1)uLR(0)C、SLR(1)uLR(1)D、无二义文法uLR(1)77、乔
18、姆斯基(Chomsky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是(B)A、非限制文法B、正则文法C、上下文有关文法D、上下文无关文法78、一个句型中的(A)称为该句型的句柄。A、最左直接短语B、最右直接短语C、终结符D、非终结符79、在自底向上的语法分析方法中,分析的关键是(D)A、寻找句柄B、寻找句型C、消除递归D、选择候选式80、若项目集含有A-a,则在状态k时,仅当面临的输入符号aFOLLOW(A)时,才采取“A-a.”动作的一定是(D)。A、LALR文法B、LR(0)文法C、LR(1)文法D、SLR(1)文法81、在LR分析法中,分析栈中存放的状态是识别规范句型(。
19、的DFA状态。A、句柄BA、句柄B、前缀C、活前缀D、LR(0)项目82、为了便于优化处理,三地址代码可以表示成(D)。人、三元式B、四元式C、后缀式D、间接三元式83人、三元式B、四元式C、后缀式D、间接三元式83、使用三元式是为了(B)。人、便于代码优化处理B、避免把临时变量填入符号表C、节省存储代码的空间D、提高访问代码的速度84、表达式-a+b*(-c+d)的逆波兰式是(D)。A、ab+-cd+-*B、a-b+c-d+*C、a-b+c-d+*D、a-bc-d+*+85、若a为终结符,则AfaaB为项目A、归约BA、归约B、移进C、接受D、待约86、评价一个代码生成器最重要的指标是(A)
20、。A、代码的正确性B、代码的高效性C、代码的简洁性D、代码的维护性87、以绝对机器代码为输出,所有地址均已定位,这种代码的优点是(A)。A、可立即执行B、可进一步优化&目标代码简短0、目标代码执行效率高88、一个上下文无关文法88、一个上下文无关文法G包括四个组成部分,一组(B)89、90、91、92、93、A、句子B、产生式C、单词D、句型词法分析器用于识别(C)A、句子B、产生式C、单词D、句型编译程序是一种A、汇编程序B、翻译程序C、解释程序D、目标程序按逻辑上划分,编译程序第三步工作是(A)A、语义分析B、词法分析C、语法分析D、代码生成在语法分析处理中A、非终结符集FIRST集合、F
21、OLLOW集合均是(B)B、终结符集C、字母表D、状态集如果文法G是无二义的,则它的任何句子a(A)。A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同DD、可能存在两个不同的最左推导,但它们对应的语法树相同94、表达式-a+b*(-c+d)的逆波兰式是(D)。A、ab+-cd+-*B、a-b+c-d+*C、a-b+c-d+*D、a-bc-d+*+95、在整个编译期间,对符号表的操作大致都有(B)。A、查询给定名字8、填入新名字C、访问给定名字的信息D、更新给定名字的信息E、删除无用项96、在编译过程中,符号表的主要作用是(B)。
22、A、帮助错误处理B、辅助语法错误的检查C、辅助语义的正确性检查D、辅助代码生成E、辅助对目标程序的优化97、教材介绍了三种符号表的构造和处理方法,其中(B)中常把符号表组织成二叉树形式。A、线性组织A、线性组织B、排序组织和二分法C、杂凑(散列)组织D、非线性组织98、编译过程中,语法分析器的任务就是(B)A、分析单词是怎样构成的BA、分析单词是怎样构成的B、分析单词串是如何构成语句和说明的C、分析语句和说明是如何构成程序的D、分析程序的结构99、若一个文法是递归的,则它所产生的语言的句子(A)。A、是无穷多个B、是有穷多个C、是可枚举的D、个数是常量100、识别上下文无关语言的自动机是(C)
23、A、下推自动机B、NFAC、DFAD、图灵机101、编译原理各阶段工作都涉及A、词法分析B、表格管理C、语法分析D、语义分析102、正则表达式R1和R2等价是指(C)A、R1和R2都是定义在一个字母表上的正则表达式B、R1和R2中使用的运算符相同C、R1和R2代表同一正则集D、R1和R2代表不同正则集103、编译程序使用(B)区别标识符的作用域。A、说明标识符的过程或函数名B、说明标识符的过程或函数的静态层次C、说明标识符的过程或函数的动态层次D、标识符的行号104、表达式作为实在参数可以传递给被调用的过程,替换过程体中的(B)。A、局部变量B、形式参数C、全局变量D、实在参数105、两个不同
24、过程的活动,其生存期是(B)。A、重叠的,不嵌套的B、不重叠的,嵌套的C、重叠的,嵌套的D、不重叠的,不嵌套的106、设G为算符优先文法G的任意终结符对a、b有以下关系成立(C)。107、108、A、若f(a)g(b),则abB、若f(a)g(b),则a0B、akbc|k0C、a2k-1bc|k0D、akakbc|k0115、将编译程序分成若干个“遍”是为了任)。A、提高程序的执行效率B、使程序的结构更加清晰C、利用有限的机器内存并提高机器的执行效率D、利用有限的机器内存但降低了机器的执行效率116、构造编译程序应掌握(D)。A、源程序B、目标语言C、编译方法D、以上三项都是117、变量应当(
25、C)。A、持有左值B、持有右值C、既持有左值又持有右值D、既不持有左值也不持有右值118、下列关于标识符和名字叙述中,正确的是(C)。A、标识符有一定的含义A、标识符有一定的含义C、名字有确切的属性119、(D)不可能是目标代码。A、汇编指令代码C、绝对指令代码B、名字是一个没有意义的字符序列D、AC都不正确B、可重定位指令代码D、中间代码120、若B为非终结符,则A-a.Bp为(D)。C、接受项目D、待约项目A、移进项目B、C、接受项目D、待约项目人、目标代码B、静态数据C、动态数据D、过程参数122、Fortran语言的编译程序采用(A)分配策略。A、静态B、最佳C、堆式动态D、栈式动态1
26、23、使用(A)可以定义一个程序的意义。A、语义规则B、词法规则C、产生规则D、词法规则124、词法分析器的输入是6)。A、单词符号串B、源程序C、语法单位0、目标程序125、程序所需的数据空间在程序运行前可确定,称为(C)管理技术。A、动态存储B、栈式存储C、静态存储D、堆式存储126、堆式动态分配申请和释放存储空间遵守(D)原则。A、先请先放B、先请后放C、后请先放D、任意127、静态分配允许程序出现(C)。A、递归过程B、可变体积的数据项目C、静态变量D、待定性质的名字128、在编译方法中,动态存储分配的含义是(A)。A、在运行阶段对源程序中的数组、变量、参数等进行分配B、在编译阶段对源
27、程序中的数组、变量、参数进行分配C、在编译阶段对源程序中的数组、变量、参数等进行分配,在运行时这些数组、变量、参数的地址可根据需要改变D、以上都不正确129、中间代码生成时所遵循的是(C)。A、A、语法规则C、语义规则130、编译程序是对(D)。A、汇编程序的翻译C、机器语言的执行131、语法分析应遵循(C)。A、语义规则C、构词规则132、程序基本块是指(D)。B、词法规则D、等价变换规则B、高级语言程序的解释执行D、高级语言的翻译B、语法规则D、等价变换规则A、一个子程序BA、一个子程序B、一个仅有一个入口和一个出口的语句C、一个没有嵌套的程序段D、一组顺序执行的程序段,仅有一个入口和一个
28、出口133、在运行空间的划分中有一个单独的区域叫堆,用来存放(C)。人、目标代码133、在运行空间的划分中有一个单独的区域叫堆,用来存放(C)。人、目标代码B、静态数据C、动态数据D、过程参数134、Fortran语言的编译程序采用(A)分配策略。A、静态B、最佳C、堆式动态135、文法G:S-xSx|y所识别的语言是A、xyxB、(xyx)*136、文法G描述的语言L(G)是指(A)。+A、L(G)=a忖今a,aGVT*C、L(G)=a忖今a,a(VTUVN*)137、四元式之间的联系是通过(B)实现的。A、指示器B、临时变量138、后缀式ab+cd+/可用表达式(B)来表示。a.a+b/c
29、+db.(a+b)/(c+d)D、栈式动态(C)。C、xnyxn(nN0)D、x*yx*B、L(G)=a忖今a,aVT*+D、L=a|Sa,a(VTUVN*)C、符号表D、程序变量d.a+b+c/dc.a+b/(c+d)139、表达式JAVB)八(CVD)的逆波兰表示为(B)。A、nABVACDVB、AnBVCDVAC、ABVnCDVAD、AnBVACDVa140、中间代码的树型表示ABCD所对应的表达式为(D)。A、A+B+C+DB、A+(B+C)+DC、(A+B)+C+DD、(A+B)+(C+D)141、四元式表示法的优点为(C)。人、不便于优化处理,但便于表的更动8、不便于优化处理,但节
30、省存储空间&便于优化处理,也便于表的更动0、便于表的更动,也节省存储空间142、终结符具有(D)属性。A、传递B、继承C、抽象D、综合143、编译程序使用(B)区别标识符的作用域。A、说明标识符的过程或函数名B、说明标识符的过程或函数的静态层次C、说明标识符的过程或函数的动态层次D、标识符的行号144、在目标代码生成阶段,符号表用于(D)。人、目标代码生成B、语义检查C、语法检查D、地址分配145、过程信息表不包含(B)。A、过程入口地址B、过程的静态层次C、过程名D、过程参数信息二、多项选择题1、编译程序各阶段的工作都涉及到BC。a.语法分析b.表格管理c出错处理d.语义分析e.词法分析2、
31、编译程序工作时,通常有ABCE阶段。a.词法分析b.语法分析c.中间代码生成d.语义检查e.目标代码生成3、下面哪些说法是错误的ACE。a.有向图是一个状态转换图b.状态转换图是一个有向图c.有向图是一个DFAd.DFA可以用状态转换图表示4、对无二义性文法来说,一棵语法树往往代表了ACE。a.多种推导过程b.多种最左推导过程c.一种最左推导过程d.仅一种推导过程e.一种最左推导过程5、如果文法G存在一个句子,满足下列条件BCD之一时,则称该文法是二义文法。a.该句子的最左推导与最右推导相同该句子有两个不同的最左推导该句子有两棵不同的最右推导该句子有两棵不同的语法树e.该句子的语法树只有一个6
32、、在词法分析中,能识别出ACE。a.基本字b.四元式c.运算符d.逆波兰式e.常数7、令=瓜,方,则工上所有以b开头,后跟若干个ab的字的全体对应的正规式为XBD_a.b(ab)*b.b(ab)+c.(ba)*bd.(ba)+be.b(a|b)8、一个LR分析器包括一些。一个总控程丁b:一个项目集c.一个活前缀一张分析表e.一个分析栈9、LR分析器核心部分是一张分析表,该表包括CE等子表。a.LL(1)分析b.优先关系c/GOTOd.LRe.ACTION10、每一项ACTIONS,a所规定的动作包括ACDE。a.移进b.比较c.接受d.归约e.报错11、对LR分析表的构造,有可能存在8动作冲突
33、。a.移进b.归约c.移进/归约d.移进/移进e.归约/归约12、自上而下的语法分析方法有ACDE。a.算符优先分析法b.LL(1)分析法c.SLR(l)分析法d.LR(0)分析法e.LALR(1)分析法13、对LR分析器来说,存在ABCE等分析表的构造方法。a.LALRb.LR(0)c.SLR(1)d.SLR(0)e.LR(1)14、在下面的BCD语法制导翻译中,采用拉链-回填技术。a.赋值语句b.goto语句c.条件语句d.循环语句树形表示法15、下列BC中间代码形式有益于优化处理。树形表示法a.三元式b.四元式c.间接三元式d.逆波兰表示法e.16、在编译程序中安排中间代码生成的目的是B
34、D。a.便于进行存储空间的组织c.a.便于进行存储空间的组织c.利于编译程序的移植e.利于提高目标代码的质量17、符号表的每一项均包含AC。a.名字栏b.类型栏b.利于目标代码的优化d.利于目标代码的移植c.信息栏d.值栏e.ad均包含18、对编译程序所用到的符号表,涉及的操作有ABCa.填写或更新信息栏内容b.填入新名c.给定名字,访问它的有关信息d.杂凑技术d.杂凑技术e.线性表和排序二叉树19、源程序中的错误一般有ABCE。a.词法错误b.语法错误c.语义错误编译错误e.违反环境限制的错误三、判断题(正确填“T,错误填“F”)1、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个
35、阶段的工作分为若干遍。(T)2、编译程序生成的目标程序都是可执行的程序。(F)3、一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。(T)4、编译前端主要由与源语言和目标机相关的那些部分组成。(F)5、优化的任务在于对前端编译所产生的中间代码进行加工和变换,以其能产生运行结果更为准确的目标代码。(F)6、变量既持有左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。(T)7、文法G:S-bAA-aA|a定义的语言是所有以b开头的后跟至少一个a的字符串的集合。(T)8、可能有两个不同的文法G和G,期中一个是二义的而另一个是无二义的,但是却有L(G)=L(G)。(T)9、
36、NFAM的非确定性表现在它有多个终态。(F)10、设有文法G:S-S*S|S+S|(S)|a该文法是二义的。(T)11、正则文法一定不是二义的。(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)TOC o 1-5 h z17、有穷自动机接受的语言是正则语言。(T)18、LL(k)文法都不是二义性的。(T
37、)19、存在一种算法,能判定任何上下文无关文法是否是LL(1)的。(T)20、一个二义性文法可以是SLR文法或LALR文法。(F)21、令2=a,b,则2上所有以b为首的字符构成的正规集的正规式为b*(a|b)*。(F)22、对任何一个NFAM,都存在一个DFAM,使得L(M)=L(M)。(T)23、对一个右线性文法G,必存在一个左线性文法G,使得L(G)=L(G),反之亦然。(T)24、对任意一个右线性文法G,都存在一个NFAM,满足L(G)=L(M)。(T)25、对任意一个右线性文法G,都存在一个DFAM,满足L(G)=L(M).(T)26、对任何正则表达式r,都存在一个NFAM,满足L(
38、M)=L(r)。(T)27、对任何正则表达式r,都存在一个DFAM,满足L(M)=L(r)。(T)28、算符优先分析法不是一种规范规约法。(T)29、存在有左递归规则的文法是LL(1)的。(F)30、LL(1)文法不能用LR(1)分析器来分析。(F)31、若r1和r2是2上的正规式,则r1|r2也是。(T)32、设M是一个NFA,并且L(M)=x,y,z,则M的状态数至少为4个。(F)33、一个文法是含有左递归的,如果存在非终结符P,使得Pn*aP。(F)34、提取公共左因子的副产品是引进了大量的非终结符和产生式。(T)35、LR分析器在自左至右扫描输入串时就能发现其中的任何错误,并能准确地指
39、出出错地点。(T)36、在归约过程的任一时刻,一个上下文无关文法的任何句型的直接短语一般都不是唯一的。(T)37、只含有综合属性的属性文法是S-属性文法。(T)38、非终结符只有综合属性,由词法分析器提供。(T)39、任何算符优先文法的句型中不会有两个相邻的非终结符号。(T)40、算符优先文法中任何两个相邻的终结符号之间至少满足三种关系(,=)之一。(F)41、任何LL(1)文法都是无二义性的。(T)42、每一个SLR(1)文法也都是LR文法。(T)43、存在一种算法,能判定任何上下文无关文法是否是LL(1)的。(T)44、任何一个LL文法都是一个LR文法,反之亦然。(F)45、LR(1)分析中括号中的1是指,在选用产生式A-a进行分析,看当前读入符号是否在FIRST(a)中。(T)46、若某一个句型中出现了某一产生式的右部,则此右部不一定是该句型的句柄。(F)47、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。(T)48、S-属性文法一定是L一属性文法。(T)49、中间代码是独立于机器的,复杂性介于源语言和机器语言之间,便于进行与机器无关调换代码优化工作。(T)50、只含有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年12月滨州经济技术开发区下属街道办事处购买服务工作人员(46人)笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 在市委统战部2025年春节节后收心会上的讲话稿
- 《时尚北京》杂志2025年第2期
- 人工智能-智能控制课件
- 员工素质模型(企业培训课件)
- 《青春杯辩论演讲》课件
- 美容店跨区域合作运营合同二零二五版
- 呼吸道对空气的处理课件
- 《个体社会化》课件
- 2025至2031年中国幼儿移动球篮行业投资前景及策略咨询研究报告
- 河北省建筑工程资料管理规程DB13(J) T 145 201
- 2023年广东广州期货交易所招聘笔试参考题库附带答案详解
- CKDMBD慢性肾脏病矿物质及骨代谢异常
- 苏教版科学(2017)六年级下册1-2《各种各样的能量》表格式教案
- 我国新能源汽车充电桩行业发展痛点和方向,机械工程论文
- 临床中药学-课件
- 2023年山东科技职业学院单招综合素质考试笔试模拟试题及答案解析
- 警察行政法课件
- 数学与生活小报
- 人力资源管理手册(全集)
- 2023高中物理步步高大一轮 第四章 专题强化七 圆周运动的临界问题
评论
0/150
提交评论