《编译原理》教学大纲

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《编译原理》教学大纲

大纲说明

课程代码: 3225003

总学时: 64 学时(讲课 48 学时,实验16 学时)

总学分: 4

课程类别:学科基础课

适用专业 : 计算机科学与技术(专业)

预修要求: C 语言程序设计、 C++ 程序设计、数据结构

课程的性质、任务及地位:

《编译原理》是计算机科学与技术专业的一门重要基础课。通过对该课程的学习,使学生掌握编译过程中的相关原理和编译技术,让学生能初步进行编译程序的开发和维护,同时促进提高学生开发软件的能力。

教学目的与基本要求:

本课程的目的,通过向学生讲述编译系统的结构、工作流程及编译程序各部分的设计原理和实现技术,使学生既掌握编译技术理论的基础与基本知识,也具有设计、实现、分析和

维护编译程序等方面的初步能力。本课程理论性较强。因授课对象为工科学生,所以在强调编译系统的构造原理和实现方法的同时,为培养学生的实际工作能力,通过上机实践进一步加深学生对课堂教学内容的理解。目的是要使学生牢固掌握相关的基本理论和基本方法,并能初步利用上述理论和方法解决简单实际问题。

教学方法和教学手段的建议:

在教学方法上,贯彻理论联系实际、“精讲、多练”的原则,进行案例式、启发式的教学,对于一些实际性较强的问题要多采用课堂讨论等方式,以提高学生的思辨能力和学习的主动性;引导学生读书、理解、体悟、运用相结合;提高学生的学习兴趣与热情,培

养与发挥学生的提出、分析及解决问题的能力。

教学手段:运用多媒体教学手段 +黑板 +上机实验的手段。采取课堂讲授、课堂讨论、课后练习与自学等形式。

大纲的使用说明:

大纲对课程性质、目的等作简单说明,同时列出各章节要学习的知识点、重点、

难点,便于教学时教授重点的安排和学生自学安排。

大纲正文

第一章引论学时: 4 学时(讲课 4 学时,实验 0 学时)了解编译的概念;理解编译程序的各组成部分及功能。

本章讲授要点:介绍程序设计语言与编译程序间的关系,主要内容包括:各级程序设计语言的定义、源程序的执行、编译程序的构造、编译程序的分类、形式语言理论与编译实现技术的联系。

重点:程序设计语言的定义,语法图及BNF表示法,编译程序的各阶段功能。

难点:程序执行的方式、编译程序“趟”的概念。

第一节程序设计语言与编译程序的联系

一、源程序、程序设计语言的执行

二、编译程序的两种方式:解释与编译

三、编译程序的定义

第二节编译程序构造及有关概念

四、程序设计语言的四个方面:语法、语义、语用、语境

五、语法的定义:语法图、BNF表示法、口语

六、程序执行的过程

七、编译程序的组成模块:词法分析、语法分析、语义分析、代码优化、目标代码生

八、“趟”的概念

九、编译程序的分类

第三节形式语言与编译实现技术

思考题:

1.编译原理的定义是什么?

2.编译原理由几部分构成?各部分完成哪些工作?

3.在编译过程中“趟”的概念是指什么?

第二章文法与语言学时: 8 学时(讲课 6 学时,实验2 学时)

理解字母表的定义及闭包、符号串的基本知识及其运算、符号串集合概念及运算;文法的形式定义、 Chomsky语言的分类、文法等价及其等价变换方法、语法分析树与句型分

析。掌握

本章讲授要点:字母表的定义及闭包、符号串的基本知识及其运算、符号串集合概念及运算、文法的形式定义、Chomsky语言的分类、文法等价及其等价变换方法、语法分析树与句型分析。

重点: Chomsky 文法的定义、文法和语言之间的关系、规范推导和规范规约、文法的二义性判定;文法的化简。

难点:句型分析、文法的文法的二义性判定、文法等价及其等价变换方法。

第一节符号串与符号串集合

一、字母表的定义、字母表的闭包与正闭包

二、符号串及其运算

第二节文法与语言的形式定义

一、文法的形式定义、重写规则的表示形式

二、文法的定义、应用文法产生语言的句子

三、语言的形式定义

第三节语言的分类

一、 Chomsky语言分类法

二、 Chomsky的文法定义

三、上下文无关的讨论

第四节文法等价与等价变换

一、文法等价

二、压缩文法等价变换

三、消去单规则等价变换

四、消去左规则等价变换

第五节语法分析树与句型分析

一、语法分析树

二、句型分析

思考题:

1.弄清字母表、字符串集合、字符串闭包及正闭包的定义。

2.弄清文法、重写规则与语言之间的关系。

3. Chomsky语言类有几类?各有什么特点?

4.什么是无用规则,如何消除?

5.弄清在推导语法树中,弄清句型、短语、简单短语、句柄以及句子的概念。

第三章词法分析学时: 14 学时(讲课10 学时,实验 4 学时)了解词法分析的目标和实现方法、词法分析器的目标是识别源程序中的各个单词。理解确定有限自动机的组成和非确定有限自动机的组成。掌握状态转换图、状态转换图与正则文

法的相互转换、确定有限自动机和非确定有限自动机、NFA转 DFA、 DFA的最小化、正则表达式与正则集、正规式转DNF。

本章讲授要点:词法分析器的目标是识别源程序中的各个单词。词法分析可以通过确定

有限自动机来完成。:状态转换图、状态转换图与正则文法的相互转换、确定有限自动机和

非确定有限自动机、 NFA转 DFA、 DFA的最小化、正则表达式与正则集。词法分析程序的实现与编写,以及词法扫描程序的算法。

重点:状态转换图、正则文法与状态转换图的互换、NFA转 DFA、DFA的最小化。正则表达式与状态转换图。

难点: NFA转 DFA、 DFA的化简、正则文法与正则表达式。

第一节引言

一、词法分析的任务、词法分析程序

二、符号的识别与重写规则的关系

三、词法分析的实现方式

第二节正则表达式与有穷状态自动机

一、状态转换图、状态转换系统

二、确定有穷状态自动机DFA

三、非确定有穷状态自动机NFA

四、 DFA 的化简

五、正则表达式

相关文档
最新文档