2022-4-28 第一章练习题(绪论) 一、选择题 1.编译程序是一种常用的 软件。 A) 应用 B) 系统 C) 实时系统 D) 分布式系统 2.编译程序生成的目标代码程序 是可执行程序。 A) 一定 B) 不一定 3.编译程序的大多数时间是花在 上。 A) 词法分析 B) 语法分析 C) 出错处理 D) 表格管理 4.将编译程序分成若干“遍”将 。 A) 提高编译程序的执行效率; B) 使编译程序的结构更加清晰,提高目标程序质量; C) 充分利用内存空间,提高机器的执行效率。 5.编译程序各个阶段都涉及到的工作有 。 A) 词法分析 B) 语法分析 C) 语义分析 D) 表格管理 6.词法分析的主要功能是 。 A) 识别字符串 B) 识别语句 C) 识别单词 D) 识别标识符 7.若某程序设计语言允许标识符先使用后说明,则其编译程序就必须 。 A) 多遍扫描 B) 一遍扫描 8.编译方式与解释方式的根本区别在于 。 A) 执行速度的快慢 B) 是否生成目标代码 C) 是否语义分析 2022-4-28 9.多遍编译与一遍编译的主要区别在于 。 A) 多遍编译是编译的五大部分重复多遍执行,而一遍编译是五大部分只执行一遍; B) 一遍编译是对源程序分析一遍就立即执行,而多遍编译是对源程序重复多遍分析再执行; C) 多遍编译要生成目标代码才执行,而一遍编译不生成目标代码直接分析执行; D) 多遍编译是五大部分依次独立完成,一遍编译是五大部分交叉调用执行完成。 10.编译程序分成“前端”和“后端”的好处是 A)便于移植 B)便于功能的扩充 C)便于减少工作量 D)以上均正确 2022-4-28 第二章练习题(文法与语言) 一、选择题 1. 文法 G 产生的 (1) 的全体是该文法描述的语言。 A.句型 B. 终结符集 C. 非终结符集 D. 句子 2.若文法 G 定义的语言是无限集,则文法必然是 (2) A 递归的 B 上下文无关的 C 二义性的 D 无二义性的 3. Chomsky 定义的四种形式语言文法中, 0 型文法又称为 (A) 文法; 1 型文法又称为 (C) 文法; 2 型语言可由 (G) 识别。 A 短语结构文法 B 上下文无关文法 C 上下文有关文法 D 正规文法 E 图灵机 F 有限自动机 G 下推自动机 4.一个文法所描述的语言是 (A) ;描述一个语言的文法是 (B) 。 A 唯一的 B 不唯一的 C 可能唯一,也可能不唯一 二、构造文法以生成下列语言: 1.{an bn︱n≥0} G=({S},{a,b}, S, P),其中...