编译原理课程信息(杨晓波) 本文关键词:编译,原理,课程,信息,杨晓波
编译原理课程信息(杨晓波) 本文简介:课程基本信息课程名称编译原理开课学期2011春季学期开课单位信息科学与工程学院(软件学院)授课教师杨晓波讲师课号编号26039学分/学时4/(48+48)全年/半年半年必修/选修必修上课时间2-13周星期一星期五上课地点复临舍课程网页核心能力关联备注课程大纲课程概述这是一门为计算机学科学生开设的专业
编译原理课程信息(杨晓波) 本文内容:
课程基本信息
课程名称
编译原理
开课学期
2011
春季学期
开课单位
信息科学与工程学院(软件学院)
授课教师
杨晓波
讲师
课号编号
26039
学分/学时
4/(48+48)
全年/半年
半年
必修/选修
必修
上课时间
2-13周
星期一
星期五
上课地点
复临舍
课程网页
核心能力关联
备注
课程大纲
课程概述
这是一门为计算机学科学生开设的专业基础课,通过该课程的教学使学生能够掌握编译过程中所涉及的基本理论、方法和技术。
课程目标
掌握编译原理课程的基本方法和基本原理,具体包括:词法分析、语法分析、语法制导翻译、中间代码生成、代码生成、代码优化等。通过编译原理的整个教学过程逐渐培养学生分析问题、解决问题的能力,使用编译程序中的原理和技术应用于一般的软件设计和实现中。
课程要求
本课程的前导课程为数据结构和程序设计语言等
答疑地点
软件学院办公楼317
指定教材
Alfred
V.Aho,Ravi
Sethi,Jeffrey
D.Ullman著,赵建华,郑滔,戴新宇译.编译原理第2版.北京:机械工业出版社,2009年5月
参考阅读
《编译原理(第二版)》,
张素琴、吕映芝、蒋维杜,清华大学出版社,2005
《程序设计语言编译原理》,陈火旺,国防工业出版社,2001
评分方式
(仅供参考)
20%
作业及出勤
30%
课程实验
50%
期末考试
Course
Basic
information
Name
Compilers
Principles
Semister
2010-2011(2)
School
Software
school
Teacher
Yang
Xiaobo
Course
Code
26039
Credit/Class
Hours
4/(48+48)
Whole
Year/half
Year
Half
year
Type
Compulsory
Time
2-13week
Tuesday
/
Friday
Location
Fulin
building
Course
web
Syllabus
Course
Description:
This
is
a
basic
course
for
majors
of
computing,aiming
at
the
students’
mastery
of
the
basic
concepts,theories
and
techniques
of
compilers.
Course
Objectives
The
study
of
this
course
develops
the
students’
ability
to
analyze
and
solve
practical
problems,and
to
understand
and
use
the
principles
and
techniques
of
compilers
in
the
software
design
and
implementation.
The
main
contents
of
this
course
are
the
basic
approaches
and
principles
of
compilers,including
lexical
analysis,syntax
analysis,syntax-directed
translation,immediate
code
generation,code
generation
and
optimization.
Requirements
Data
Structures,Programming
Languages
Location
for
answer
questions
Room
317,Software
Building
Book
《Compilers
Principles,Techniques
&tools,Second
Edition》,Alfred
V.Aho,China
Machine
Press,2009
Reference
《Principles
of
compiling,Second
Edition》,Zhangsuqin,Tsinghua
University
Press,2005
《Compiling
principles
for
Programming
Language》,Chenhuowang,National
Defence
Industry
Press,2003
Evaluation
20%
Exercise
and
attendance
30%
Experimentation
50%
Final
exam
课
程
教
学
进
程
表
星期
日
期
授
课
内
容
作
业
课程实验
2
2月28日
课程介绍,编译原理的基本概念,语言处理器,编译器结构,编译程序的其他问题。编译程序的构造方法
1.1.1,3月4日
程序语言的发展历程,编译技术的应用,程序设计语言基础
1.6.1,1.6.2
3
3月7日
词法分析器的作用;
记号的说明
3.3.2,3.3.3,
3月11日
记号的识别,词法分析器生成工具lex介绍,有限自动机
3.4.1a)b),3.6.3,
3.6.4
4
3月14日
有限自动机,从正则式到有限自动机,词法分析器生成工具的设计方法
3.7.1,3.7.2,3.9.3
3月18日
语法分析器介绍,上下无关文法,推导、句型、句子、语言、语法分析树,二义性
4.2.1,
4.2.2
5
3月21日
消除左递归,提取左公因子
4.3.2
3月25日
自顶向下语法分析
4.4.4
6
3月28日
LL(1)分析表的构造
4.4.1
4月1日
自底向上分析
LR(0)分析
7
4月4日
SLR分析
LR(1)分析
4.6.4,
4.6.6
4月8日
LR(1)分析
4.7.4
8
4月11日
LALR分析
4.7.5
4月15日
语法制导定义
SDD的求值顺序
5.1.1,
5.2.3,
5.2.4
9
4月18日
语法制导定义的应用
5.3.1
4月22日
语法制导定义的翻译方案
L属性定义SDD
5.4.4
10
4月25日
中间代码的分类与介绍
类型和声明
6.1.1,
6.1.2,
6.2.1,
6.3.1
4月29日
表达式中间代码生成
控制流
6.4.3,6.4.6,
6.6.4
11
5月2日
回填
开关语句翻译模式
过程中间代码
6.7.1
5月6日
存储组织
空间的栈式分配
7.2.5,7.2.6
12
5月9日
非局部名字访问
堆管理
7.3.2
5月13日
代码生成器设计
目标语言
基本块划分
8.2.1,8.2.6
13
5月16日
流图
基本块内优化
8.5.1,8.5.5
5月20日
简单的代码生成器
窥孔优化
复习
8.6.1
a)