《程序设计编译原理》教学大纲

《程序设计编译原理》教学大纲

ID:34619467

大小:75.28 KB

页数:3页

时间:2019-03-08

《程序设计编译原理》教学大纲_第1页
《程序设计编译原理》教学大纲_第2页
《程序设计编译原理》教学大纲_第3页
资源描述:

《《程序设计编译原理》教学大纲》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《程序设计编译原理》教学大纲课程名称:编译原理英文名称:compileprinciple课程编号:120118学时数及学分:76学时4学分教材名称及作者、出版社、出版时间:《程序设计语言编译》,陈火旺,国防工业出版社,2000年8月本大纲主笔人:杨铁林一、课程的目的、要求和任务《编译原理》是计算机专业的一门重要的专业骨干课程,它的主要任务是系统地介绍编译程序的基本原理、基本实现方法,编译方面的最新技术及其研究发展方向。通过本课程的学习,应使学生掌握高级程序设计语言的编译原理及其基本实现技术,了解编译方面的最新技术

2、发展和研究方向,具有设计、实现编译程序的基本能力。二、大纲基本内容及学时分配1.绪言(4学时)1)编译程序与高级语言关系及其重要性。2)编译程序的基本结构与工作流程。3)教学模型语言L的编译结构设计与语言的主要成分。说明:要求学生掌握本节内容;1)和2)是本节的重点。2.形式语言基础。(4学时)1)形式语言、文法等有关概念的定义。2)推导树与规范分析。说明:要求学生掌握本节内容;1)是本节的重点。3.有限自动机理论基础。(10学时)1)确定有限自动和非确定有限自动机。2)非确定有限自动机到确定有限自动机的转换。3

3、)有限自动机的化简。说明:要求学生掌握本节内容。1)和2)是本节的重点;3)是难点。4.程序语言的构造基础与意义。(6学时)1)对象的名字、属性与汇聚。2)数据型对象及其存贮表示。3)运算、运算的复合及运算的顺序控制。4)参数传递。5)程序设计语言的语法定义及语义定义。说明:要求学生了解本节内容;4)是本节要求掌握的内容,也是难点。5.词法分析(8学时)1)单词的分类及机内表示法、词法分析的任务。2)词法分析器的设计、其它设计技术及错误处理。3)词法与分析程序的自动产生。4)实现教学模型语言L的词法分析器。说明:

4、要求学生掌握本节内容;本节内容也是本课程的重点内容。3)可选讲。6.上下文无关文法与下推自动机。(6学时)1)上下文无关文法的意义及其变换。2)语法树与文法的二义性。3)下推自动机。说明:要求学生掌握本节内容;下推自动机的构造可选讲。7.语法与分析之一:自顶向下分析法。(8学时)1)自顶向下分析概论、问题及其解决(回溯,左递归等)2)递归下降分析法。3)LL(K)文法与LL(1)语法分析法。说明:要求学生掌握本节内容;本节内容也是本课程的重点内容。8.语法分析之二:自底向上分析法(10学时)1)自底向上分析概论。

5、2)简单优先文法及其分析算法3)算符优先文法及其分析算法说明:要求学生掌握本节内容;本节内容也是本课程的重点内容。9.语法分析程序的自动构造(10学时)~1)LR(K)文法及LR(K)语法与分析表2)SLR分析表构造3)规范LR分析表构造4)LALR分析表构造5)语法分析器自动生成原理。说明:要求学生掌握本节内容;本节内容也是本课程的重点内容。3)、4)、5)可选讲。10.语法制导翻译方法(12学时)1)概述2)几种常用的中间代码3)自底向上的语法制导翻译(1)算述表达式与赋值语句的翻译(2)分支语句的翻译(3)

6、循环语句的翻译4)自顶向下的语法制导翻译(1)递归下降的制导翻译(2)LL(1)语法制导翻译5)属性文法与属性翻译(1)属性文法与L-属性文法(2)属性计值规则的改造与属性翻译6)复杂语言成分的翻译(1)分程序结构、数组变量说明的翻译(2)过程调用的翻译(3)复杂赋值语句、I/O语句的翻译(4)CASE语句的翻译7)实现教学模型语言L的语法制导翻译说明:要求学生掌握本节内容;本节内容也是本课程的重点内容。5)、6)可选讲,但6)中的(1)、(2)要求掌握。11.运行时存贮空间的组织(8学时)1)静态存贮管理2)栈

7、式存贮管理3)堆式存贮分配说明:要求学生掌握本节内容;本节内容也是本课程的重点内容。12.优化(6学时)1)局部优化2)合并己知量、公共子表达式及消除无用赋值3)其它优化技术介绍说明:要求学生了解本节内容;可选讲。13.目标代码生成(6学时)1)模型计算机(目标机)2)各类四元式的翻译方法3)寄存器分配4)目标代码的生成5)目标代码的优化枝术6)实现教学模型语言L的目标代码生成器说明:要求学生了解本节内容;可选讲。14.运行准备(6学时)1)装配程序2)连接程序3)库管理及存贮分配说明:要求学生了解本节内容;可选

8、讲。三、与其它课程的关系1.先行课程:离散数学、数据结构、汇编语言、高级程序设计语言(如:Pascal、FORTRAN、C等)。2.后续课程:高级语言设计原理(或高级语言慨论)、程序设计方法学、形式语言与自动机、软件工具与环境等。四、考核方式  1.期末闭卷考试占总成绩的60-70%  2.课程设计占总成绩的20-25%3.平时成绩(作业、课堂和上机考勤等)占总成绩的15

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。