SPOC学校专有课程
编译原理
分享
spContent=编译原理是计算机专业的一门专业核心课,旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。 这门课在理论、技术、方法上都对学生提供了系统而有效的训练,有利于提高软件人员的素质和能力。
—— 课程团队
课程概述

       

       我们之前都使用高级程序设计语言编写过程序,我们编写好的程序交给计算机,就可以执行出结果,但我们知道计算机可以识别的只有01构成的机器语言,高级语言编写的程序输入计算机后经过了一个什么样的过程,转换成了机器可以识别的低级语言呢?这就是我们编译原理这门课要研究的内容,高级语言翻译成低级语言的过程就叫编译。

        我们学习编译原理有什么用呢?  

1、学习编译原理,了解高级语言是如何翻译成机器语言的,这有助于提高我们代码编译的效率,提高代码的质量。

2、了解计算机的运作原理,能写出更高效的代码。
3
、由于编译过程是将高级语言等价的翻译成机器语言,这样我们就知道了它们之间是如何等价转换的,这对于我们学习其他语言更加得心应手,因为我们学习了它们的核心思想。

4、对于计算机编程及计算机整体运作方式开始有更深层次的理解。
5
、可能可以在自然语言语义分析方面会后一些了解。
6
、获得分析、设计、实现和维护编译系统的初步能力,理解运用编译技术解决工程实践中的变换和转换问题的方法。

       编译原理可以说是一个计算机科学的缩影。我们学习它更多的是去追寻程序设计语言的本质,学完这门课程,我相信,你对你所写的程序、程序语言都会有更深的本质认识,这样的认识也会让你站的高度完全不同。


授课目标

通这门课程的学习,我们可以:

1.       在理解和掌握编译系统的结构、工作流程以及编译程序各组成部分的设计原理和实现技术的基础上,获得分析、设计、实现和维护编译系统的初步能力。

2.       更深入地理解程序语言和程序执行过程,提高对计算机系统的总体认识。

3.       编译过程体现的诸如抽象、自动化、递归、分解、权衡等众多计算思维方法,可以广泛应用于自然语言处理、程序验证、网络信息处理等领域的问题求解。


成绩要求

设置“合格”(达到60分)、"优秀"(达到85分)两档课程标准

课程大纲
预备知识

高等数学

高级程序设计语言

离散数学

数据结构

汇编语言

参考资料

1.陈火旺、刘春林等,《程序设计语言编译原理》,国防工业出版社,第三版,2000

2.(美)Kenneth C. Louden著,《编译原理与实践》(英文版),机械工业出版社,2002-8。

3. 冯博琴等译,《编译原理与实践》,机械工业出版社,2002-2。