编译原理复习 下载本文

内容发布更新时间 : 2024/5/29 14:55:15星期一 下面是文章的全部内容请认真阅读。

编译技术命题指导意见 教学内容 A 知识点及题型 (1)编译的阶段划分 [选择题 2分] [1] 编译程序绝大多数时间花在( )上。 A. 出错处理 B. 词法分析 C. 目标代码生成 D. 符号表管理 答案:D [2] ( ) 和代码优化部分不是每个编译程序都必需的。 A. 语法分析 B. 中间代码生成 C. 词法分析 D. 代码生成 答案:B [3] 编译程序前三个阶段完成的工作是( )。 A. 词法分析、语法分析和代码优化 B. 代码生成、代码优化和词法分析 C. 词法分析、语法分析和语义分析 D. 词法分析、语法分析和代码生成 答案:C (2)遍的概念 [填空题 2分] [1] 编译阶段的活动常用一遍扫描来实现,一遍扫描包括 和 。 答案:读一个输入文件 写一个输出文件 [2] 将编译程序分成若干个“遍”是为了________。 第一章 编译器概述

答案:使程序的结构更加清晰 [3] 编译器从逻辑上可以分为7个阶段,其中,可以作为一个后端遍的是___________阶段。 答案:代码生成 (3)前端和后端的划分 [简答题 5分] [1] 什么是前端? [5分] 答案:编译器分成分析和综合两大部分。分析部分揭示源程序的基本元素和它们所形成的层次结构,决定它们的含义,建立起源程序的中间表示,分析部分经常被称为前端。 [2] 什么是后端? [5分] 答案:编译器分成分析和综合两大部分。综合部分从源程序的中间表示建立起和源程序等价的目标程序,它经常被称为后端。 [3] 什么是前端?什么是后端? [5分] 答案:编译器分成分析和综合两大部分。分析部分揭示源程序的基本元素和它们所形成的层次结构,决定它们的含义,建立起源程序的中间表示,分析部分经常被称为前端。综合部分从源程序的中间表示建立起和源程序等价的目标程序,它经常被称为后端。 B (1)词法分析器的功能 [选择题 2分] [1] 词法分析程序的输出结果是( )。 A. 单词的种别编码 B. 单词在符号表中的位置 C. 单词的种别编码和单词属性值 D. 单词的单词属性值 答案:C [2] 词法分析器用于识别_____。 A. 字符串 B.语句 第二章2.1 2.2 词法记号的定义及描述

C.单词 D.标识符 答案:C [3] 扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位即( )。 A. 字符 B.单词 C.句子 D.句型 答案:B (2)词法记号概念及属性 [填空题2分] [1] 词法记号是由 和 构成的二元组。 答案:记号名 属性值 [2] 词法单元是源程序中匹配一个 的字符序列。 答案:记号模式 [3] 影响语法分析的决策, 影响记号的翻译。 答案:记号名 属性 (3)正规式与语言的对应关系 [选择题 2分] [1] 下面文法( )和正规表达式a*b描述的语言相同。 A. S→ab | aSb B. S→b | aS C. S→a | aSb D. S→a | Sb 答案:B [2] 最多包含两个a的{a,b}上的语言( )。 A. (a|ε)b*(a|ε) B. b*ab*ab*|b*ab*