当前位置:文档之家› 山东科技大学《编译原理》期末考试试题(A卷)word版本

山东科技大学《编译原理》期末考试试题(A卷)word版本

山东科技大学《编译原理》期末考试试题(A卷)word版本
山东科技大学《编译原理》期末考试试题(A卷)word版本

山东科技大学2015—2016学年第二学期

《编译原理》考试试卷(A卷)

班级姓名学号

一、单项选择题(共15小题,每小题2分,共30分)

1. 一个上下文无关文法G包括四个组成部分:一组终结符,一组非终结符,一个开始符号,以及一组()。

A.字符串

B.产生式

C.开始符号

D.文法

2.一个句型中称为句柄的是该句型的最左()

A.非终结符号

B.短语

C.句子

D.直接短语

3.自动机识别的语言是()

A.0型语言

B.1型语言

C.2型语言

D.3型语言

4.编译程序各阶段工作都涉及()

A.词法分析

B.表格管理

C.语法分析

D.语义分析

5.代码生成阶段的主要任务是()

A.把高级语言翻译成汇编语言

B.把高级语言翻译成机器语言

C.把中间代码变换成依赖具体机器的目标代码

D.把汇编语言翻译成机器语言

6.作为编译程序的源语言,不能是( )

A.高级语言

B.C语言

C.低级语言

D.Pascal语言

7.词法分析器的输入是()

A.单词符号串

B.源程序

C.语法单位

D.目标程序

8.给定文法A->bA︱cc,下面符号串中不是该文法的句子的是()①cc ②bcbc ③bcbcc ④bccbcc ⑤bbbcc

A.①⑤

B. ②③④

C. ①④⑤

D. ①②⑤

9.若B是非终结符,则A->a.aBb为()项目

A.移进

B.待约

C.接受

D.规约

10.文法G:

S→b|∧|(T)

T→T,S|S则FIRSTVT(T)结果是()。

A. {b,∧,(}

B. {b,∧,)}

C.{b,∧,(,,}

D.{b,∧,),,}

11.常用的中间代码形式不含()

A.三元式

B.四元式

C.逆波兰式

D.语法树

12.正规式M 1 和M 2 等价是指()。

A.M1和M2的状态数相等

B.M1和M2的有向边条数相等

C.M1和M2所识别的语言集相等

D.M1和M2状态数和有向边条数相等

13.文法G:S→xSx|y所识别的语言是()。

A.xyx

B.(xyx)*

C.x n yx n (n≥0)

D.x*yx*

14.如果文法G是无二义的,则它的任何句子α()。A.最左推导和最右推导对应的语法树必定相同

B.最左推导和最右推导对应的语法树可能不同

C.最左推导和最右推导必定相同

D.可能存在两个不同的最左推导,但它们对应的语法树相同15.词法分析器的输出结果是()。

A.单词的种别编码

B.单词在符号表中的位置

C.单词的种别编码和自身值

D.单词自身值

二、填空题(本大题共10空,每空2分,共20分)

1.对于文法G[E]:

E→T|E+T

T→F|T*F

F→P^F|P

P→(E)|i,

句型T+T*F+i的句柄是______,最左素短语是_______。

2.编译器常用的语法分析方法有_______和_______两种。

3.算符优先分析法每次都是对____________ 进行归约。

4.编译程序的工作过程主要分为如下几个阶段:词法分析、语法分析、________、___________、____________、目标代码生成。

5.假设有文法G[S]:S->Sa|b,对该文法消除左递归后得到的文法为(注:新的符号用S′表示)_________。

6.对于文法G,仅含终结符号的句型称为_________ 。

三、简答题(共6题,每题5分,共30分)

1.已知文法G[Z]:Z→aZb |ab,写出L(G(Z))的全部元素。

2.已知文法G[S] 为S →aSb|Sb|b ,试证明文法G[S] 为二义文法。3.设有文法

E→E+T | T

T→T*F | F

F→(E) | i

求下列表达式的最左推导和语法树

(1)3+4*5+6

(2)3*(4+5)

4.将如下正规文法转换为自动机。

S→0A|1B

A→1S|1

B→0S|0

5.已知文法G[S]:

S→a | (T)

T→TbS | S

(1)写出句型((TbS)ba)的语法树

(2)写出该句型短语、简单短语、句柄、素短语

6.有文法G[S]:

0) S→BB

1) B→aB|b

构造此文法的LR(0)项目集规范簇,并写出识别活前缀的DFA 四、综合应用(共2题,共20分)

1.构造下列正规式1(0|1)*101 相应的DFA

(1)由正规表达式构造NFA

(2)由转换系统NFA构造确定的有穷自动机DFA

(3)DFA的最小化

2.已知文法G[S]:

0) S→bN

1) N→BaN

2) N→ε

3) B→ab

(1)证明文法G为LL(1)文法?

(2)构造该文法的预测分析表。

(3)写出句子babaaba的分析过程。

《编译原理》模拟期末试题汇总 6套,含答案

《编译原理》模拟试题一 一、是非题(请在括号内,正确的划√,错误的划×)(每个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.( ) 语法错误 4.下面关于解释程序的描述正确的是_____。

(1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A.( ) (1)(2) B.( ) (1)C.( ) (1)(2)(3) D.( ) (2)(3) 5.解释程序处理语言时 , 大多数采用的是_____方法。 A.( ) 源程序命令被逐个直接解释执行 B.( ) 先将源程序转化为中间代码 , 再解释执行 C.( ) 先将源程序解释转化为目标程序 , 再执行 D.( ) 以上方法都可以 6.编译过程中 , 语法分析器的任务就是_____。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A.( ) (2)(3) B.( ) (2)(3)(4) C.( ) (1)(2)(3) D.( ) (1)(2)(3)(4) 7.编译程序是一种_____。 A. ( ) 汇编程序B.( ) 翻译程序 C.( ) 解释程序 D.( ) 目标程序 8.文法 G 所描述的语言是_____的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串 B.( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串 C.( ) 由文法的开始符号推出的所有终极符串 D. ( ) 由文法的开始符号推出的所有符号串 9.文法分为四种类型,即0型、1型、2型、3型。其中3型文法是_____。 A. ( ) 短语文法 B.( ) 正则文法 C.( ) 上下文有关文法 D.( ) 上下文无关文法 10.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 _____。 A.( ) 句子B.( ) 句型 C.( ) 单词 D.( ) 产生式 三、填空题(每空1分,共10分)

javascript期末考试模拟题

一、单项选择题(本题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其正确答案涂写在答题卡上。 1. 以“.js”为文件扩展名的文件是______。 (A) html文件(B) 网页文件(C) Java文件(D) Javascript文件 2.以下合法的变量名是______。 (A) new (B) _123 (C) null (D) 2abc 3.以下正确的字符串是______。 (A) xyz (B) ‘xyz” (C) “xyz’ (D) ‘xyz’ 4.设有语句: var st1=’test’; st1=st1+ 25; 则st1的值是______。 (A) ‘test25’ (B) 25 (C) ‘test’(D) 语法错误 5.123+”789”的值是______。 (A) ‘123789’ (B) 912 (C) “789”(D) 语法错误 6.表达式(a=2,b=5,a>b?a:b)的值是______。 (A) 2 (B) 5 (C) 1 (D) 0 7.设有语句var a=3,b=5,c=3,d=8,m=3,n=2; 则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为_______。 (A) 0 (B) 1 (C) 2 (D) 3 8.设var a=2,b=3; 则a++==b?(a-1):b的结果是___________。 A) 0 B) 1 C) 2 D) 3 9. 下面while循环执行的次数为________。 var i=5; while (i==0) i--; A)无限B) 1 C) 5 D) 0 10. 以下数组的定义中____________是错误的。 A) var a=new Array(); B) var a=new Array(10); C) var a[10]={ 1,2,3}; D) var a=["1",2,"3"]; 11.设var x=3,y=4; 下列表达式中y的值为9的是________。 A)y*=x-3 B)y/=x*9 C)y-=x+10 D)y+=x+2 12. 在程序中有多个相关联的选项,若要默认选择某一项,应在该项中增加_________属性。 A) checked B) default C) selected D) defaultValue 13.结果为NaN的表达式是______。 (A) "80"+"19" (B) "十九"+"八十" (C) "八十"*"十九" (D) "80"*"19" 14.执行下面语句后c的值是_______。 var a=2,b=1,c=3; if(a

编译原理复习题2017(含试卷)

* 编译原理复习题 一.简答题: 1) 什么是句子? 什么是语言? 解答:句子——设G 是一个给定的文法,S 是文法的开始符号,如果S x (其中x ∈V T * ),则称x 是文法的一个句子。 语言——语言是句子的集合。 或——设G[S]是给定文法,则由文法G 所定义的语言L(G)可描述为:L(G)={x │ S x,x ∈V T * } 。 2) DFA 与NFA 有何区别 ? 解答:DFA 与NFA 的区别表现为两个方面:一是NFA 可以有若干个开始状态,而DFA 仅只有一个 开始状态。另一方面,DFA 的映象M 是从K ×∑到K ,而NFA 的映象M 是从K ×∑到K 的子集,即映象M 将产生一个状态集合(可能为空集),而不是单个状态。 3) 自顶向下的语法分析方法的基本思想是什么? 解答:从文法的开始符号开始,根据给定的输入串并按照文法的产生式一步一步的向下进行直接 推导,试图推导出文法的句子,使之与给定的输入串匹配。 4) 自底向上的语法分析方法的基本思想是什么? 解答:从给定的输入串(终结符串)开始,根据文法的规则一步一步的向上进行直接归约,试图 归约到文法的开始符号。 5) 一个上下文无关文法G 包括哪四个组成部分? 解答:一组非终结符号,一组终结符号,一个开始符号,以及一组产生式。 6) 在自底向上的语法分析方法中,分析的关键是什么?

解答:关键是寻找句柄。 7)在自顶向下的语法分析方法中,分析的关键是什么? 解答:关键是选择候选式。 8)什么是属性文法? 答:是在上下文无关文法的基础上,为每个文法符号(含终结符和非终结符)配备若干个属 性值,对文法的每个产生式都配备了一组属性计算规则(称为语义规则)。在语法分析过 程中,完成语义规则所描述的动作,从而实现语义处理。 一个属性文法形式的定义为一个三元组AG,AG=(G,V,E)。 其中G为一个上下文无关文法;V为属性的有穷集;E为一组语义规则。 9)语法制导翻译 语法制导翻译:定义翻译所必须的语义属性和语义规则,一般不涉及计算顺序。 语法制导翻译(Syntax-Directed Translations): –一个句子的语义翻译过程与语法分析过程同时进行。 在文法中,文法符号有明确的意义,文法符号之间有确定的语义关系。属性描述语义信息, 语义规则描述属性间的的关系,将语义规则与语法规则相结合,在语法分析的过程中计算语义 属性值。 10)词法分析的主要任务是什么? 解答:词法分析器的任务是对构成源程序的字符串从左到右逐个字符逐个字符地进行扫 描,依次把它们识别为一个一个具有独立意义的单词,并确定其属性,再转换为长度统一的属 11)图示运行时存储空间的划分(分为哪几个区)。 解答: 一般分为静态区和动态区: 程序代码区、静态数据区、栈区和堆区 12)常用的中间语言种类有哪几种? 解答: 常用的中间语言种类有逆波兰表示、三元式、四元式和树形表示。 13)文法G所描述的语言是什么的集合? 解答:是由文法的开始符号推出的所有终结符串的集合。或说是句子的集合。 14)乔姆斯基把文法分为四种类型,即0型、1型、2型、3型。其中2型文法叫什么? 解答: 2型文法叫上下文无关文法。 15)常见的动态存贮分配策略有哪两种? 解答:常见的两种动态存贮分配策略是栈式动态分配策略和堆式动态分配策略。 16)语法分析的任务是什么?

最新编译原理试题汇总+编译原理期末试题(8套含答案+大题集)

编译原理考试题及答案汇总一、选择 1.将编译程序分成若干个“遍”是为了_B__。 A . 提高程序的执行效率 B.使程序的结构更加清晰 C. 利用有限的机器内存并提高机器的执行效率 D.利用有限的机器内存但降低了机器的执行效率 2.正规式 MI 和 M2 等价是指__C__。 A . MI 和 M2 的状态数相等 B.Ml 和 M2 的有向弧条数相等。 C .M1 和 M2 所识别的语言集相等 D. Ml 和 M2 状态数和有向弧条数相等 3.中间代码生成时所依据的是 _C_。 A.语法规则 B.词法规则 C.语义规则 D.等价变换规则 4.后缀式 ab+cd+/可用表达式__B_来表示。 A. a+b/c+d B.(a+b)/(c+d) C. a+b/(c+d) D. a+b+c/d 6.一个编译程序中,不仅包含词法分析,_A____,中间代码生成,代码优化,目标代码生成等五个部分。 A.( ) 语法分析 B.( )文法分析 C.( )语言分析 D.( )解释分析 7.词法分析器用于识别__C___。 A.( ) 字符串 B.( )语句 C.( )单词 D.( )标识符 8.语法分析器则可以发现源程序中的___D__。 A.( ) 语义错误 B.( ) 语法和语义错误 C.( ) 错误并校正 D.( ) 语法错误 9.下面关于解释程序的描述正确的是__B___。 (1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A.( ) (1)(2) B.( ) (1) C.( ) (1)(2)(3) D.( ) (2)(3) 10.解释程序处理语言时 , 大多数采用的是__B___方法。 A.( ) 源程序命令被逐个直接解释执行 B.( ) 先将源程序转化为中间代码 , 再解释执行 C.( ) 先将源程序解释转化为目标程序 , 再执行 D.( ) 以上方法都可以 11.编译过程中 , 语法分析器的任务就是__B___。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A.( ) (2)(3) B.( ) (2)(3)(4)C.( ) (1)(2)(3) D.( ) (1)(2)(3)(4) 12.编译程序是一种___C__。 A. ( ) 汇编程序 B.( ) 翻译程序 C.( ) 解释程序 D.( ) 目标程序 13.文法 G 所描述的语言是_C____的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串 B.( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串 C.( ) 由文法的开始符号推出的所有终极符串 D. ( ) 由文法的开始符号推出的所有符号串 14.文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3 型文法是___B__。 A. ( ) 短语文法 B.( ) 正则文法 C.( ) 上下文有关文法 D.( ) 上下文无关文法15.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 __D___。 A.( ) 句子 B.( ) 句型 C.( ) 单词 D.( ) 产生式

编译原理期末考试卷

2001年编译原理试题 1.(10分)处于/* 和 */之间的串构成注解,注解中间没有*/。画出接受这种注解的DFA的状态转换图。 2.(10分)为语言 L ={a m b n | 0 ≤ m ≤ 2n}(即a的个数不超过b的个数的两倍) 写一个LR(1)文法,不准超过6个产生式。(若超过6个产生式,不给分。若所写文法不是LR(1)文法,最多给5分。) 3.(10分)构造下面文法的LL(1)分析表。 D → TL T → int | real L → id R R → , id R | ε 4.(15分)就下面文法 S → ( L) | a L → L , S | S ?给出一个语法制导定义,它输出配对括号的个数。 ?给出一个翻译方案,它输出每个a的嵌套深度。 如句子(a, (a, a) ),第一小题的输出是2,第二小题的输出是1 2 2。 5.(10分)Pascal语言for语句的含义见教材第222页习题7.13。请为该语句设计一种合理的中间代码结构。你可以按第215页图7.17的方式或者第219页图7.19的方式写出你的设计,不需要写产生中间代码的语法制导定义。 6.(5分)一个C语言程序如下: func(i1,i2,i3) long i1,i2,i3; { long j1,j2,j3; printf("Addresses of i1,i2,i3 = %o,%o,%o\n",&i1,&i2,&i3); printf("Addresses of j1,j2,j3 = %o,%o,%o\n",&j1,&j2,&j3); } main() { long i1,i2,i3;

数据库期末考试模拟试题及答案(一)

四、程序设计题(本大题共2小题,每小题15分,共30分) 1.对于教学数据库的三个基本表 学生student (sno,sname,sex,sage,sdept) 学习sc(sno,cno,grade) 课程course(cno,cname,cpno,ccredit) 试用SQL语句表示:下列语句。 (1)"查询全男同学信息情况" "select * from student where sex='男'" (2)"查询选修了1号课的学生的学号和成绩" "select sno,grade from sc where cno='1'" (3)"查询所有选修过课的学生的姓名,课程名及成绩" "select sname,cname,grade from student,sc,course where student.sno=sc.sno and https://www.doczj.com/doc/ad3186780.html,o=https://www.doczj.com/doc/ad3186780.html,o" (4)"查询选修了数据库原理课的最高成绩" "select max(grade) as '最高成绩' from student,sc,course where student.sno=sc.sno and https://www.doczj.com/doc/ad3186780.html,o=https://www.doczj.com/doc/ad3186780.html,o and cname='数据库原理'" (5)查询所有选修了1号课程的同学的姓名" " select sname from student where student.sno in (select sc.sno from sc where cno='1')" 2.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式(20分)供应商表S(SNO,SNAME,STATUS,CITY); 零件表P(PNO,PNAME,COLOR,WEIGHT); 工程项目表J(JNO,JNAME,CITY); 供应情况表SPJ(SNO,PNO,JNO,QTY);SPJ表 J表 S表 P表 请用关系代数完成如下查询: 1.求供应工程J1零件的供应商号 SNO 2.求供应工程J1零件P1的供应商号吗SNO 3.求供应工程J1零件为红色的供应商号码SNO 4.求没有使用天津供应商生产的红色零件的工程号JNO 5.求至少用了供应商S1所供应的全部零件的工程号JNO 1.∏sno(σJNO=‘J1’(SPJ)) 2.∏sno(σJNO=‘J1’ΛPNO=’P1’(SPJ)) 3.∏sno(σJNO=‘J1’(SPJ)∞σcolor=‘红’(P)) 4.∏jno(SPJ)-∏jno(∏sno(σcity=‘天津’(S))∞∏sno,jno (SPJ)∞∏jno σcolor=‘红’(P)) 5.∏jno, pno(SPJ)÷∏pno(σsno=‘s1’(SPJ)) 五、分析题(本大题共2小题,每小题15分本大题共30分) 1. 学生运动会模型: (1)有若干班级,每个班级包括: 班级号,班级名,专业,人数 (2)每个班级有若干运动员,运动员只能属于一个班,包括:运动员号,姓名,性别,年龄

编译原理复习题及答案

编译原理复习题及答案 一、选择题 1.一个正规语言只能对应(B) A 一个正规文法 B 一个最小有限状态自动机 2.文法G[A]:A→εA→aB B→Ab B→a是(A) A 正规文法 B 二型文法 3.下面说法正确的是(A) A 一个SLR(1)文法一定也是LALR(1)文法 B 一个LR(1)文法一定也是LALR(1)文法 4.一个上下文无关文法消除了左递归,提取了左公共因子后是满足LL(1)文法的(A) A 必要条件 B 充分必要条件 5.下面说法正确的是(B) A 一个正规式只能对应一个确定的有限状态自动机 B 一个正规语言可能对应多个正规文法 6.算符优先分析与规范归约相比的优点是(A) A 归约速度快 B 对文法限制少 7.一个LR(1)文法合并同心集后若不是LALR(1)文法(B) A 则可能存在移进/归约冲突 B 则可能存在归约/归约冲突 C 则可能存在移进/归约冲突和归约/归约冲突 8.下面说法正确的是(A) A Lex是一个词法分析器的生成器 B Yacc是一个语法分析器 9.下面说法正确的是(A) A 一个正规文法也一定是二型文法 B 一个二型文法也一定能有一个等价的正规文法 10.编译原理是对(C)。 A、机器语言的执行 B、汇编语言的翻译 C、高级语言的翻译 D、高级语言程序的解释执行 11.(A)是一种典型的解释型语言。

A.BASIC B.C C.FORTRAN D.PASCAL 12.把汇编语言程序翻译成机器可执行的目标程序的工作是由(B)完成的。 A. 编译器 B. 汇编器 C. 解释器 D. 预处理器 13.用高级语言编写的程序经编译后产生的程序叫(B) A.源程序 B.目标程序C.连接程序D.解释程序 14.(C)不是编译程序的组成部分。 A.词法分析程序 B.代码生成程序 C.设备管理程序 D.语法分析程序 15.通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括(C)。 A.模拟执行器B.解释器 C.表格处理和出错处理D.符号执行器16.编译程序绝大多数时间花在(D)上。 A.出错处理B.词法分析C.目标代码生成D.表格管理 17.源程序是句子的集合,(B)可以较好地反映句子的结构。 A. 线性表 B. 树 C. 完全图 D. 堆栈 18.词法分析器的输出结果是(D)。 A、单词自身值 B、单词在符号表中的位置 C、单词的种别编码 D、单词的种别编码和自身值 19.词法分析器不能(D) A. 识别出数值常量 B. 过滤源程序中的注释 C. 扫描源程序并识别记号 D. 发现括号不匹配 20.文法:G:S→xSx | y所识别的语言是(D)。 A、xyx B、(xyx)* C、x*yx* D、x n yx n (n≥0) 21.如果文法G是无二义的,则它的任何句子α(A) A.最左推导和最右推导对应的语法树必定相同 B.最左推导和最右推导对应的语法树可能不同 C.最左推导和最右推导必定相同 D.可能存在两个不同的最左推导,但它们对应的语法树相同 22.正则文法(A)二义性的。 A. 可以是 B. 一定不是 C. 一定是 23.(B)这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。 A. 存在 B. 不存在 C. 无法判定是否存在 24.给定文法A→bA | ca,为该文法句子的是(C) A. bba B. cab C. bca D. cba

编译原理期末考试题目及答案

一、填空题(每空2分,共20分) 1.编译程序首先要识别出源程序中每个单词,然后再分析每个句子并翻译其意义。 2.编译器常用的语法分析方法有自底向上和自顶向下两种。 3.通常把编译过程分为分析前端与综合后端两大阶段。词法、语法和语义分析是对源程序的分析,中间代码生成、代码优化与目标代码的生成则是对源程序的综合。 4.程序设计语言的发展带来了日渐多变的运行时存储管理方案,主要分为两大类,即静态存储分配方案和动态存储分配方案。 5.对编译程序而言,输入数据是源程序,输出结果是目标程序。 1.计算机执行用高级语言编写的程序主要有两种途径:解释和编译。 2.扫描器是词法分析器,它接受输入的源程序,对源程序进行词法分析并识别出一个个单词符号,其输出结果是单词符号,供语法分析器使用。 3.自下而上分析法采用移进、归约、错误处理、接受等四种操作。 4.一个LL(1)分析程序需要用到一张分析表和符号栈。 5.后缀式abc-/所代表的表达式是a/(b-c)。 二、单项选择题(每小题2分,共20分) 1.词法分析器的输出结果是__C。 A.单词的种别编码B.单词在符号表中的位置 C.单词的种别编码和自身值D.单词自身值 2.正规式M 1 和M 2 等价是指__C_。 A.M1和M2的状态数相等 B.M1和M2的有向边条数相等 C.M1和M2所识别的语言集相等D.M1和M2状态数和有向边条数相等 3.文法G:S→xSx|y所识别的语言是_C____。 A.xyx B.(xyx)* C.xnyxn(n≥0) D.x*yx* 4.如果文法G是无二义的,则它的任何句子α_A____。 A.最左推导和最右推导对应的语法树必定相同B.最左推导和最右推导对应的语法树可能不同 C.最左推导和最右推导必定相同D.可能存在两个不同的最左推导,但它们对应的语法树相同5.构造编译程序应掌握____D__。 A.源程序B.目标语言C.编译方法D.以上三项都是 6.四元式之间的联系是通过__B___实现的。 A.指示器B.临时变量C.符号表D.程序变量 7.表达式(┐A∨B)∧(C∨D)的逆波兰表示为__B___。 A.┐AB∨∧CD∨B.A┐B∨CD∨∧ C.AB∨┐CD∨∧D.A┐B∨∧CD∨ 8. 优化可生成__D___的目标代码。 A.运行时间较短 B.占用存储空间较小 C.运行时间短但占用内存空间大D.运行时间短且占用存储空间小 9.下列___C___优化方法不是针对循环优化进行的。 A. 强度削弱B.删除归纳变量C.删除多余运算D.代码外提 10.编译程序使用_B_区别标识符的作用域。 A. 说明标识符的过程或函数名B.说明标识符的过程或函数的静态层次 C.说明标识符的过程或函数的动态层次 D. 标识符的行号 三、判断题(对的打√,错的打×,每小题1分,共10分) 2.一个有限状态自动机中,有且仅有一个唯一的终态。x

编译原理模拟试题六

《编译原理》模拟试题六 一、是非题(请在括号内,正确的划√,错误的划×)(每个2分,共20分) 1.设r和s分别是正规式,则有L(r|s)=L(r)L(s)。(×) 2.确定的自动机以及不确定的自动机都能正确地识别正规集。(√) 3.词法分析作为单独的一遍来处理较好。 (× ) 4.构造LR分析器的任务就是产生LR分析表。 (√) 5.规范归约和规范推导是互逆的两个过程。 (× ) 6.同心集的合并有可能产生新的“移进”/“归约”冲突。 (× ) 7.LR分析技术无法适用二义文法。 (× ) 8.树形表示和四元式不便于优化,而三元式和间接三元式则便于优化。 (×) 9.程序中的表达式语句在语义翻译时不需要回填技术。 (√) 10.对中间代码的优化依赖于具体的计算机。 (× ) 二、选择题(请在前括号内选择最确切的一项作为答案划一个勾,多划按错论)(每个4分,共40分) 1.编译程序绝大多数时间花在_____ 上。 A.( ) 出错处理 B.( ) 词法分析 C.( ) 目标代码生成D.( ) 表格管理 2.编译程序是对_____。 A.( ) 汇编程序的翻译 B.( ) 高级语言程序的解释执行 C.( ) 机器语言的执行D.( ) 高级语言的翻译

3.采用自上而下分析,必须_____。 A.( ) 消除左递归 B.( ) 消除右递归 C.( ) 消除回溯 D.( ) 提取公共左因子 4.在规范归约中,用_____来刻画可归约串。 A.( )直接短语B.( )句柄 C.( )最左素短语D.( )素短语 5.若a为终结符,则A->α ·aβ为_____项目。 A.( )归约B.( ) 移进C.( ) 接受D.( ) 待约 6.间接三元式表示法的优点为_____。 A.( ) 采用间接码表,便于优化处理B.( ) 节省存储空间,不便于表的修改 C.( ) 便于优化处理,节省存储空间 D.( ) 节省存储空间,不便于优化处理 7.基本块内的优化为_____。 A. ( ) 代码外提,删除归纳变量B.( ) 删除多余运算,删除无用赋 值 C.( ) 强度削弱,代码外提 D.( ) 循环展开,循环合并 8. 在目标代码生成阶段,符号表用_____。 A.( ) 目标代码生成B.( ) 语义检查 C.( ) 语法检查D.( ) 地址分配 9.若项目集Ik含有A->α·,则在状态k时,仅当面临的输入符号a∈FOLLOW(A)时,才采取“A->α ·”动作的一定是_____。

期末考试模拟试题2

期末考试模拟试题(二) 一.听句子,选出句子中含有的信息。(10分) ( ) 1. A. Singapore B. Paris C. Toronto ( ) 2. A. the biggest city B. the smallest city C. the hottest city ( ) 3. A. come to tea B. come to a party C. go for a walk ( ) 4. A. had a fever B. had a cold C. have a fever ( ) 5. A. Spring Festival B. Mid-autumn Festival C. Christmas ( ) 6. A. play cards B. play games C. play chess ( ) 7. A. food B. drink C. fruit ( ) 8. A. next Wednesday B. next Thursday C. next Saturday ( ) 9. A. the Monkey King B. the Lion King C. Mickey Mouse ( ) 10. A. go fishing B. play badminton C. go to the circus 二.听句子,写出句子中所缺的词。(5分) 1. Adults usually give to children during Spring festival in China. 2. We are going to the Great the day after . 3. I my house and other housework yesterday. 4. This is the time to be in . 5. What’s the of ? 三.听对话及问题,选出问题的正确答案。(10分) ( ) 1. A English. B. Chinese. C. Maths. ( ) 2. A. At school. B. At home. C. Sorry, I don’t know. ( ) 3. A. A new watch. B. Some flowers. C. A new clock. ( ) 4. A.Go shopping. B. See her friend in hospital. C. Go sightseeing. ( ) 5. A. Guangzhou. B. Beijing. C. Guilin. ( ) 6. A. Yes, she does. B. No, she didn’t. C. Yes, she did. ( ) 7. A. Washed his dog. B. Played football. C. Saw a film on TV. ( ) 8. A. Tuesday, May 3rd. B. Sunday, May 1st. C. Monday, May 2nd. ( ) 9. A. Yes, it is. B. No, it isn’t. C. No, it wasn’t. ( ) 10. A. Go boating. B. Go swimming. C. Go to see a film. 四.听短文,判断对错。对的T,错的F。(5分) ( ) 1. The shops and department stores are quiet. ( ) 2. People are doing their Christmas shopping. ( ) 3. Lots of families have their Christmas trees. ( ) 4. Mr. Brown and his family are getting ready for the Christmas. ( ) 5. They are going to have a big dinner. 五.看图写出所缺的单词或词组。(5分) 1. d 2. F C 3. S F 4. B 5. c 六.找出不同类的单词。(4分) ( ) 1. A. Christmas B. Easter C. Thanksgiving D. festival ( ) 2. A. Saturday B. April C. August D. December ( ) 3. A. important B. popular C. interesting D. present ( ) 4. A. sweet B. merry C. cake D. egg ( ) 5. A. winter B. summer C. season D. spring ( ) 6. A. painted B. had C. have D. was ( ) 7. A. housework B. lesson C. house D. dirty ( ) 8. A. mark B. prepare C. food D. feel

编译原理试题(卷)汇总-编译原理期末试题(卷)(8套含答案解析-大题集)

编译原理考试题及答案汇总 一、选择 1.将编译程序分成若干个“遍”是为了_B__。 A . 提高程序的执行效率 B.使程序的结构更加清晰 C. 利用有限的机器内存并提高机器的执行效率 D.利用有限的机器内存但降低了机器的执行效率 2.正规式 MI 和 M2 等价是指__C__。 A . MI 和 M2 的状态数相等 B.Ml 和 M2 的有向弧条数相等。 C .M1 和 M2 所识别的语言集相等 D. Ml 和 M2 状态数和有向弧条数相等 3.中间代码生成时所依据的是 _C_。 A.语法规则 B.词法规则 C.语义规则 D.等价变换规则 4.后缀式 ab+cd+/可用表达式__B_来表示。 A. a+b/c+d B.(a+b)/(c+d) C. a+b/(c+d) D. a+b+c/d 6.一个编译程序中,不仅包含词法分析,_A____,中间代码生成,代码优化,目标代码生成等五个部分。 A.( ) 语法分析 B.( )文法分析 C.( )语言分析 D.( )解释分析 7.词法分析器用于识别__C___。 A.( ) 字符串 B.( )语句 C.( )单词 D.( )标识符 8.语法分析器则可以发现源程序中的___D__。 A.( ) 语义错误 B.( ) 语法和语义错误 C.( ) 错误并校正 D.( ) 语法错误 9.下面关于解释程序的描述正确的是__B___。 (1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A.( ) (1)(2) B.( ) (1) C.( ) (1)(2)(3) D.( ) (2)(3) 10.解释程序处理语言时 , 大多数采用的是__B___方法。 A.( ) 源程序命令被逐个直接解释执行 B.( ) 先将源程序转化为中间代码 , 再解释执行 C.( ) 先将源程序解释转化为目标程序 , 再执行 D.( ) 以上方法都可以 11.编译过程中 , 语法分析器的任务就是__B___。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A.( ) (2)(3) B.( ) (2)(3)(4)C.( ) (1)(2)(3) D.( ) (1)(2)(3)(4) 12.编译程序是一种___C__。 A. ( ) 汇编程序 B.( ) 翻译程序 C.( ) 解释程序 D.( ) 目标程序 13.文法 G 所描述的语言是_C____的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串 B.( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串 C.( ) 由文法的开始符号推出的所有终极符串 D. ( ) 由文法的开始符号推出的所有符号串 14.文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3 型文法是___B__。 A. ( ) 短语文法 B.( ) 正则文法 C.( ) 上下文有关文法 D.( ) 上下文无关文法15.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 __D___。 A.( ) 句子 B.( ) 句型 C.( ) 单词 D.( ) 产生式 16.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括_C____。

编译原理期末考试习题及答案知识分享

一、填空题|(每题4分,共20分) 1. 乔母斯基定义的3型文法(线性文法)产生式形式 A→Ba|a,或A→aB|a,A,B∈Vn, a,b∈Vt 。 2.语法分析程序的输入是单词符号,其输出是语法单位。 3 型为 B → .aB 的LR(0)项目被称为移进项目,型为 B → a.B 的LR(0) 项目被称为待约项目, 4.在属性文法中文法符号的两种属性分别为继承属性和综合属性。 5、运行时存贮管理方案有静态存储分配、动态存储分配和堆式存储分配和方案。 二.已知文法 G(S) (1) E → T | E+T (2) T → F | F*F (3) F →(E)| i (1)写出句型(T*F+i)的最右推到并画出语法树。(4分) (2)写出上述句型的短语,直接短语和句柄。(4分) 答:(1)最右推到(2分) E ==> T ==> F ==> (E) ==> (E+T) ==> (E+F) ==> (E+i) ==> (T+i) ==> (T*F+i) (2) 语法树(2分) (3)(4分) 短语:(T*F+i),T*F+i ,T*F , i 直接短语:T*F , i 句柄:T*F 三. 证明文法G(S) :S → SaS |ε是二义的。(6分) 答:句子aaa对应的两颗语法树为: 因此,文法是二义文法

四.给定正规文法G(S): (1) S → Sa | Ab |b (2) A → Sa 请构造与之等价的DFA。(6分) 答:对应的NFA为:(6分) 状态转换表: a b {F} Φ{S} {S} {S,A} Φ {S,A} {S,A} {S} 五. 构造识别正规语言b*a(bb*a)*b* 最小的DFA(要求写出求解过程)。(15分)答:(1)对应的NFA(5分) a b {0} {1,3} {0} {1,3} Φ{2,3} {2,3} {1,3} {2,3} (5分) 六. 已知文法G(S) : (1) S → ^ | a | (T) (2) T → T,S | S 试:(1)消除文法的左递归;(4分) (2)构造相应的first 和 follow 集合。(6分) 答:(1)消除文法的左递归后文法 G’(S)为: (1) S → ^ | a | (T) (2) T → ST’ | S (3) T’→ ,ST’ |ε(4分)

一年级语文期末考试模拟试题

一年级语文期末考试模拟试题 一、阅读: 1、大自然的邮票 春天的树上,长出嫩嫩的芽瓣。夏天的树上,挂满肥肥的叶片。秋天的树上,树叶涂满鲜红和金黄。冬天的树下,树叶落地化成土壤。落叶是大自然的邮票,把一年四季寄给你,寄给我,寄给大家。 (1)这一段话共有(); (2)填空 a、一年有、、、四个季节。 b、春天的树上,芽瓣是;夏天的树上,叶片是;秋天的树叶颜色有和;冬天的树下,满地是。 c、大自然的邮票指。 2、人有两件宝 人有两件宝,双手和大脑。双手会做工,大脑会思考。 用手不用脑,事情做不好。用脑不用手,啥也做不好。 用手又用脑,才能有创造。一切创造靠劳动,劳动要用手和脑。 (一)这是一首儿歌,一共有()话。 (二)填空: (1)人有两件宝是指和。做工靠,思考靠。 (2)做事情要用又用。这样才能。 (三)词语搭配: (1)认真地劳动(2)一双手指 辛勤地双手一根手表 勤劳的头脑一只小手 聪明的思考一块手套 3、夏天

初夏,石榴花开了。远看,那红色的花朵像一簇簇火焰。近看,一朵朵石榴花像一个个小喇叭。淡黄色的花蕊在风中摇动,就像一群仙女在翩翩起舞。 1、这段话共有()句。 2、用“ ”划出第2、3两句句子。 3、石榴花在开放。它的花蕊是的, 花朵是的。 4、我喜欢石榴花是因为。 5、石榴花很多,从()、()等词可以看出。 4、斧子 老爷爷微笑着说:“孩子,你很诚实。我要把这两把斧子也送给你吧!”孩子说:“老爷爷,不是我的东西,我不要。”说完,拿着自己的斧子走了。 (1)老爷爷说了()句话,孩子说了()话。 (2)老爷爷送给孩子两把斧子,他有没有要?为什么? () (3)学了本文后,我们也要做个()的孩子。 5、时钟花 小白兔没有钟,不知道时间,它请小山羊帮忙想办法。小山羊送给它三盆花。 太阳出来了,牵牛花开了,张开了小喇叭。中午,午时花开了,张开了笑脸。天黑了,夜来香开了,张开了小嘴请轻地唱歌。 1、这篇短文有()段话。 2、小山羊送给小白兔什么花? -----------、--------------、-------------- 3、()花早晨开,()花中午开,()花晚上开。 6、金鱼 鱼池中的金鱼各种各样,有圆头的,有大眼的,也有尾巴像花朵的。颜色也不少,有金色、黑色、白色,也有白色和金色相间的,很好看。 它们非常活泼,常在水里游,有时互相追逐,有时一起游戏,加上色彩美丽,真令人喜

编译原理考试试题1

编译原理 一、(5×6分)回答下列问题: 1.什么是S-属性文法?什么是L-属性文法?它们之间有什么关系? 2.什么是句柄?什么是素短语? 3.划分程序的基本块时,确定基本块的入口语句的条件是什么? 4.运行时的DISPLAY 表的内容是什么?它的作用是什么? 5.对下列四元式序列生成目标代码: A:=B*C D:=E+F G:=A+D H:=G*2 其中,H 是基本块出口的活跃变量, R0和R1是可用寄存器 二、(8分)设∑={0,1}上的正规集S 由倒数第二个字符为1的所有字符串组成,请给出该字集对应的正规式,并构造一个识别该正规集的DFA 。 三、(6分)写一个文法使其语言为L(G)={ a n b m a m b n | m,n ≥1}。 四、(8分)对于文法G(E): E →T|E+T T →F|T* F F →(E)|i 1. 写出句型(T*F+i)的最右推导并画出语法树。 2. 写出上述句型的短语,直接短语、句柄和素短语。 五、(12分)设文法G(S): ( |*)B B |B A A A |SiA S A →+→→ 1.构造各非终结符的FIRSTVT 和LASTVT 集合; 2.构造优先关系表和优先函数。 六、(9分)设某语言的do-while 语句的语法形式为 S → do S (1) While E 其语义解释为: 真 假 S (1)的代码 E 的代码

针对自下而上的语法分析器,按如下要求构造该语句的翻译模式: (1) 写出适合语法制导翻译的产生式; (2) 写出每个产生式对应的语义动作。 七、(8分)将语句if (A0) then while C>0 do C:=C+D; 翻译成四元式。 八、(10分) 设有基本块如下: T1:=S+R T2:= 3 T3:= 12/T2 T4:=S/R A:=T1-T4 T5:=S+R B:=T5 T6:=T5*T3 B:=T6 (1)画出DAG图; (2)设A,B是出基本块后的活跃变量,请给出优化后的四元式序列。 九、(9分) 设已构造出文法G(S): (1) S → BB (2) B → aB (3) B→ b 的LR分析表如下 ACTION GOTO 状态 a b # S B 0 s3 s4 1 2 1 acc 2 s6 s7 5 3 s3 s 4 8 4 r3 r3 5 r1 6 s6 s 7 9 7 r3 8 r2 r2 9 r2 假定输入串为abab,请给出LR分析过程(即按照步骤给出状态,符号,输入串的变化过程)。

相关主题
文本预览
相关文档 最新文档