网络教学 Programming Language Design and Implementation 程序设计语言 E
程 序 设 计 语 言 Programming Language Design and Implementation 网络教学
程序设计语言 集中复习 程序设计语言种类很多,各有其自身的特点。 本课程不是为了介绍某种具体的程序设计语言 的规范、使用,而是抽象出程序设计语言的共 同特点,力图系统讲述程序设计语言的语法、 语义和编译实现之间的关系,介绍数据结构、 顺序控制、子程序、封装、继承等概念及其实 现技术,涉及函数式语言、逻辑式语言、命令 式语言和面向对象的语言。讨论程序设计语言 的一般设计和实现方法
程序设计语言----------集中复习 ⚫ 程序设计语言种类很多,各有其自身的特点。 本课程不是为了介绍某种具体的程序设计语言 的规范、使用,而是抽象出程序设计语言的共 同特点,力图系统讲述程序设计语言的语法、 语义和编译实现之间的关系,介绍数据结构、 顺序控制、子程序、封装、继承等概念及其实 现技术,涉及函数式语言、逻辑式语言、命令 式语言和面向对象的语言。讨论程序设计语言 的一般设计和实现方法
本课程要求学习和复习重点内容 第2,3,5,6,7,8,9章。 第2章要求掌握的知识点是:计算机的硬件结 构;固件计算机;翻译;编译;解释;虚拟计 算机;绑定时间等。 ●重点掌握编译和解释的概念、实现原理和各自 的特点;虚拟计算机的概念、层次结构;哪些 元素需要进行绑定,它们的绑定时间分别是什
本课程要求学习和复习重点内容 ⚫ 第2,3,5,6,7,8,9章。 ⚫ 第2章要求掌握的知识点是:计算机的硬件结 构;固件计算机;翻译;编译;解释;虚拟计 算机;绑定时间等。 ⚫ 重点掌握编译和解释的概念、实现原理和各自 的特点;虚拟计算机的概念、层次结构;哪些 元素需要进行绑定,它们的绑定时间分别是什 么
●第3章要求掌握的知识点是:语法;语义;二 义性;独立子程序定义;独立数据定义;嵌套 子程序定义;独立接口定义;词法分析;语法 分析;语义分析;优化;连接与载入;语法树; BNF文法等。 ●重点语法、语义、二义性的特点,二义性与语 法树之间的关系;词法分析、语法分析、语分 析和代码优化的概念、实现原理;BNF范式的 推导
⚫ 第3章要求掌握的知识点是:语法;语义;二 义性;独立子程序定义;独立数据定义;嵌套 子程序定义;独立接口定义;词法分析;语法 分析;语义分析;优化;连接与载入;语法树; BNF文法等。 ⚫ 重点语法、语义、二义性的特点,二义性与语 法树之间的关系;词法分析、语法分析、语分 析和代码优化的概念、实现原理;BNF范式的 推导
第5章要求掌握的知识点是:数据对象、变量 常量、数据类型、类型检查、类型转换、标量 数据类型、复合数据类型等。 ●重点掌握基本数据类型的概念、存储表示、实 现方法;动态类型检查与静态类型检查的特点 第6章要求掌握的知识点是:封装、结构化数 据类型、数据结构上的操作、向量、数组、记 录、列表、集合、数据抽象、信息隐藏、类属 子程序、类型定义等。 重点掌握封装的概念、封装的特点、向量的特 点、向量地址的计算、数据结构上操作的实现 原理
⚫ 第5章要求掌握的知识点是:数据对象、变量、 常量、数据类型、类型检查、类型转换、标量 数据类型、复合数据类型等。 ⚫ 重点掌握基本数据类型的概念、存储表示、实 现方法;动态类型检查与静态类型检查的特点。 ⚫ 第6章要求掌握的知识点是:封装、结构化数 据类型、数据结构上的操作、向量、数组、记 录、列表、集合、数据抽象、信息隐藏、类属 子程序、类型定义等。 ⚫ 重点掌握封装的概念、封装的特点、向量的特 点、向量地址的计算、数据结构上操作的实现 原理
第7章要求掌握的知识点是:抽象、对象、类、 封装、成员、属性、方法、消息、继承、多态、 重载、覆盖等。 重点掌握上述知识点的基本概念、过程抽象和 数据抽象的特点、继承的实现方法。重载与覆 盖的区别。 第8章要求掌握的知识点是:顺序控制、表达 式的顺序、前缀表示法、中缀表示法、后缀表 示法、前缀计算法、中缀计算法、后缀计算法、 致求值规则、语句级顺序控制、结构化顺序 控制
⚫ 第7章要求掌握的知识点是:抽象、对象、类、 封装、成员、属性、方法、消息、继承、多态、 重载、覆盖等。 ⚫ 重点掌握上述知识点的基本概念、过程抽象和 数据抽象的特点、继承的实现方法。重载与覆 盖的区别。 ⚫ 第8章要求掌握的知识点是:顺序控制、表达 式的顺序、前缀表示法、中缀表示法、后缀表 示法、前缀计算法、中缀计算法、后缀计算法、 一致求值规则、语句级顺序控制、结构化顺序 控制
重点掌握表达式的优先级别;前缀、中缀、后 缀的语法表示方法,并且灵活掌握它们的计算 方法的实现原理;结构化定理的概念以及结构 化定义所阐述的问题。 第9章要求掌握的知识点是:调用、返回、基 于堆栈的实现、声明、命名、引用环境、可见 性、静态作用域、动态作用域、局部数据、局 部引用环境、实际参数、形式参数、参数传递 静态类型检查、非局部引用共享显式变量等。 ●重点掌握简单调用-返回子程序的顺序控制方 法、引用环境、各种参数传递的基本思想、变 量的作用域
⚫ 重点掌握表达式的优先级别;前缀、中缀、后 缀的语法表示方法,并且灵活掌握它们的计算 方法的实现原理;结构化定理的概念以及结构 化定义所阐述的问题。 ⚫ 第9章要求掌握的知识点是:调用、返回、基 于堆栈的实现、声明、命名、引用环境、可见 性、静态作用域、动态作用域、局部数据、局 部引用环境、实际参数、形式参数、参数传递、 静态类型检查、非局部引用共享显式变量等。 ⚫ 重点掌握简单调用-返回子程序的顺序控制方 法、引用环境、各种参数传递的基本思想、变 量的作用域
●第10章要求掌握的知识点是:初始分配、存储 单元回收、压缩、存储单元再用、静态存储管 理、固定单元大小、引用计数、无用单元、悬 挂引用、无用单元回收、可变长单元、首次满 足、最佳满足、存储器碎片等。 ●重点掌握:无用单元以及悬挂引用的概念、存 在的危害以及具体的解决方法
⚫ 第10章要求掌握的知识点是:初始分配、存储 单元回收、压缩、存储单元再用、静态存储管 理、固定单元大小、引用计数、无用单元、悬 挂引用、无用单元回收、可变长单元、首次满 足、最佳满足、存储器碎片等。 ⚫ 重点掌握:无用单元以及悬挂引用的概念、存 在的危害以及具体的解决方法
第11章要求掌握的知识点是:异常、异常处理 程序、异常引发、异常传播、协同程序、调度 程序、并发运行、任务、任务管理、任务同步 中断、信号量、消息、任务存储管理、互斥、 临界区、管程、消息传递等 重点掌握:异常的特点、任务存储管理的具体 方法以及消息传递
⚫ 第11章要求掌握的知识点是:异常、异常处理 程序、异常引发、异常传播、协同程序、调度 程序、并发运行、任务、任务管理、任务同步、 中断、信号量、消息、任务存储管理、互斥、 临界区、管程、消息传递等。 ⚫ 重点掌握:异常的特点、任务存储管理的具体 方法以及消息传递
通过本门课程的学习 我们知道程序设计语言经过了低级语言(机器 语言、汇编语言)到高级语言的发展,而且仍 在继续不断的发展和变化。经历着应用程序的 “简单性”到“复杂性”;编程强调“技巧 性”到“可读性”;追求实现的“高效性”到 “可维护性”和强调“可移植性”的演变。 影响程序设计语言的主要因素有:计算机性能, 应用领域的要求,编程方法,实现方法和标准 化。 程序一般计算模型有:命令式语言、应用式语 言、基于规则语言和面向对象语言四种,各自 具有优点。目前主要使用的仍然是命令式语言 和面向对象语言
通过本门课程的学习: 我们知道程序设计语言经过了低级语言(机器 语言、汇编语言)到高级语言的发展,而且仍 在继续不断的发展和变化。经历着应用程序的 “简单性” 到“复杂性”;编程强调“技巧 性”到“可读性”;追求实现的“高效性”到 “可维护性”和强调“可移植性”的演变。 影响程序设计语言的主要因素有:计算机性能, 应用领域的要求,编程方法,实现方法和标准 化。 程序一般计算模型有:命令式语言、应用式语 言、基于规则语言和面向对象语言四种,各自 具有优点。目前主要使用的仍然是命令式语言 和面向对象语言