第1章引论 ■本章内容: 。1.1程序设计语言 ·1.2程序编译技术 。1.3面向对象的语言及程序设计 ·1.4面向对象的基本概念 ·1.5C++语言的特点 。1.6C++的程序结构 2
2 第1章 引 论 本章内容: 1.1 程序设计语言 1.2 程序编译技术 1.3 面向对象的语言及程序设计 1.4 面向对象的基本概念 1.5 C++语言的特点 1.6 C++的程序结构
.1程序设计语言 程序设计语言 ·机器语言 ·汇编语言Microsoft MASM,Borland TASM ·高级语言FORTRAN,ALGOL,PASCAL,C,ADA ·面向对象的程序设计语言C+,JAVA,C# ·数据库查询语言SQL ·人工智能逻辑推理语言PROLOG,LISP "元语言BNF 3
3 1.1 程序设计语言 程序设计语言 机器语言 汇编语言Microsoft MASM, Borland TASM 高级语言FORTRAN,ALGOL,PASCAL, C, ADA 面向对象的程序设计语言C++, JAVA, C# 数据库查询语言SQL 人工智能逻辑推理语言PROLOG, LISP 元语言BNF
程序设计语言 机器语言:机器语言程序是由机器指令和 数据形成的二进制文档。 ■语言特点: 。效率高 ·难于理解、编程繁琐、不易维护 ■语言用途: ·编写操作系统、中断服务程序、库函数等需 要高效率的场合 4
4 1.1 程序设计语言 机器语言 :机器语言程序是由机器指令和 数据形成的二进制文档。 语言特点 : 效率高 难于理解、编程繁琐、不易维护 语言用途 : 编写操作系统、中断服务程序、库函数等需 要高效率的场合
,1程序设计语言 汇编语言:符号化的功能上接近于机器语言的 语言。 语言特点: ·效率高 ·仍然难于理解、编程繁琐、不易维护 ■语言用途: ·编写操作系统、中断服务程序、库函数等需要高效 率的场合。 ·编写编译程序等系统程序 5
5 1.1 程序设计语言 汇编语言 :符号化的功能上接近于机器语言的 语言。 语言特点 : 效率高 仍然难于理解、编程繁琐、不易维护 语言用途 : 编写操作系统、中断服务程序、库函数等需要高效 率的场合。 编写编译程序等系统程序
程序设计语言 高级语言:形式化的类似于自然语言的 程序设计语言。 语言特点: 。效率略低 。易于理解、编程容易、易于维护 ■语言用途: ·编写编译、数据库管理系统等系统程序 ·编写科学计算,金融商业等应用程序 6
6 1.1 程序设计语言 高级语言 :形式化的类似于自然语言的 程序设计语言。 语言特点 : 效率略低 易于理解、编程容易、易于维护 语言用途 : 编写编译、数据库管理系统等系统程序 编写科学计算,金融商业等应用程序
程序设计语言 面向对象的程序设计语言:是一种面向客观对 象描述其特征和行为并通过类封装能够重用和 继承的程序设计语言。 语言特点: ·面向对象定义新类型,重载、继承 ·效率更低,但更易维护 ■语言用途: 系统软件,仿真软件,分布式及网络软件 ·科学计算、金融商业等 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 程序编译技术 代码生成:根据已经识别的程序语义生成和源 程序等价的可解释或执行的中间代码。 模块连接:将中间代码同标准库或非标准库连 接,生成可被计算机执行的目标语言程序。两 种连接:静态连接与动态连接。 静态连接:又称编译时连接,由编译程序完成 动态连接:又称运行时连接,由操作系统完成