预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《编译原理》期中试卷 姓名_______学号__________成绩_______ 一、是非题(下列各题你认为正确的,请在题干的括号内打“√”,错的打“×”。每题2分) l、一个LL(l)文法一定是无二义的。() 2、逆波兰法表示的表达式亦称前缀式。() 3、目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。() 4、正规文法产生的语言都可以用上下文无关文法来描述。() 5、一张转换图只包含有限个状态,其中有一个被认为是初态,最多只有一个终态。() 6、因名字都是用标识符表示的,故名字与标识符没有区别() 7、一个句型的真接短语语是唯一的。() 8、已经说明文法的二义性是可判定的。() 9、每个基本块可用一个DAG表示。() 10、每个过程的活动记录的体积在编译时可静态确定。() 11、并不是每个文法都能改写成LL(1)文法。() 12、如果一个文法存在某个句子对应两棵不同的语法树,则该文法是二义的。() 13、一个上下文无关文法的开始符号可以是终结符或非终结符。() 14、孤立地考虑一个基本块常常不能确定一个赋值是否真是无用的。() 15、含有优化部分的编译程序的执行效率高。() 16、凡是具有某种特殊性质的客体的聚合,都可称为集合。() 17、设有符号串x和y,把y的符号写在x的符号之后所得的符号串,叫做x与y的联结,记为xy。() 18、符号表由词法分析程序建立,由语法分析程序使用。() 19、编译程序中的语法分析器接受以语句为单位的输入,并产生有关信息供以后各阶段使用。() 20、若一个句型中出现了某一产生式的右部,则此右部一定是该句型的句柄。() 二、选择题:(每题2分)1、编译程序是一种常用的_________软件。 a.应用b.系统c.支撑d.自动化 2、在使用高级语言编程时,首先可通过编译程序发现源程序的全部______错误和部分语义错误。 a.语法b.语义c.语用d.运行 3、运算符与运算对象类型不符"属于______。 a.语法错误b.语义错误c.语用错误d.规则 4、PL/0编译程序是用PASCAL语言书写的,整个编译程序(包括主程序)是由______个嵌套及并列的过程或函数组成。 a.18b.16c.19d.20 5、将栈顶的内容送入某变量单元中,应使用______指令。 a.STOb.LODc.LITd.CAL 6、设A、B为任意两个集合,由所有属于集合A或属于集合B的元素组成的集合,叫做集合A与B的_______. a.空集b.全集c.并集d.交集 7、在集合X上的关系R,如果合(x,y)∈R,便必有(y,x)∈R,则称关系R是________。 a.自反的b.对称的c.传递的d.正向的 8、一个语言的文法是_____。 a.惟一的b.不惟一的c.个数有限的 9、巴科斯-诺尔范式(即BNF)是一种广泛采用的_____的工具。 a.描述规则b.描述语言c.描述文法d.描述句子 10、设有文法G[S]:S::=S*S|S+S|(S)|a,该文法_______二义性文法。 a.是b.不是c.无法判断d.可能 11、一个句型的最左直接短语称为该句型的_______。 a.句型b.短语c.简单短语d.句柄 12、在状态转换图中,结点代表____,用圆圈表示。 a.输入缓冲区b.向前搜索c.状态d.字符串 13、编译过程中扫描器的任务包括______。 ①组织源程序的输入 ②按词法规则分割出单词,识别出其属性,并转换成属性字的形式输出 ⑧删除注解 ④删除空格及无用字符 ⑤行计数、列计数 ⑥发现并定位词法错误 ⑦建立符号表 a.②③④⑦b.②③④⑥⑦c.①②③④⑥⑦d.①②③④⑤⑥⑦ 14、下述正则表达式中______与等价(即有相同符号串集)。(x+y亦可写作x|y) a.①③b.③④⑤c.③d.④⑤ 15、正则式的“*”读作______。 a,并且L或者c.连接d.闭包 16、______是编译过程的核心部分 a.语法结构b.语法分析c.源程序d.单词符号 17、已知文法G[E] E->TE' E'->+TE'|ε T->FT' T'->*FT'|ε F一(E)|id FOLLOW(F)=______,FIRST(T')={*,ε} a.{*,+}b.{#,}}c.{+,#,}}d.{*,+,#,}} 18、高级语言编译程序常用的语法分析方法中,递归下降分析法属于_____分析方法。 可选项有; a.自左至右b.自顶向下c.自底向上d.自右向左 19、已知文法G[S]: S->eT|RTT->DR|ε R->dR|εD->a|bd FIRST(S)={a,b,d,e,ε},FIRST(T)={a,b,ε},FIRST(R)={d,ε},FIRST(D)=______, 可选项有; a.{d,ε}b.