编译原理试题 帮忙答一下

选择题(50分,每空2分, 无特别说明的均为单选题)
1,在使用高级语言编程时,首先可通过编译程序发现源程序的全部 错误.
a. 语法 b. 语义 c. 语用 d. 运行
2, 要在某台机器上为某种语言构造编译程序,必须掌握下述那些内容____.
a. 汇编语言 b. 高级语言 c. 源语言 d. 目标语言
程序设计方法学 f. 机器语言 g. 编译方法
①abf ②afg ③cdg ④ efg
3,用高级语言书写的源程序 都 必须通过编译,产生目标代码后才能投入运行.这种说法_____.
a. 正确 b. 不正确 c. 不一定 d. 都不对
4,文法G所描述的语言是_____的集合.
a. 文法G的字汇表V中所有符号组成的符号串
b. 文法G的字汇表V的闭包V*中的所有符号串
c. 由文法的识别符号推出的所有符号串
d. 由文法的识别符号推出的所有终结符号串
5,给定文法, A::= bA | cc, 下面哪些符号串可由其推导出_____.
① cc ② b*cc ③ b*cbcc ④ bccbcc ⑤ bbbcc
可选项有:
a.① b.①③④⑤ c.①⑤ d.①②⑤ e.①②③④⑤

6,一个语言的文法是_____.
a.有限的 b.不唯一的 c.唯一的
7,若一个文法是递归的,则它所产生语言的句子个数______.
a.必定是无穷的 b.是有限个的 c.根据具体情况而定
8,语法分析常用的方法是_____.
① 自顶向下 ② 自底向上 ③ 自左向右 ④ 自右向左
可选项有:
a.①②③④ b.①② c.③④ d.①②③
9,LR(k)方法是______.
a. 从左到右分析,每次走k步的一种编译方法.
b. 从左到右分析,共经过k步的一种编译方法.
c. 从左到右分析,每次向前预测k步的一种编译方法.
d. 从左到右分析,是否归约句柄要向后看k个输入符号的一种编译方法.
10(选2个),在编译过程中,符号表的主要作用是_____.
a. 帮助错误处理 b. 辅助语法错误的检查 c. 辅助语义的正确性检查
d. 辅助代码生成 e. 辅助对目标程序的优化

11,LL(1)文法的条件是______.
a. 对形如U::=x1 | x2 | … | xn 的规则,要求First(xi)∩ First(xj)=Φ,(i≠j);
b. 对形如 U::=x1 | x2 | … | xn 的规则,若xi=>*ε, 则要求First(xj)∩ Follow(U)=Φ,(i≠j)
c. a 和 b
d. 都不是
12,LR(k)文法_______二义性的.
a.都是 b.都不是 c.不一定都是
13,描述语言 L= { ambn | n≥m≥1 } 的文法为_____.
a. Z::=Abb A::=aA | a B::=bB | b
b. Z::=AB | b A::=Aa | a B::=aBb | b
c. Z::=Ab A::=aAb | a
d. Z::=aAb A::=Ab | aAb | ε
14,一个句型中的可归前缀为______.
a.短语 b.简单短语 c.句柄
d.规范前缀,且句柄位于该规范前缀的后端
15,Chmosky的3型语言是这样一种语言,其产生式限制为____.
a.A::= π b. A::=a A::=aB
c.α::=β d. αAβ::=απβ
16,高级语言编译程序常用的语法分析方法中,LL分析法属于______分析方法.
a.自左至右 b.自顶向下 c.自底向上 d.自右至左
LL(1) 分析法的名字中,第一个"L"的含义是_____,第二个"L"的含义是______.
a.自左至右 b.自顶向下 c.自底向上 d.自右至左
设有文法G[S]: S-> S*S | S+S | (S) | a, 该文法_____二义性文法.
a. 是 b. 不是 c. 不一定
19,动态存储分配时,可以采用的分配方法有 ______.
(1) 过程为单位的栈式动态存储分配
堆存储分配
最佳分配方法
a. (1) b. (2) c. (2)(3) d. (1)(2)(3)
20. 过程调用时,参数的传递方法通常有________.
(1) 传值 (2) 传地址 (3) 传结果 (4) 传名
a. (1)(2) b.(1)(2)(3) c. (1)(2)(4) d. (1)(2)(3)(4)
21. 在编译方法中, 动态存储分配的含义是什么 可选项有____.
a.在运行阶段对源程序中的量进行分配
b.在编译阶段对源程序中的量进行分配
c.在编译阶段对源程序中的量进行分配,在运行时这些量的地址可以根据需要改变
d.以上都不正确

第1个回答  2007-04-18
你太会投机取巧了,建议你去考试网上学习一下
相似回答