国防科技大学公开课:编译原理(国家级精品课)(王挺)

国防科技大学公开课:编译原理(国家级精品课)(王挺)

  • 课程编号:413
  • 课程共 50 集  分辨率:超清  
  • 课程格式:MP4  大小:6.02 G
  • 最近更新:2023年03月23日

国防科技大学慕课下载:编译原理(国家级精品课)

类型:公开课

主讲人: 王挺,男,1970年生,教授,博士生导师。1997 年毕业于国防科技大学,获计算机软件博士学位。1997年至今在国防科技大学从事计算机软件的教学和科研工作。主讲编译原理、人工智能、程序设计、自然语言处理等多门本科和研究生课程,是国家精品课程、国家精品资源共享课程、国家级一流课程(线上)“编译原理”负责人,获得国家级教学成果二等奖1次,学校本科教学个人一等奖1次。科研方面,主要从事自然语言处理、计算机软件和网络信息处理等方向的研究。近年来主持了国家自然科学基金、国家重点研发计划课题5项。在Journal of Web Semantics、Knowledge and Information Systems、IJCAI、AAAI和SIGIR等国内外重要期刊和会议上发表论文 80余篇,获省部级科技进步二等奖和三等奖各1次。参与编写(翻译)教材4部。2006年入选教育部“新世纪优秀人才支持计划”,2020年入选“高校计算机专业优秀教师奖励计划”。

学院介绍: 中国人民解放军国防科技大学(National University of Defense Technology),简称国防科技大学,位于湖南省长沙市,是直属中国共产党中央军事委员会领导的军队综合性大学,也一直是国家和军队重点建设的院校。是第一个五年计划国家156项重点建设工程之一,是中共中央1959年确定的全国20所重点大学之一,是国务院首批批准有权授予硕士、博士学位的院校,是全国首批试办研究生院的院校,是首批进入国家“211工程”建设计划的院校,是军队唯一进入国家“985工程”建设行列的院校,是纳入国家“双一流”建设支持的院校。
国防科技大学的前身是1953年创建于哈尔滨的中国人民解放军军事工程学院,即著名的“哈军工”。1970年学院主体南迁长沙,改名为长沙工学院。1978年,学校在邓小平主席的直接关怀下改建为国防科学技术大学。1999年,江泽民主席签署命令组建新的国防科学技术大学。2017年,学校以国防科学技术大学、国际关系学院、国防信息学院、西安通信学院、电子工程学院,以及理工大学气象海洋学院为基础重建,校本部设在长沙,内设学院位于长沙、南京、武汉、合肥等地。

课程介绍:《编译原理》课程是计算机科学与技术专业的必修课程。本课程主要介绍程序设计语言编译程序构造的基本原理和设计方法,包括:编译程序概述、高级语言及其语法描述、词法分析、语法分析、属性文法和语法制导翻译、语义分析和中间代码产生、符号表、运行时存储空间组织、优化、目标代码生成等。
理论和实践相结合是编译程序设计的重要特色。形式语言和自动机理论为编译程序的设计提供了坚实的理论基础,正是在科学理论的保证下,才形成了一系列先进的编译程序设计方法和工具,使得编译程序的构造具有很高的系统性和自动化程度。本课程2007年被评为国家精品课程,2016年被评为国家精品资源共享课程,2020年被评为国家级一流本科课程(线上课程)。
主教材:程序设计语言编译原理 ISBN: 978-7-118-02207-0 主编: 陈火旺 刘春林 谭庆平 赵克佳 刘越 国防工业出版社
预备知识:具备计算机程序设计语言和程序设计知识,对数据结构与算法、计算机原理、离散数学等相关知识有一定了解更好。

授课目标:通这门课程的学习,您将能:
1.在理解编译系统的结构、工作流程以及编译程序各组成部分的设计原理和实现技术的基础上,获得分析、设计、实现和维护编译系统的初步能力。
2.深入理解程序语言和程序执行过程,提高对计算机系统的总体认识。
3.从语言翻译和表示变换的角度理解计算。编译过程体现的诸如抽象、自动化、递归、分解、权衡等众多计算思维方法,可以广泛应用于自然语言处理、程序验证、网络信息处理等领域的问题求解。

课程列表:
第1讲 引论
1.1 什么是编译程序

1.2 为什么要学习编译原理

1.3 编译过程

1.4 编译程序的结构

1.5 编译程序的生成

1.6 小结

第2讲 高级程序设计语言概述

2.1 常用的高级程序设计语言

2.2 程序设计语言的定义

2.3 高级程序设计语言的一般特性

2.4 小结

第3讲 高级程序设计语言的语法描述

3.1 上下文无关文法

3.2 文法与语言

3.3 语法树与二义性

3.4 形式语言鸟瞰

3.5 小结

第4讲 词法分析1

4.1 词法分析概述

4.2 词法分析器的设计

4.3 小结

第5讲 词法分析2

5.1 词法规则形式化——正规集与正规式

5.2 确定有限自动机

5.3 非确定有限自动机

5.4 小结

第6讲 词法分析3

6.1 有限自动机的等价性

6.2 正规式与有限自动机的等价性

6.3 词法分析程序自动生成

第1次单元测试

第7讲 语法分析——自上而下分析1

7.1 自上而下分析的基本问题

7.2 LL(1)文法——消除文法的左递归

7.3 LL(1)文法——消除回溯

7.4 FIRST和FOLLOW集合的构造

7.5 小结

第8讲 语法分析——自上而下分析2

8.1 构造递归下降分析器

8.2 扩充的巴科斯范式和语法图

8.3 JavaCC简介

8.4 小结

第9讲 语法分析——自上而下分析3

9.1 预测分析程序

9.2 预测分析表的构造

9.3 小结

第10讲 语法分析——自下而上分析1

10.1 自下而上分析

10.2 短语与直接短语

10.3 分析过程描述

10.4 算符优先文法

10.5 构造优先关系表

10.6 算符优先分析算法

10.7 小结

第11讲 语法分析——自下而上分析2

11.1 句柄和规范归约

11.2 LR分析法

11.3 小结

第12讲 语法分析——自下而上分析3

12.1 活前缀

12.2 构造识别活前缀的DFA

12.3 构造LR(0)分析表

12.4 小结

第13讲 语法分析——自下而上分析4

13.1 SLR(1)分析法

13.2 LR(1)分析法

13.3 LR分析器产生工具

13.4 小结

第2次单元测试

第14讲 属性文法和语法制导翻译1

14.1 属性文法

14.2 属性计算

第15讲 属性文法和语法制导翻译2

15.1 S-属性文法

15.2 L-属性文法

15.3 翻译模式

15.4 递归下降翻译器的设计

15.5 小结

第16讲 语义分析和中间代码生成1

16.1 中间语言

16.2 常用的中间语言形式

16.3 小结

第3次单元测试

第17讲 语义分析和中间代码生成2

17.1 赋值语句的翻译

17.2 数组元素引用的翻译

17.3 类型转换

17.4 小结

第18讲 语义分析和中间代码生成3

18.1 布尔表达式及其计算

18.2 按数值表示法翻译布尔表达式

18.3 带优化翻译布尔表达式

18.4 小结

第19讲 语义分析和中间代码生成4

19.1 常用的控制语句

19.2 控制语句的属性文法

19.3 控制语句的属性计算

19.4 一遍扫描翻译控制语句

19.5 一遍扫描翻译控制语句示例

19.6 小结

第4次单元测试

第20讲 符号表

20.1 符号表的组织与操作

20.2 符号表的内容

20.3 利用符号表分析名字的作用域

20.4 小结

第21讲 运行时存储空间组织1

21.1 参数传递

21.2 目标程序运行时的活动

21.3 静态存储管理

第22讲 运行时存储空间组织2

22.1 动态存储管理概述

22.2 非嵌套过程语言的动态存储管理

22.3 嵌套过程语言的动态存储管理–静态链方法

22.4 嵌套过程语言的动态存储管理–Display表方法

22.5 小结

第23讲 优化1

23.1 优化概述

23.2 局部优化–基本块划分

23.3 局部优化–基本块优化

第24讲 优化2

24.1 循环优化概述

24.2 代码外提

24.3 强度消弱

24.4 小结

第25讲 目标代码生成

25.1 目标代码生成概述

25.2 目标机器模型

25.3 简单代码生成器

25.4 待用信息和活跃信息

25.5 变量地址描述和寄存器描述

25.6 代码生成与寄存器分配算法

25.7 小结

第5次单元测试

学习体会交流

讨论交流:编译原理课程学习体会

扩展学习资源

编译开发工具

在线实训项目

分享到 :
相关推荐

发表回复

登录... 后才能评论