Zhujiao057《编译原理》习题答案.docx

上传人:夺命阿水 文档编号:992567 上传时间:2024-02-22 格式:DOCX 页数:18 大小:264.10KB
返回 下载 相关 举报
Zhujiao057《编译原理》习题答案.docx_第1页
第1页 / 共18页
Zhujiao057《编译原理》习题答案.docx_第2页
第2页 / 共18页
Zhujiao057《编译原理》习题答案.docx_第3页
第3页 / 共18页
Zhujiao057《编译原理》习题答案.docx_第4页
第4页 / 共18页
Zhujiao057《编译原理》习题答案.docx_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《Zhujiao057《编译原理》习题答案.docx》由会员分享,可在线阅读,更多相关《Zhujiao057《编译原理》习题答案.docx(18页珍藏版)》请在课桌文档上搜索。

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、。型B、1型C、2型D、3型5、(八)是一种典型的解释型语言。A、BASICB、CC、FORTRAND、PASCAL6、把汇编语言程序翻译成机器可执行的目标程序的工作是由(B)完成的。A、编译器B、汇编器C、解释器D、预处理器7、用高级语言编写的程序经编译后产生的程序叫(B)A、源程序B、目标程序C、连接程序D、解释程序8、文法G:S(T)T-T,SS则FIRSTVt(T)(OoA、b,八,(B、b,JC、b,A,(,D、b,八,),(9、通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六

3、个部分,还应包括(C)。A、模拟执行器B、解释器C、表格处理和出错处理D、符号执行器10、编译程序绝大多数时间花在(D)上。C、目标代码生成 D、表格管理A、出错处理B、词法分析11、设文法为:S-SAlAA-*ab则对句子aba,下面(D)是规范推导。A、S=SAnSAAnAAAnaAAnabAnabaB、SnSA=SAAnAAAnAAanAbanabaC、SnSAnSAAnSAanSba=Aba=abaDS=SAnSanSAanSba=Abanaba12、ChomSky把文法分成四种类型,其中,(D)也称正规文法A、0型B、1型C、2型【)、3型13、源程序是句子的集合,(B)可以较好地反

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

5、树相同18、语言的词法规则一般用ChonlSky的(D)型文法来描述:A、OB、1C、2D、319、文法Sf(L)a1.T,SS中的终结符号是(B)oA、SB、,CxLD、I20、文法G所描述的语言是(D)的集合。A、文法G的字母表中的所有符号组成的符号串B、文法G的字母表的闭包*中的所有符号串C、文法G的识别符号推出的所有符号串D、文法G的识别符号推出的所有终结符号申21、语法分析器接收以(C)为单位的输入,并产生有关信息供以后各阶段使用。A、表达式B、产生式C、单词D、语句;22、LR(k)文法(A)。A、都是无二义性的B、都是二义性的C、一部分是二义性的D、无法判定23、如果一个编译程序

6、能产生不同于其宿主机的机器代码,则称它为:(CA、诊断编译程序B、优化编译程序C、交叉编译程序D、可变目标编译程序24、许多广为使用的语言,如FOrtran、C、PaSCaI等,属于(A)。A、强制式语言B、应用式语言C、基于规则的语言D、面向对象的语言25、设G是一个文法,S是开始符号。若Sn*,(VTuVN)*,则称a是一个(BA、句子B、句型C、推导D、语言26、赋值语句*:=-6+坊/(5T*PPPf(E)11则句型P+T+i的句柄和最左素短语为(B)oA、P+T和iB、P和P+TC、i和P+T+ID、P和T43、语言的词法规则一般用ChOmSky的(D)型文法来描述:A0B、1C、2

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

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

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

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

11、语D、简单短语65、有文法G=(S,a,S-SaS,S-,S),该文法是(B)。A、LL(I)文法B、二义性文法C、算符优先文法D、SLR(D文法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)【)、A.a:=f(Y.y)68、布尔表达式计算时可以采用某种优化措施,比如AandB用if-then-else可解释为(B6A、ifAthentrueelseB;B、i

12、fAthenBelsefalse;C、ifthenfalseelsetrue;D、ifthentrueelsefalse;69、合并表达式中常量运算的目的是(D)。A、使表达式中的常量尽可能少B、是表达式尽可能简短C、将可在编译时刻计算的常量运算在编译时刻计算出来,然后用所计算出来的值替换表达式中出现的所有这种常量运算,使得生成的代码指令尽可能少D、以上都是70、语法分析器接收以(C)为单位的输入,并产生有关信息供以后各阶段使用。A、表达式B、产生式C、单词【)、语句;71、LR语法分析栈中存放的状态是识别(B)的DFA状态。A、前缀B、可归前缀C、项目I)、句柄;72、中间代码生成所依据的是

13、(C)。A、语法规则B、词法规则C、语义规则D、等价变换规则73、一个(C)指明了在分析过程中的某时刻所能看到产生式多大一部分。A、活前缀B、前缀C、项目D、项目集74、在LR(0)的ACTlON子表中,如果某一行中存在标记“门”的栏,则(八)。A、该行必定填满门B、该行未填满门C、其他行也有rjD、goto子表中也有rj75、对应于产生式AfXY继承属性Y.y的属性计算,可能正确的语义规则是(CA、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)LR(0)B、LR(1)

14、cLR(0)C、SLR(1)LR(1)D、无二义文法ULR(1)77、乔姆斯基(ChomSky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是(B)A、非限制文法B、正则文法C、上下文有关文法D、上下文无关文法78、一个句型中的(八)称为该句型的句柄。A、最左直接短语B、最右直接短语C、终结符D、非终结符79、在自底向上的语法分析方法中,分析的关键是(D)A、寻找句柄B、寻找句型C、消除递归D、选择候选式的一定是(D) .A、LALR文法80、若项目集Ik含有A-,则在状态k时,仅当面临的输入符号aFOLLOW(八)时,才采取“A-a”动作B、LR(0)文法C、LR(1)文法D、

15、SLR(1)文法81、在LR分析法中,分析栈中存放的状态是识别规范句型(C)的DFA状态。A、句柄B、前缀C、活前缀D、LR(O)项目82、为了便于优化处理,三地址代码可以表示成(DA、三元式B、四元式C、后缀式D、间接三元式83、使用三元式是为了(B)。A、便于代码优化处理B、避免把临时变量填入符号表C、节省存储代码的空间D、提高访问代码的速度84、表达式-a+b*(-c+d)的逆波兰式是CD8A、ab+-cd+-*B、a-b+c-d+*C、a-b+c-d+*D、a-bc-d+*+85、若a为终结符,则Afaa为(B)项目A、归约B、移进C、接受D、待约86、评价一个代码生成器最重要的指标是

16、(A)。A、代码的正确性B、代码的高效性C、代码的简洁性D、代码的维护性87、以绝对机器代码为输出,所有地址均己定位,这种代码的优点是(A)。A、可立即执行B、可进一步优化C、目标代码简短D、目标代码执行效率高88、一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组(B)A、句子B、产生式C、单词D、句型89、词法分析器用于识别(C)A、句子B、产生式C、单词D、句型90、编译程序是一种(B)A、汇编程序B、翻译程序C、解释程序D、目标程序91、按逻辑上划分,编译程序第三步工作是(八)A、语义分析B、词法分析C、语法分析D、代码生成92、在语法分析

17、处理中,FlRST集合、FOLLOW集合均是(B)A、非终结符集B、终结符集C、字母表D、状态集93、如果文法G是无二义的,则它的任何句子CI(八)oA、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同94、表达式-a+b*(-c+d)的逆波兰式是(D9A、ab+-cd+-*B、a-b+c-d+*C、a-b+c-d+*D、a-bc-d+*+95、在整个编译期间,对符号表的操作大致都有(B)。A、查询给定名字B、填入新名字C、访问给定名字的信息I)、更新给定名字的信息E、删除无用项

18、96、在编译过程中,符号表的主要作用是(B)。A、帮助错误处理B、辅助语法错误的检查C、辅助语义的正确性检查D、辅助代码生成E、辅助对目标程序的优化97、教材介绍了三种符号表的构造和处理方法,其中(B)中常把符号表组织成二叉树形式。A、线性组织B、排序组织和二分法C、杂凑(散列)组织 D、非线性组织98、编译过程中,语法分析器的任务就是(B)A、分析单词是怎样构成的B、分析单词串是如何构成语句和说明的C、分析语句和说明是如何构成程序的D、分析程序的结构99、若一个文法是递归的,则它所产生的语言的句子(A)。A、是无穷多个B、是有穷多个100、识别上下文无关语言的自动机是(C)A、下推自动机B、

19、NFA101、编译原理各阶段工作都涉及(B)A、词法分析B、表格管理C、是可枚举的D、个数是常量C、DFAD、图灵机C、语法分析D、语义分析102、正则表达式Rl和R2等价是指(C)A、Rl和R2都是定义在一个字母表上的正则表达式B、Rl和R2中使用的运算符相同C、Rl和R2代表同一正则集D、RI和R2代表不同正则集103、编译程序使用(B)区别标识符的作用域。A、说明标识符的过程或函数名B、说明标识符的过程或函数的静态层次C、说明标识符的过程或函数的动态层次D、标识符的行号104,表达式作为实在参数可以传递给被调用的过程,替换过程体中的(B)。A、局部变量B、形式参数C、全局变量D、实在参数

20、105、两个不同过程的活动,其生存期是(BA、重叠的,不嵌套的B、不重叠的,嵌套的C、重叠的,嵌套的D、不重叠的,不嵌套的106、设G为算符优先文法,G的任意终结符对a、b有以下关系成立(C)oA、若f(a)g(b),则abB、若f(a)g(b),则a有限状态自动机能识别(C)oA、上下文无关文法B、上下文有关文法C、正规文法D、短语文法108、已知文法GS:SfAl,AfAlSol0。与G等价的正规式是(C)A、0(0l)*B、1* 0*1109、与(ab)*(ab)等价的正规式是(C)。A、 a*I b*B、 (ab)*(ab)110、(D)文法不是LL(I)的。A、递归B、右递归C、0(

21、l10)*lC、 (ab)(a b)*D、KlO 01)*0D、 (ab)*C、2型D、含有公共左因子的111给定文法AfbAlCc,则符号串CCbcbcA、B、()112、LR(I)文法都是(C)A、无二义性且无左递归C、无二义性但可能是左递归bcbcc (4)bccbccbbbcc中,是该文法句子的是(D)C、D、B、可能有二义性但无左递归D、可以既有二义性又有左递归113、文法E-E+EE*Ei的句子i*i+i*i有(C)棵不同的语法树。A、1B、3C、5D、7114、文法S-*aaSabc定义的语言是(C)。A、a2kbc:k0B、akbck0)C、(a2k-lbck0D、(akakb

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

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

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

25、执行语法分析应遵循(C)。B、D、B、D、词法规则等价变换规则级语言程序的解释执行高级语言的翻译A、语义规则B、语法规则132、A、C、133、A、134、A、135、136、C、构词规则D、等价变换规则程序基本块是指(D)o一个子程序一个没有嵌套的程序段B、一个仅有一个入口和一个出口的语句D、一组顺序执行的程序段,仅有一个入口和一个出口在运行空间的划分中有一个单独的区域叫堆,用来存放(C )。目标代码B、静态数据C、动态数据 D、过程参数Fortran语言的编译程序采用(A )分配策略。静态B、最佳C、堆式动态D、栈式动态文法G: S-XSX y所识别的语言是A、xyxB、(xyx)*文法G

26、描述的语言L(G)是指(A)0(OoC、xnyxn (n0)D、 x*yx*A、L(G) = a S=a , a VT*B、L(G) = a ISn a , a VT*Cs L(G) = IS= a , a (VTUVN*)D、+L(G) = a S=a , a (VT U VN*)137、四元式之间的联系是通过(B)实现的oA、指示器B、临时变量C、符号表D、程序变量138、后缀式ab+cd+/可用表达式(B)来表示。a. a+b/c+db. (a+b)/(c+d)c. a+b(c+d)d. a+b+cd139、表达式(-1 AVB) (CVD)的逆波兰表示为(B)。A、-I ABVACDV

27、B、A- BVCDVAC、ABv-I CDV D、A- BVACDV140、中间代码的树型表示ABCD所对应的表达式为(D)。A、A+B+C+DB、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、标识符

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

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

30、序b.一个项目集c.一个活前缀d.1张分析表e.一个分析栈9、LR分析器核心部分是一张分析表,该表包括CE等子表。a.LL(I)分析b.优先关系c.GOTOd.LRe.ACTION10、每一项ACTIONS,a所规定的动作包括ACDE。a.移进b.比较c.接受d.归约e.报错11、对LR分析表的构造,有可能存在_动作冲突。a.移进b.归约c.移进/归约d.移进/移进e.归约/归约12、自上而下的语法分析方法有ACDE.a.算符优先分析法b.LL(1)分析法c.SLR(1)分析法d.LR(0)分析法e.LALR(1)分析法13、对LR分析器来说,存在ABCE等分析表的构造方法。a.LALRb.L

31、R(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、在编译程序中安排中间代码生成的目的是BI)。a.便于进行存储空间的组织b.利于目标代码的优化c.利于编译程序的移植d.利于目标代码的移植e.利于提高目标代码的质量17、符号表的每一项均包含AC。a.名字栏b.类型栏c.信息栏d.值栏e.ad均包含18、对编译程序所用到的符号表,涉及的操作有ABC.a.填写或更新信息栏内容b.

32、填入新名c.给定名字,访问它的有关信息d.杂凑技术e.线性表和排序二叉树19、源程序中的错误一般有ABCE。a.词法错误b.语法错误c.语义错误d.编译错误e.违反环境限制的错误三、判断题(正确填,错误填F”)1、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。(T)2、编译程序生成的目标程序都是可执行的程序。(F)3、一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。(T)4、编译前端主要由与源语言和目标机相关的那些部分组成。(F)5、优化的任务在于对前端编译所产生的中间代码进行加工和变换,以其能产生运行结果更为准确的目标代码。6、变量既持有

33、左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。(T)7、文法G:S-bA-aAa定义的语言是所有以b开头的后跟至少一个a的字符串的集合。(T)8、可能有两个不同的文法G和G,期中一个是二义的而另一个是无二义的,但是却有L(G)=L(G)。(T)9、NFAM的非确定性表现在它有多个终态。(F)10、设有文法G:S-S*SIS+SI(三)Ia该文法是二义的。(T)11、正则文法一定不是二义的。(F)12、上下文无关文法可以产生语言L=anbncii=l,n=l。(T)13、不存在任何正规文法能产生语言L=anbnn=l(T)14、对于每一个左线性文法Gl,都存在一个右线性文法G2,使

34、得L(GI)=L(G2)。(T)15、正规文法产生的语言都可以用上下文无关文法来描述。(T)16、上下文无关文法比正规文法有更强的描述能力。(T)17、有穷自动机接受的语言是正则语言。(T)18、LL(k)文法都不是二义性的。(T)19、存在一种算法,能判定任何上下文无关文法是否是LL(I)的。(T)20、一个二义性文法可以是SLR文法或LALR嬷。(F)21、令=a,b),则上所有以b为首的字符构成的正规集的正规式为b*(ab)(F)22、对任何一个NFAM,都存在一个DFAM,使得L(M)=L(M)。(T)23、对一个右线性文法G,必存在一个左线性文法G,使得L(G)=L(G),反之亦然。

35、(T)24、对任意一个右线性文法G,都存在一个NFAM,满足L(G)=L(M)。(T)25、对任意一个右线性文法G,都存在一个DFAM,满足L(G)=L(M)。.(T)26、对任何正则表达式r,都存在一个NFAM,满足L(M)=L(r)。(T)27、对任何正则表达式r,都存在一个DFAM,满足L(M)=L(r)。(T)28、算符优先分析法不是一种规范规约法。(T)29、存在有左递归规则的文法是LL(D的。(F)30、LL(I)文法不能用LR(1)分析器来分析。(F)31、若rl和r2是上的正规式,则rlr2也是。(T)32、设M是一个NFA,并且L(M)=(X,y,z),则M的状态数至少为4个

36、。(F)33、一个文法是含有左递归的,如果存在非终结符P,使得P=*P(F)34、提取公共左因子的副产品是引进了大量的非终结符和产生式。(T)35、LR分析器在自左至右扫描输入串时就能发现其中的任何错误,并能准确地指出出错地点。(T)36、在归约过程的任一时刻,一个上下文无关文法的任何句型的直接短语一般都不是唯一的。(T)37、只含有综合属性的属性文法是S-属性文法。(T)38、非终结符只有综合属性,由词法分析器提供。(T)39、任何算符优先文法的句型中不会有两个相邻的非终结符号。(T)40、算符优先文法中任何两个相邻的终结符号之间至少满足三种关系(V,,=)之一。(F)41、任何LL(I)文

37、法都是无二义性的。(T)42、每一个SLR(I)文法也都是LR(D文法。(T)43、存在一种算法,能判定任何上下文无关文法是否是LL(I)的。(T)44、任何一个LL(I)文法都是一个LR(I)文法,反之亦然。(F)45、LR(D分析中括号中的1是指,在选用产生式Afa进行分析,看当前读入符号是否在FIRST()中。(T)46、若某一个句型中出现了某一产生式的右部,则此右部不一定是该句型的句柄。(F)47、在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。(T)48、S一属性文法一定是L一属性文法。(T)49、中间代码是独立于机器的,复杂性介于源语言和机器语言之间

38、,便于进行与机器无关调换代码优化工作。(T)50、只含有继承属性的属性文法称为-L属性文法。(F)51、“回填”技术用于对过程中的说明语句进行处理时把计算出的有关符号的属性填入符号表。(F)52、如果E是一个常量或变量,则E的逆波兰式是E自身。(T)53、在不含嵌套过程的词法作用域中,若一个过程中有对名字a的非局部引用,则a必须在任何过程(或函数)外被说明。(T)54、在允许嵌套的词法作用域的语言中,过程不能作为参数,原因时不能建立其运行环境的存取链。(F)55、强度削弱是指把程序中执行时间较长的运算替换为执行时间较短的运算。(T)56、把循环中的乘法运算用递归加法运算来替换就是一种强度削弱。

39、(T)57、窥孔优化方法是通过考察一小段目标指令,并把这些指令替换为更短和更快的一段指令,从而提高目标代码的质量。(T)58、编译程序生成的目标程序都是可执行的程序。(F)59、一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。(T)60、可能有两个不同的文法G和G,期中一个是二义的而另一个是无二义的,但是却有L(G)=L(G,)。(T)61、NFAM的非确定性表现在它有多个终态。(F)62、有穷自动机接受的语言是正则语言。(T)63、LL(k)文法都不是二义性的。(T)64、在自下而上的语法分析中,语法树与分析树一定相同。(F)65、二义文法不是上下文无关文法。(F)66、

40、语法分析时必须先消除文法中的左递归。(F)67、规范归约和规范推导是互逆的两个过程。(F)68、一个文法所有句型的集合形成该文法所能接受的语言。(F)69、一个有限状态自动机中,有且仅有一个唯一终态。(F)70、存在一种算法,能判定任何上下文无关文法是否是LL(I)的。(T)71、一个二义性文法可以是SLR文法或LALR文法。(F)72、LL(I)文法不能用LR(1)分析器来分析。(F)73、非终结符只有综合属性,由词法分析器提供。(T)74、S-属性文法一定是L一属性文法。(T)75、通过建立一个变量地址描述数组AVALUE,来动态记录变量在运行过程中值的变化。(F)76、在程序设计语言中,一般来说,布尔表达式仅仅用于条件、循环等控制流语句中的条件表达式计算。(F)77、中间代码是独立于机器的,复杂性介于源语言和机器语言之间,便于进行与机器无关调换代码优化工作。(F)78、设r和s分别是正规式,则有L(rs)=L(r

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号