当前位置:文档之家› 编译原理练习题目

编译原理练习题目

《编译原理》练习一、填空题1、编译程序的总体结构分为词法分析、语法分析、语义分析和中间代码、优化和目标代码生成五部分。

2、构造一个编译程序的三要素是:___原程序____________,__________目标语言_______,__编译方法__________________。

3、被编译的语言为A语言,编译的最终结果为B语言代码,编写编译程序的语言为C语言。

那么,_____a__语言为源语言,___c__语言为宿主语言,_____b____语言为目标语言。

4、设文法G(S):S→aS|Sb|a|b,则文法G(S)所识别语言的正规式为____a*(a|b)b*_____________________。

5、设有文法G(S):S→Sab|bR R→S|aG(S)的语言L(G(S))={_____________________}。

6、设文法G[V]:V→aaV|bc 该文法所对应的语言L(G)=_________________。

7、C语言中表达式a + + + + + + + = 1,词法分析后,能识别出的单词个数是_____6__。

8、设有文法G(S为开始符号):S→Ap|Bq A→a|cA B→b|dBFIRST(Ap)={_______a c______}。

9、设有文法G[S]:S→AB|bb|bAC A→ε|b B→ε|aC C→aS|c则FIRST(S)={_____________},FOLLOW(A)={___________}。

对给出的文法G[S]填写如下LL(1)分析表的内容:a b c﹟A ___________________ _____________________________ _______________10、一个LR分析器的逻辑结构包括___输入串____________、____总控程序____________和____分析栈______________三部分。

11、被编译的程序成为______源程序_______。

12、设字母表A={0},A*={___# 。

0.00.000……_______________}。

13、程序设计语言的单词符号一般分为:关键字、___保留字________、__标识符_________、___常数___________和界限符等。

14、设有文法G(S):S→AB|bC A→ε|b B→ε|aD C→AD|b D→aS|c则FOLLOW(A)={____# a_________________},FIRST(S)={__#abc___________}。

15、设文法G[S]:S→Pab|bP P→b|ε根据文法填写如下LL(1)分析表的内容。

a b ﹟P ______b______ ___#______a_______ _____#___________16、设文法G(A):A→[B B→X]|BA X→Xa|Xb|a|b则文法所识别语言的正规式为_____________________________。

17、设有C语言的程序段如下:While(i && ++ j){c=2.19;j+=k;i++;}则经过词法分析后可以识别的单词个数是___20______个。

18、自上而下语法分析的主要分析动作是______推导_____(推导/规约)。

19、设有文法(A为开始符号):A→A + T|T T→T * B|B B→(A)|i句型A + B * i 的素短语为___i _________。

二、选择题1、设有表达式a * b—c,将其中a * b识别为表达式的编译阶段是____b__。

A、词法分析B、语法分析C、语义分析D、代码生成2、下面不能用于对文法进行描述的是_____a___。

A、源语言B、EBNFC、BNFD、语法图3、设文法G(S)为:S→0A A→1B B→0|0S 则L(G)为_b________。

A、L1={(01)n 0|n>=1}B、L2={(010)n |n>=1}C、L3={0(10)n |n>=1}D、L4={(010)n |n>=0}4、设有文法G(S)为:S→S1|S0|Sa|Sc|a|b|c 下列符号串中不是该文法的句子的是_____a___。

A、ab0B、a0c01C、aaaD、bc105、给出语言L(G)={a i b j c j|i>=1,j>=0},其相应的文法G为_________。

A、S→aSc|B B→bB|bB、S→aS|T T→bTc|bcC、S→Abc|A A→aA|aD、S→AB|A A→aA|a B→bBc|bc6、设有文法G(S):S→AB|AS A→aA|a B→b 文法与下面正规式等价的是_________。

A、aa* bb*B、aa* bC、(ab)*D、a(ab)* b7、词法分析器的输入是____b____。

A、单词符号串B、源程序C、语法单位D、目标程序8、设有文法的产生式:A→a|ε,则在自上而下语法分析中,对A推导不带回溯的条件是___a_____。

A、FIRST(a)∩FOLLOW(A)=ФB、FIRST(a)∩FIRST(A)=ФC、FIRST(a)∪FOLLOW(A)=ФD、上述3个都不是9、自下而上语法分析的主要分析动作是_____a____。

A、移近—规约B、推导C、规约D、匹配10、下列文法中,______b__是算符优先文法。

A、S→Aa A→bB B→aB、S→Aa A→Bb B→aC、S→aAB A→b B→aD、S→aSb|a11、___c___不是编译程序的组成部分。

A、词法分析程序B、代码生成程序C、设备管理程序D、语法分析程序12、设文法G(S)为:S→bS|aA|ε A→bA|aC C→bCaS|a 下列符号串是L(G)中的元素的是_________。

A、ba121b100a2B、b100aaC、a800b900aD、b1000013、设有文法G(S)为:S→S1|S0|Sa|Sc|a|b|c 下列符号串中不是该文法的句子的是_____a___。

A、ab0B、a0c01C、aaaD、bc1014、文法G(S):S→aA A→bB B→a|As 则L(G)= ______c___。

A、L1={(ab}n a|n>=1}B、L2={a(ba}n|n>=1}C、L3={(aba}n|n>=1}D、L4={(aba}n|n>=0}15、设定义在字母表{a,b,c,x,y,z}上的正规式r=(a|b|c)(x|y|z),则L(r)中的元素有______a___个。

A、9B、6C、18D、2716、语法分析方法中的LL(1)分析法属于____b____分析方法。

A、自左至右B、自上而下C、自下而上D、自右至左17、设有文法G(S为开始符号):S→Ap|Bq A→a|cA B→b|dB FIRST(Ap)={______a_______}。

A、a,cB、b,dC、p,qD、其它答案18、算符优先分析中,可归约串是______c___。

A、句柄B、活前缀C、最左素短语D、素短语19、设文法G(S)为:S→0S|1A|0 A→1|1S|0B B→1A|0B下列符号串是语言中的元素的是______。

A、10100010011011B、0101001110010010C、1101010011110111D、101001110110101020、设文法G(S)为:S→aA|bC|a A→aS|bB B→aC|bA|b C→aB|bS下述不为L(G)的句子的是_____b___。

A、a100b50ab100B、a1000b500abaC、a500b60aab2 aD、a100b40ab10 aa21、下列文法中,____a____是LL(1)文法(S是公理)。

A、S→aSb|abB、S→ab|SabC、S→aS|bD、S→aS|a22、给出语言L(G)={a i b j c j d i|i>=0且j>=1},其相应的文法G为_________。

A、S→aSd|T T→bcT|bcB、S→aSd|T T→bTc|bcC、S→AB|B A→aAd|ad B→bBc|bcD、S→Abc|A A→aAd|ad23、设有文法G(S):S→Ax|By A→y|Ay B→x|y下面与文法表示相同语言的正规式是__d_______。

A、y*x|xy|yB、y*x|x|xyC、yy*x|xy|yD、yy*x|xy|yy24、在词法分析阶段不能识别的是____c____。

A、标识符B、运算符C、四元式D、常数。

相关主题