程序设计语言 面向对象的程序设计语言:是一种面向客观对 象描述其特征和行为并通过类封装能够重用和 继承的程序设计语言。 语言特点: ·面向对象定义新类型,重载、继承 ·效率更低,但更易维护 ■语言用途: 系统软件,仿真软件,分布式及网络软件 ·科学计算、金融商业等 7
7 1.1 程序设计语言 面向对象的程序设计语言 :是一种面向客观对 象描述其特征和行为并通过类封装能够重用和 继承的程序设计语言。 语言特点 : 面向对象定义新类型,重载、继承 效率更低,但更易维护 语言用途 : 系统软件,仿真软件,分布式及网络软件 科学计算、金融商业等
程序设计语言 元语言:用于描述其它语言语法、语义 等语言。 ■ 元数据:用于描述其它数据的数据,例 如关系型数据库的数据字典 。 ■ 元函数:用于描述其它函数的函数,例 如函数模板 ■元类型:用于描述其它类型的类型,例 如类模板。 8
8 1.1 程序设计语言 元语言 :用于描述其它语言语法、语义 等语言。 元数据 :用于描述其它数据的数据,例 如关系型数据库的数据字典。 元函数 :用于描述其它函数的函数,例 如函数模板。 元类型 :用于描述其它类型的类型,例 如类模板
1.2程序编译技术 程序翻译方式:解释方式、编译方式、混合方 式(编译解释) 解释方式:不翻译成机器码,直接读入源程 序,语句用内部指令执行 ■ 编译方式:翻译成可被计算机直接执行的机器 语言程序。 ■混合方式:先编译成中间语言或虚拟机语言, 然后在裸机或操作系统级解释执行。 9
9 1.2 程序编译技术 程序翻译方式:解释方式、编译方式、混合方 式(编译解释) 解释方式:不翻译成机器码,直接读入源程 序,语句用内部指令执行 编译方式:翻译成可被计算机直接执行的机器 语言程序。 混合方式:先编译成中间语言或虚拟机语言, 然后在裸机或操作系统级解释执行
1.2程序编译技术 编译过程:预处理、 词法分析、语法分 析、代码生成、模块连接 预处理:编译宏命令的替换、解释与执 行,生成“纯”的高级语言程序。 ■ 词法分析:识别程序的保留字,运算 符、常量、变量名、类型名、函数名等 单词。 语法分析:分析程序的语法结构,检查 程序是否合乎语法。例IF..ELSE结构。 10
10 1.2 程序编译技术 编译过程:预处理、词法分析、语法分 析、代码生成、模块连接。 预处理:编译宏命令的替换、解释与执 行,生成“纯”的高级语言程序。 词法分析:识别程序的保留字,运算 符、常量、变量名、类型名、函数名等 单词。 语法分析:分析程序的语法结构,检查 程序是否合乎语法。例IF…ELSE结构
1.2程序编译技术 代码生成:根据已经识别的程序语义生成和源 程序等价的可解释或执行的中间代码。 模块连接:将中间代码同标准库或非标准库连 接,生成可被计算机执行的目标语言程序。两 种连接:静态连接与动态连接。 静态连接:又称编译时连接,由编译程序完成 动态连接:又称运行时连接,由操作系统完成 11
11 1.2 程序编译技术 代码生成:根据已经识别的程序语义生成和源 程序等价的可解释或执行的中间代码。 模块连接:将中间代码同标准库或非标准库连 接,生成可被计算机执行的目标语言程序。两 种连接:静态连接与动态连接。 静态连接:又称编译时连接,由编译程序完成 动态连接:又称运行时连接,由操作系统完成