西安交通大学《编译原理》期末考试必备题集

奥鹏期末考核

4829–西安交通大学《编译原理》奥鹏期末考试题库合集

单选题:
(1)Chomsky把文法分成四种类型,其中,( )也称正规文法
A.0型
B.1型
C.2型
D.3型
答案问询微信:424329

(2)静态分配允许程序出现( )。
A.递归过程
B.可变体积的数据项目
C.静态变量
D.待定性质的名字
答案问询微信:424329

(3)最适合动态建立数据实体的内存分配方式是()
A.栈式分配
B.堆式分配
C.编译时预先分配
D.其他三种均可
答案问询微信:424329

(4)现代多数实用编译程序所产生的目标代码都是一种可重定位的指令代码,在运行前必须借助于一个( )把各个目标模块,包括系统提供的库模块连接在一起,确定程序变量或常数在主存中的位置,装入内存中制定的起始地址,使之成为一个可运行的绝对指令代码的程序。
A.重定位程序;
B.解释程序;
C.连接装配程序;
D.诊断程序;
答案问询微信:424329

(5)一个文法所描述的语言是()。
A.唯一的
B.不唯一的
C.可能唯一,好可能不唯一
答案问询微信:424329

(6)词法分析器的输入是( )。
A.单词符号串
B.源程序
C.语法单位
D.目标程序
答案问询微信:424329

(7)编译程序使用_______区别标识符的作用域。
A.说明标识符的过程或函数名;
B.说明标识符的过程或函数的静态层次;
C.说明标识符的过程或函数的动态层次;
D.标识符的行号;
答案问询微信:424329

(8)在LR(0)的ACTION子表中,如果某一行中存在标记“rj”的栏,则( )。
A.该行必定填满rj
B.该行未填满rj
C.其他行也有rj
D.goto子表中也有rj
答案问询微信:424329

(9)下列关于标识符和名字叙述中,正确的是( )。
A.标识符有一定的含义
B.名字是一个没有意义的字符序列
C.名字有确切的属性
D.都不正确
答案问询微信:424329

(10)布尔表达式计算时可以采用某种优化措施,比如A and B用if-then-else可解释为( )。
A.if A then true else B;
B.if A then B else false;
C.if A then false else true;
D.if A then true else false;
答案问询微信:424329

(11)若文法G定义的语言是无限集,则文法必然是()
A.前后文无关文法
B.正规文法
C.二义性文法
D.递归文法
答案问询微信:424329

(12)为了便于优化处理,三地址代码可以表示成( )。
A.三元式
B.四元式
C.后缀式
D.间接三元式
答案问询微信:424329

(13)( )的任务是把中间代码(或经过优化处理之后)变换成特定机器上的低级语言代码。
A.词法分析
B.语法分析
C.优化
D.目标代码生成
答案问询微信:424329

(14)识别上下文无关语言的自动机是( )
A.下推自动机
B.NFA
C.DFA
D.图灵机
答案问询微信:424329

(15)程序基本块是指( )。
A.一个子程序
B.一个仅有一个入口和一个出口的语句
C.一个没有嵌套的程序段
D.一组顺序执行的程序段,仅有一个入口和一个出口
答案问询微信:424329

(16)下推自动机识别的语言是( )
A.0型语言
B.1型语言
C.2型语言
D.3型语言
答案问询微信:424329

(17)( )语言具有这样的特点:没有分程序结构;过程定义不允许嵌套;允许过程嵌套定义。
A.Fortran
B.Pascal
C.C
D.都不
答案问询微信:424329

(18)词法分析器的输出结果是( )。
A.单词自身值
B.单词在符号表中的位置
C.单词的种别编码
D.单词的种别编码和自身值
答案问询微信:424329

(19)已知文法G[S]:S→A1,A→A1|S0|0。与G等价的正规式是( )
A.0(0|1)*
B.1*|0*1
C.0(1|10)*1
D.1(10|01)*0
答案问询微信:424329

(20)在自底向上的语法分析方法中,分析的关键是( )
A.寻找句柄
B.寻找句型
C.消除递归
D.选择候选式
答案问询微信:424329

(21)( )是描述语言的语法结构的形式规则。
A.文法
B.语义
C.词法
D.语法
答案问询微信:424329

(22)通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括( )。
A.模拟执行器
B.解释器
C.表格处理和出错处理
D.符号执行器
答案问询微信:424329

(23)不是编译程序的组成部分。
A.词法分析程序
B.代码生成程序
C.设备管理程序
D.语法分析程序
答案问询微信:424329

(24)使用三元式是为了________:
A.便于代码优化处理
B.避免把临时变量填入符号表
C.节省存储代码的空间
D.提高访问代码的速度
答案问询微信:424329

(25)两个有穷自动机等价是指它们的( )。
A.状态数相等
B.有向弧数相等
C.所识别的语言相等
D.状态数和有向弧数相等
答案问询微信:424329

(26)一个文法所描述的语言是( )
A.唯一的
B.不唯一的
C.可能唯一
D.都不正确
答案问询微信:424329

(27)编译原理各阶段工作都涉及( )
A.词法分析
B.表格管理
C.语法分析
D.语义分析
答案问询微信:424329

(28)对应于产生式A→XY继承属性Y.y的属性计算,可能正确的语义规则是________。
A.A.a:=f(X.x,Y.y);
B.Y.y:=f(A.a,Y.y);
C.Y.y:=f(X.x);
D.A.a:=f(Y.y);
答案问询微信:424329

(29)在编译过程中,符号表的主要作用是( )。
A.帮助错误处理
B.辅助语法错误的检查
C.辅助语义的正确性检查
D.辅助代码生成
答案问询微信:424329

(30)简单优先分析每次归约的是( )
A.最左直接短语
B.直接短语
C.最左素短语
D.控制结点
答案问询微信:424329

(31)( )不可能是目标代码。
A.汇编指令代码
B.可重定位指令代码
C.绝对指令代码
D.中间代码
答案问询微信:424329

(32)语法分析器接收以________为单位的输入,并产生有关信息供以后各阶段使用。
A.表达式;
B.产生式;
C.单词;
D.语句;
答案问询微信:424329

(33)( )这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。
A.存在
B.不存在
C.无法判定是否存在
D.其他都不正确
答案问询微信:424329

(34)按逻辑上划分,编译程序第三步工作是( )
A.语义分析
B.词法分析
C.语法分析
D.代码生成
答案问询微信:424329

(35)( )文法不是LL(1)的。
A.递归
B.右递归
C.2型
D.含有公共左因子的
答案问询微信:424329

(36)在整个编译期间,对符号表的操作大致都有( )。
A.查询给定名字
B.填入新名字
C.访问给定名字的信息
D.更新给定名字的信息
答案问询微信:424329

(37)代码生成阶段的主要任务是()
A.把高级语言翻译成汇奥鹏期末考核编语言
B.把高级语言翻译成机器语言
C.把中间代码变换成依赖具体机器的目标代码
D.把汇编语言翻译成机器语言
答案问询微信:424329

(38)设有文法G[S]:S→S1|S0|Sa|Sc|a|b|c,下列符号串中是该文法的句子有( )
A.ab0
B.a0c01
C.a0b0a
D.bc10
答案问询微信:424329

(39)数组的内情向量中肯定不含数组的( )信息
A.维数
B.类型
C.各维的上下界
D.各维的界差
答案问询微信:424329

(40)编译程序是一种( )
A.汇编程序
B.翻译程序
C.解释程序
D.目标程序
答案问询微信:424329

(41)与(a|b)*(a|b)等价的正规式是( )。
A.a*|b*
B.(ab)*(a|b)
C.(a|b)(a|b)*
D.(a|b)*
答案问询微信:424329

(42)代多数实用编译程序所产生的目标代码都是一种可重定位的指令代码,在运行前必须借助于一个( )把各个目标模块,包括系统提供的库模块连接在一起,确定程序变量或常数在主存中的位置,装入内存中制定的起始地址,使之成为一个可运行的绝对指令代码的程序。
A.重定位程序
B.解释程序
C.连接装配程序
D.诊断程序
答案问询微信:424329

(43)语言是()的集合
A.句子
B.产生式
C.符号串
D.句型
答案问询微信:424329

(44)LR(1)文法都是( )
A.无二义性且无左递归
B.可能有二义性但无左递归
C.无二义性但可能是左递归
D.可以既有二义性又有左递归
答案问询微信:424329

(45)编译过程中,语法分析器的任务是( )① 分析单词的构成② 分析单词串如何构成语句③ 分析语句是如何构成程序④ 分析程序的结构
A.②③
B.④
C.①②③④
D.②③④
答案问询微信:424329

(46)所谓在程序中某个给定点是活跃的,是指如果在程序中,( )。
A.该点以后被引用
B.该点以后被计算
C.该点正在被计算
D.该点一直被计算
答案问询微信:424329

(47)语法分析器接收以( )为单位的输入,并产生有关信息供以后各阶段使用。
A.表达式
B.产生式
C.单词
D.语句
答案问询微信:424329

(48)许多广为使用的语言,如Fortran、C、Pascal等,属于( )。
A.强制式语言
B.应用式语言
C.基于规则的语言
D.面向对象的语言
答案问询微信:424329

(49)一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组( )
A.句子
B.产生式
C.单词
D.句型
答案问询微信:424329

(50)使用( )可以定义一个程序的意义。
A.语义规则
B.词法规则
C.产生规则
D.词法规则
答案问询微信:424329

(51)在一棵语法树中的结点的继承属性和综合属性之间的相互依赖关系可以由( )来描述。
A.抽象语法树
B.语法规则
C.依赖图
D.三地址代码
答案问询微信:424329

(52)过程信息表不包含( )。
A.过程入口地址
B.过程的静态层次
C.过程名
D.过程参数信息
答案问询微信:424329

(53)程序所需的数据空间在程序运行前可确定,称为( )管理技术。
A.动态存储
B.栈式存储
C.静态存储
D.堆式存储
答案问询微信:424329

(54)在LR分析法中,分析栈中存放的状态是识别规范句型( )的DFA状态。
A.句柄
B.前缀
C.活前缀
D.LR(0)项目
答案问询微信:424329

(55)一个数据类型通常包括三种要素,下面( )不是:
A.用于区别这种类型的数据对象的属性
B.这种类型的数据对象可以具有的值
C.对这种类型的数据对象的内存分配
D.可以作用于这种类型的数据对象的操作
答案问询微信:424329

(56)程序语言的单词符号一般可以分为5种,下面( )不需要超前搜索。
A.关键字
B.标识符
C.常数
D.算符和界符
答案问询微信:424329

(57)从左线性文法构造有限自动机时,通常自动机状态个数比文法非终结符号数多( )
A.4
B.2
C.0
D.1
答案问询微信:424329

(58)语法分析器接收以( )为单位的输入,并产生有关信息供以后各阶段使用。
A.表达式
B.产生式
C.单词
D.语句;
答案问询微信:424329

(59)LR语法分析栈中存放的状态是识别( )的DFA状态。
A.前缀
B.可归前缀
C.项目
D.句柄;
答案问询微信:424329

(60)算符优先分析法每次都是对( )进行归约:
A.句柄
B.最左素短语
C.素短语
D.简单短语
答案问询微信:424329

(61)文法开始符号的所有( )作为属性计算前的初始值。
A.综合属性
B.继承属性
C.继承属性和综合属性
D.都不是
答案问询微信:424329

(62)编译程序使用( )区别标识符的作用域。
A.说明标识符的过程或函数名
B.说明标识符的过程或函数的静态层次
C.说明标识符的过程或函数的动态层次
D.标识符的行号
答案问询微信:424329

(63)表达式作为实在参数可以传递给被调用的过程,替换过程体中的( )。
A.局部变量
B.形式参数
C.全局变量
D.实在参数
答案问询微信:424329

(64)以绝对机器代码为输出,所有地址均已定位,这种代码的优点是( )。
A.可立即执行
B.可进一步优化
C.目标代码简短
D.目标代码执行效率高
答案问询微信:424329

(65)评价一个代码生成器最重要的指标是( )。
A.代码的正确性
B.代码的高效性
C.代码的简洁性
D.代码的维护性
答案问询微信:424329

多选题:
(1)常用的中间代码表示形式有( )。
A.三元式
B.四元式
C.间接三元式
D.逆波兰记号
答案问询微信:424329

(2)程序设计工具包括( )。
A.编译程序
B.编辑程序
C.连接程序
D.调试工具
答案问询微信:424329

(3)编译器中常用的文法分析有( )。
A.自上而下分析算法
B.自下而上分析算法
C.Earley算法
D.Cocke-Younger-Kassimi算法
答案问询微信:424329

判断题:
(1)在编译过程中,既可以将几个不同的阶段合为一遍,也可以把一个阶段的工作分为若干遍。( )
答案问询微信:424329

(2)只含有继承属性的属性文法称为-L属性文法。( )
答案问询微信:424329

(3)语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。( )
答案问询微信:424329

(4)非终结符只有综合属性,由词法分析器提供。( )
答案问询微信:424329

(5)任何LL(1)文法都是无二义性的。( )
答案问询微信:424329

(6)在不含嵌套过程的词法作用域中,若一个过程中有对名字a的非局部引用,则a必须在任何过程(或函数)外被说明。( )
答案问询微信:424329

(7)正则文法一定不是二义的。( )
答案问询微信:424329

(8)对任何一个NFAM,不一定存在一个DFAM',使得L(M')=L(M)。( )
答案问询微信:424329

(9)对一个右线性文法G,必存在一个左线性文法G',使得L(G)=L(G'),反之亦然。( )
答案问询微信:424329

(10)上下文无关文法比正规文法有更差的描述能力。( )
答案问询微信:424329

(11)上下文无关文法比正规文法有更强的描述能力。( )
答案问询微信:424329

(12)二义文法是上下文无关文法。( )
答案问询微信:424329

(13)对任意一个右线性文法G,都存在一个NFAM,满足L(G)=L(M)。( )
答案问询微信:424329

(14)只含有综合属性的属性文法是S-属性文法。( )
答案问询微信:424329

(15)确定的自动机以及不确定的自动机都能正确地识别正规集。( )
答案问询微信:424329

(16)任何算符优先文法的句型中不会有两个相邻的非终结符号。( )
答案问询微信:424329

(17)不确定的自动机不能正确地识别正规集。( )
答案问询微信:424329

(18)数组元素的地址计算与数组的存储方式有关。
答案问询微信:424329

(19)变量既持有左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。( )
答案问询微信:424329

(20)对于每一个左线性文法G1,不一定存在一个右线性文法G2,使得L(G1)=L(G2)。( )
答案问询微信:424329

(21)在允许嵌套的词法作用域的语言中,过程不能作为参数,原因时不能建立其运行环境的存取链。( )
答案问询微信:424329

(22)正规文法产生的语言都不可以用上下文无关文法来描述。( )
答案问询微信:424329

(23)算符优先分析法是一种规范规约法。( )
答案问询微信:424329

(24)仅考虑一个基本块,不能确定一个赋值是否真是无用的。
答案问询微信:424329

(25)NFAM的非确定性表现在它有多个终态。( )
答案问询微信:424329

(26)LR分析器在自左至右扫描输入串时就能发现其中的任何错误,并能准确地指出出错地点。( )
答案问询微信:424329

(27)任何算符优先文法的句型中一定会有两个相邻的非终结符号。( )
答案问询微信:424329

(28)每个文法都能改写为LL(1)文法。
答案问询微信:424329

(29)NFA M的非确定性表现在它有多个终态。( )
答案问询微信:424329

(30)有穷自动机接受的语言是正则语言。( )
答案问询微信:424329

(31)存在一种算法,能判定任何上下文无关文法是否是LL(1)的。 ( )
答案问询微信:424329

(32)S—属性文法一定是L—属性文法。( )
答案问询微信:424329

(33)中间代码是独立于机器的,复杂性介于源语言和机器语言之间,便于进行与机器无关调换代码优化工作。( )
答案问询微信:424329

(34)在程序设计语言中,一般来说,布尔表达式仅仅用于条件、循环等控制流语句中的条件表达式计算。( )
答案问询微信:424329

(35)对于允许递归调用的程序语言,程序运行时的存储分配策略不能采用静态的存储分配策略。( )
答案问询微信:424329

(36)复写传播的目的使对某些变量的赋值变为无用。( )
答案问询微信:424329

论述题:
(1)   。
答案问询微信:424329

简答题:
(1)何谓二义性文法?试举一例说明。
答案问询微信:424329

(2)编译中所说的 遍 是什么?
答案问询微信:424329

(3)何谓语法分析
答案问询微信:424329

(4)何谓算符文法?
答案问询微信:424329

(5)过程调用时,主调程序与被调程序之间的信息传递有哪些方式?
答案问询微信:424329

提供优质的教育资源

公众号: 超前自学网