发布时间 : 星期日 文章编译原理试题(卷)汇总-编译原理期末试题(卷)(8套含答案解析-大题集)更新完毕开始阅读0d9236d553e79b89680203d8ce2f0066f4336461
WORD格式可编辑
3 S5 S4 4 r1 r1 r1 5 r2 r2 r2
(4)串ab#的分析过程
步骤 状态栈 符号栈 当前字符 剩余字符串 动作 1 0 # a b# 移进 2 02 #a b # 归约A->ε 3 023 #aA b # 移进 4 0235 #aAb # 归约A-> aAb 5 01 #A # 接受 6. 【解答】
由M→d和M→a…得:FIRSTVT(M)={d,a}; 由H-H;…得:FIRSTVT(H)={;}
由H→M得:FIRSTVT(M) cFIRSTVT(H),即FIRSTVT(H)={;,d,a} 由M→d和M→…b得:LASTVT(M)={d,b}; 由H---,;m得:LASTVT(H)={;};
由H→M得:LASTVT(M)cLASTVT(H),即LASTVT(H)={;,d,b}
对文法开始符H,有#H#存在,即有#=#,#
对形如P→…ab…,或P→…aQb…,有a=b,由M→a|b得:a=b;
对形如P→…aR…,而b∈FIRSTVT(R),有ab。
由H→…;M得:;
专业技术分享
WORD格式可编辑
(3) 句子abaab的分析过程 表:句子abaab的分析过程
步骤 状态 符号栈 输入串 所得产生式 0 #0 # abaad# 1 #03 #a baad# 2 #034 #ab aab# B→b 3 #036 #aB aab# B→aB 4 #02 #B aab# 5 #023 #Ba ab# 6 #0233 #Baa b# 7 #02334 #Baab # 8 #02336 #BaaB # 9 #0236 #BaB ad# 10 #025 #BB ad# 11 #01 #S d# 12 # # d# 13 识别成功 8. 【解答】
该语句的四元式序列如下(其中E1、E2和E3分别对应:A 101(j,_,_,113) /*E1为F*/ 102 (j<,B,D,104) /*El为T*/ 103 (j,_,_,113) /*El为F*/ 104 (j=,A,1,106) /*Ez为T*/ 105 (j,_,_,108) /*EZ为F*/ 106 (+,C,1,C) /*C:=C+1*/ 107 (j,_,_,112) /*跳过else后的语句*/ 108 (j≤,A,D,110) /*E3为T*/ 109 (j,_,_,112) /*E3为F*/ 110 (+,A,2,A) /*A:=A+2*/ 111 (j,_,_,108) /*转回内层while语句开始处*/ 112(j,_,_,100) /*转回外层while语句开始处*/ 113 9. 【解答】 (1)流图中各结点N的必经结点集D(n), D(l)={1},D(2)={1,2},D(3)={1,2,3},D(4)={1,2,3,4},D(5)={1,2,5}, D(6)={1,2,5,6} (2)求出流图中的回边, 5->2,4->3 (3)求出流图中的循环: 回边5->2对应的循环:2、5、3、4; 专业技术分享 WORD格式可编辑 回边4->3对应的循环:3、4 专业技术分享 WORD格式可编辑 《编译原理》模拟试题一 一、是非题(请在括号内,正确的划√,错误的划×)(每个2分,共20分) 1.计算机高级语言翻译成低级语言只有解释一种方式。(×) 2.在编译中进行语法检查的目的是为了发现程序中所有错误。(×) 3.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系 统功能完全相同。 (√ ) 4.正则文法其产生式为 A->a , A->Bb, A,B∈VN , a 、 b∈VT 。 (×) 5.每个文法都能改写为 LL(1) 文法。 (√) 6.递归下降法允许任一非终极符是直接左递归的。 (√) 7.算符优先关系表不一定存在对应的优先函数。 (×) 8.自底而上语法分析方法的主要问题是候选式的选择。 (×) 9.LR 法是自顶向下语法分析方法。 (×) 10.简单优先文法允许任意两个产生式具有相同右部。 (×) 二、选择题(请在前括号内选择最确切的一项作为答案划一个勾,多划按错论)(每 个4分,共40分) 1. 一个编译程序中,不仅包含词法分析,_____,中间代码生成,代码优化, 目标代码生成等五个部分。 A.( ) 语法分析 B.( )文法分析 C.( )语言分析 D.( )解释分析 2. 词法分析器用于识别_____。 A.( ) 字符串B.( )语句C.( )单词 D.( )标识符 3. 语法分析器则可以发现源程序中的_____。 A.( ) 语义错误 B.( ) 语法和语义错误 C.( ) 错误并校正 D.( ) 语法错误 专业技术分享