|

 ( )是一种典型的解释型语言。
A:BASIC
B:C
C:FORTRAN
D:PASCAL
算符优先分析法每次都是对( )进行归约:
A:句柄
B:最左素短语
C:素短语
D:简单短语
不是编译程序的组成部分。
A:词法分析程序
B:代码生成程序
C:设备管理程序
D:语法分析程序
构造编译程序应掌握( )。
A:源程序
B:目标语言
C:编译方法
D:其他三项都是
Pascal的if语句满足( )。
A:最远匹配原则
B:动态作用域规则
C:静态作用域规则
D:最近匹配原则
语义分析与中间代码产生所依循的是( )。
A:正规式
B:上下文无关文法
C:语言的语义规则
D:有限自动机
上下文无关文法可以用( )来描述。
A:正则表达式
B:正规文法
C:扩展的BNF
D:翻译模式
( )文法不是LL(1)的。
A:递归
B:右递归
C:2型
D:含有公共左因子的
一个文法所描述的语言是()。
A:唯一的
B:不唯一的
C:可能唯一,好可能不唯一
过程信息表不包含( )。
A:过程入口地址
B:过程的静态层次
C:过程名
D:过程参数信息
使用三元式是为了( )。
A:便于代码优化处理
B:避免把临时变量填入符号表
C:节省存储代码的空间
D:提高访问代码的速度
使用( )可以定义一个程序的意义。
A:语义规则
B:词法规则
C:产生规则
D:词法规则
所谓在程序中某个给定点是活跃的,是指如果在程序中,( )。
A:该点以后被引用
B:该点以后被计算
C:该点正在被计算
D:该点一直被计算
算符优先分析法每次都是对________进行归约:
A:句柄
B:最左素短语
C:素短语
D:简单短语
编译程序使用________区别标识符的作用域。
A:说明标识符的过程或函数名;
B:说明标识符的过程或函数的静态层次;
C:说明标识符的过程或函数的动态层次;
D:标识符的行号;
LR(k)文法( )
A:都是无二义性的
B:都是二义性的
C:一部分是二义性的
D:无法判定
在语法分析处理中,FIRST集合.FOLLOW集合均是( )
A:非终结符集
B:终结符集
C:字母表
D:状态集
描述一个语言的文法是( )
A:唯一的
B:不唯一的
C:可能唯一
D:都不正确
词法分析器用于识别( )
A:句子
B:产生式
C:单词
D:句型
文法S→aaS|abc定义的语言是( )。
A:{a2kbc|k>0}
B:{akbc|k>0}
C:{a2k-1bc|k>0}
D:{akakbc|k>0}
有文法G[S]:S→aA|a|bC A→aS|bB B→aC|bA|b C→aB|bS则( )为L(G)中的句子。
A:a100b50ab100
B:a1000b500aba
C:a500b50aab2a
D:a100b40ab10aa
编译程序是对( )。
A:汇编程序的翻译
B:高级语言程序的解释执行
C:机器语言的执行
D:高级语言的翻译
一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组( )
A:句子
B:产生式
C:单词
D:句型
( )不是编译程序的组成部分。
A:词法分析程序
B:代码生成程序
C:设备管理程序
D:语法分析程序
编译程序是一种( )
A:汇编程序
B:翻译程序
C:解释程序
D:目标程序
在运行空间的划分中有一个单独的区域叫堆,用来存放________。
A:目标代码;
B:静态数据;
C:动态数据;
D:过程参数;
有文法G=({S},{a},{S→SaS,S→ε},S),该文法是( )。
A:LL(1)文法;
B:二义性文法;
C:算符优先文法;
D:SLR(1)文法;
两个有穷自动机等价是指它们的( )。
A:状态数相等
B:有向弧数相等
C:所识别的语言相等
D:状态数和有向弧数相等
自上而下分析面临的四个问题中,不包括( )
A:需消除左递归;
B:存在回朔;
C:虚假匹配;
D:寻找可归约串
许多广为使用的语言,如Fortran、C、Pascal等,属于( )。
A:强制式语言
B:应用式语言
C:基于规则的语言
D:面向对象的语言
任何算符优先文法的句型中一定会有两个相邻的非终结符号。( )
A:错误
B:正确
对于每一个左线性文法G1,都存在一个右线性文法G2,使得L(G1)=L(G2)。( )
A:错误
B:正确
若某一个句型中出现了某一产生式的右部,则此右部不一定是该句型的句柄。( )
A:错误
B:正确
算符优先文法的句型中可能会有两个相邻的非终结符号。( )
A:错误
B:正确
设M是一个NFA,并且L(M)={x,y,z},则M的状态数至少为4个。( )
A:错误
B:正确
把循环中的乘法运算用递归加法运算来替换就是一种强度削弱。( )
A:错误
B:正确
任何一种算法,不能判定任何上下文无关文法是否是LL(1)的。( )
A:错误
B:正确
在程序设计语言中,一般来说,布尔表达式仅仅用于条件、循环等控制流语句中的条件表达式计算。( )
A:错误
B:正确
一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。 ( )
A:错误
B:正确
窥孔优化方法是通过考察一小段目标指令,并把这些指令替换为更短和更快的一段指令,从而提高目标代码的质量。( )
A:错误
B:正确
一个文法所有句型的集合形成该文法所能接受的语言。( )
A:错误
B:正确
对于每一个左线性文法G1,不一定存在一个右线性文法G2,使得L(G1)=L(G2)。( )
A:错误
B:正确
中间代码是独立于机器的,复杂性介于源语言和机器语言之间,便于进行与机器无关调换代码优化工作。( )
A:对
B:错
编译前端主要由与源语言和目标机相关的那些部分组成。( )
A:错误
B:正确
复写传播的目的使对某些变量的赋值变为无用。( )
A:对
B:错
通过建立一个变量地址描述数组AVALUE,来动态记录变量在运行过程中值的变化。( )
A:错误
B:正确
一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。 ( )
A:对
B:错
优化的任务在于对前端编译所产生的中间代码进行加工和变换,以其能产生运行结果更为准确的目标代码。( )
A:错误
B:正确
存在一种算法,能判定任何上下文无关文法是否是LL(1)的。 ( )
A:错误
B:正确
正则文法一定不是二义的。( )
A:错误
B:正确
|
|