编译原理
编译原理
1000+ 人选课
更新日期:2025/02/19
开课时间2024/08/31 - 2025/01/21
课程周期21 周
开课状态已结课
每周学时-
课程简介

编译原理是高等工科院校面向计算机相关专业大三学生开设的专业核心必修课。所含内容既有便于抽象的问题,也有较成熟的理论,涉及学科抽象、理论、设计三个形态。课程使用形式化的巴科斯范式描述程序设计语言,涉及的概念多,算法抽象,不易理解;同时,本课程注重计算思维的培养,强调理论指导下的工程实践。

通过学习该课程,使学生了解形式语言基本概念和术语,掌握词法分析、语法分析和语义分析与中间代码生成技术的基本原理和实现方法。通过将“抽象、自动化、形式化、转化、约简、递归、嵌入、分解、仿真和容错”等计算思维与“形式语言基本理论、词法分析、语法分析、和语义分析与中间代码生成”等内容进行对应,帮助学生更好地从计算思维的角度去理解和分析编译的理论和技术。

通过学习编译程序的构造原理和技术,不仅有助于深刻理解和正确使用程序设计语言,更可以培养计算机学科乃至其他学科解决问题的思维和方法(即如何形式化地描述问题,以及如何通过演绎和归纳来设计解决方案)。这些思维和方法对于应用软件、系统软件以及人工智能的设计与开发具有重要的启示意义,为从事计算机相关行业打下基本的理论和工程实践基础。

课程大纲
第一章 引论
1.1 计算思维与编译技术的发展
1.2 程序设计语言的发展历程
1.3 程序设计语言的翻译机制
1.4 编译程序的基本组成
1.5 编译程序的构造方法
1.6 编译技术的应用
第二章 形式语言基本知识
2.1 引言
2.2 字母表和符号串的基本概念
2.3 用文法产生法描述语言
2.4 文法和语言的分类
2.5 文法的其他表示方法
2.6 文法实用性限制说明
第三章 词法分析
3.1 词法分析概述
3.2正规文法与状态转换图
3.2.1 由左线性文法构造状态转换图
3.2.2 由右线性文法构造状态转换图
3.2.3 左右线性文法的等价转换
3.3 有穷自动机
3.3.1确定的有穷自动机
3.3.2非确定的有穷自动机
3.3.3将非确定的有穷自动机转为确定的有穷自动机
3.4 正规表达式
3.4.1正规表达式的定义
3.4.2正规表达式的性质及其构造
3.4.3 由正规表达式构造转换系统
3.4.4 将转换系统变为确定的有穷自动机
第四章 语法分析
4.1 语法分析基本概念
4.2 自顶向下语法分析概述
4.3 路标法的基本操作
4.4 递归下降分析法
4.5 LL(1)分析法
4.6 简单优先分析法
4.7算符优先分析法
4.8 LR分析法
第五章 语法制导翻译
5.1 语法制导翻译概述
5.2 中间语言
5.3 自底向上的语法制导翻译