欢迎来到天天文库
浏览记录
ID:51388098
大小:1.31 MB
页数:58页
时间:2020-03-23
《编译原理万能基础选择题包过.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《编译原理》期衣试题(_)二、选择题(请在前括号内选释最确切的一项作为答案划一个勾,多划按错论)(每个4分,共40分)1.词法分析器的输出结果是。B.()单词在符号表小的位置()单词白身值A.()单词的种别编码C.()单词的种别编码和自身值D.2.正规式M1和M2等价是指oB.D.A.()Ml和M2的状态数相等C・()Ml和M2所识别的语吉集相等3.文法G:S->xSx
2、y所识别的语言是一()Ml和M2的有向边条数相等()M1和M2状态数和有向边条数相等D.()x*yx*A.()xyxB.()(xyx)*C.()xnyxn
3、(n>0)4.如果文法G是无二义的,则它的任何句子aA.()报左推导和故右推导对应的语法树必定相同B.()最左推导和最右推导对应的语法树可能不同C.()最左推导和最右推导必定相同D.()可能存在两个不同的最左推导,但它们对应的语法树相同5.构造编译程序应掌握oA.()源程序B.()目标语言C.()编译方法D.()以上三项都是6.四元式Z间的联系是通过实现的。A.()指示器B.()临时变量C.()符号表D.()程序变量7.表达式(-
4、AVB)A(CVD)的逆波兰表示为oA.()1ABVACDVB.()AnBVCDVAC.()
5、ABV-
6、CDVAD.OAqBVACDV8.优化可生成的H标代码。A.()运行时间较短B.()占用存储空间较小C.()运行时间短但片用内存空间大D.()运行时间短-目•占用存储空间小9.下列优化方法不是针对循环优化进行的。A.()强度削弱B.()删除归纳变量C.()删除多余运算D.()代码外提10•编译稈序使用区别标识符的作用域。A.()说明标识符的过程或函数名B.()说明标识符的过程或函数的静态层次c.()说明标识符的过程或函数的动态层次D.()标识符的行号三、填空题(每空1分,共10分)1•计算机执行用高级语言编写的程
7、序主要有两种途径:—解释_和_编译_。2.扫描器是_词法分析器—,它接受输入的_源柠序—,对源程序进行—词法分析_并识别出一个个单词符号,其输出结果是单词符号,供语法分析器使用。3.自上而下分析法采用—移进_、归约、错误处理、—接受―等四种操作。4.一个LR分析器包括两部分:一个总控程序和—一张分析表_。5.后缀式abc・/所代表的表达式是a/(b-c)_。6•局部优化是在—泵木块—范围内进行的一种优化。四、简答题(20分)1.简要说明语义分析的基本功能。答:语义分析的基本功能包括:确定类型、类型检杳、语义处理和某些静态语
8、义检查。2.考虑文法G[S]:S->(T)
9、a+S
10、aT->T,S
11、S消除文法的左递归及提取公共左因子。解:消除文法G[S]的左递归:S->(T)
12、a+S
13、aT->STZTJ,SF
14、8提取公共左因子:S->(T)
15、aS,SJ+SIET->STZTJ,S「
16、e3.试为表达式w+(a+b)*(c+d/(e-10)+8)写出相应的逆波兰表示。解:wab+cde10-/+8+*+4.按照三种基本控制结构文法将下面的语句翻译成四元式序列:while(A1)C=C+1;elsewhile(A17、:该语句的四元式序列如下(其中El、E2和E3分别对应AaSb18、Sb19、b,试证明文法G[S]为二义文法。证明:由文法G[S]20、:S->aSb21、Sb22、b,对句子aabbbb对应的两棵语法树为:bb因此,文法G[S]为二义文法。%1.计算题(10分)已知文法A->aAd23、aAb24、e判断该文法是否是SLR(l)文法,若是构造相应分析表,并对输入串ab#给出分析过程。解:增加一个非终结符S/后,产生原文法的增广文法有:S*->AA->aAd25、aAb26、c下面构造它的LR(O)项目集规范族为:abd#AIo:ST・AA->aaAdA->*aAbA->・I::A->aBAdA->aBAbA->*aAdA->baAbA->・II:S,TA・Ii:s5・accI:27、:ATa・AdATa・AbAT・aAdA->*aAbAT・I:I5:A->aABdA->aA*bI3:ATaA・dATaA・bI.:ATaAb・Is:A->aAd*I.:ATaAb・Is:ATaAd*从上表可看出,状态10和12存在移进■归约冲突,该文法不是LR(0)文法。对于10来说有:FOLLOW(
17、:该语句的四元式序列如下(其中El、E2和E3分别对应AaSb
18、Sb
19、b,试证明文法G[S]为二义文法。证明:由文法G[S]
20、:S->aSb
21、Sb
22、b,对句子aabbbb对应的两棵语法树为:bb因此,文法G[S]为二义文法。%1.计算题(10分)已知文法A->aAd
23、aAb
24、e判断该文法是否是SLR(l)文法,若是构造相应分析表,并对输入串ab#给出分析过程。解:增加一个非终结符S/后,产生原文法的增广文法有:S*->AA->aAd
25、aAb
26、c下面构造它的LR(O)项目集规范族为:abd#AIo:ST・AA->aaAdA->*aAbA->・I::A->aBAdA->aBAbA->*aAdA->baAbA->・II:S,TA・Ii:s5・accI:
27、:ATa・AdATa・AbAT・aAdA->*aAbAT・I:I5:A->aABdA->aA*bI3:ATaA・dATaA・bI.:ATaAb・Is:A->aAd*I.:ATaAb・Is:ATaAd*从上表可看出,状态10和12存在移进■归约冲突,该文法不是LR(0)文法。对于10来说有:FOLLOW(
此文档下载收益归作者所有