第三章计算机语言及程序设计 进行程序设计,需要具备两方面知识:(1)掌握 一门计算机语言;(2)掌握解题的方法和步骤。 §1计算机语言 §2程序设计方法 2021/2/24
1 2021/2/24 第二章 计算机语言及程序设计 进行程序设计,需要具备两方面知识:⑴掌握 一门计算机语言;⑵掌握解题的方法和步骤。 §1 计算机语言 §2 程序设计方法
§1计算机语言(D30-32) 2 人类语言是人与人之间信息交流的符号系统。 计算机语言是人与计算机之间信息交流的符号 系统 计算机语言的分类 分为低级语言和高级语言两大类。 低级语言包括机器语言和汇编语言。 ◆机器语言 计算机能直接识别和执行的二进制形式的指令 称为机器指令,机器指令的集合称为机器语言。 2021/2/24
2 2021/2/24 §1 计算机语言(p30-32) 人类语言是人与人之间信息交流的符号系统。 计算机语言是人与计算机之间信息交流的符号 系统。 一、计算机语言的分类 分为低级语言和高级语言两大类。 低级语言包括机器语言和汇编语言。 ❖机器语言 计算机能直接识别和执行的二进制形式的指令 称为机器指令,机器指令的集合称为机器语言
直接采用机器语言编程是不现实的。更重要的3 是,不同计算机具有不同的指令系统,因此机器语 言是不具有通用性的。 ◇汇编语言 用特定符号(助记符)代替二进制指令的语言 称为符号语言,即汇编语言。 如:ADDA,2H (将2H与寄存器A相加,结果放在寄存器A中) sUBB,3H(B-3H→B) 汇编语言只是机器语言的符号化,故也不具有通用性。 通过“汇编程序”将汇编语言中的符号翻译转换成(或 称“汇编成”)相应的二进制指令。 2021/2/24 §1计算机语言
3 2021/2/24 §1 计算机语言 直接采用机器语言编程是不现实的。更重要的 是,不同计算机具有不同的指令系统,因此机器语 言是不具有通用性的。 ❖汇编语言 用特定符号(助记符)代替二进制指令的语言 称为符号语言,即汇编语言。 如:ADD A , 2H (将2H与寄存器A相加,结果放在寄存器A中) SUB B , 3H (B-3HB) 汇编语言只是机器语言的符号化,故也不具有通用性。 通过“汇编程序”将汇编语言中的符号翻译转换成(或 称“汇编成”)相应的二进制指令
◇高级语言 不依赖于计算机,屈用接近于自然语言和数学语言表示的 让篁机语言称为高级语言。如:BAS|C、 FORTRAN、C、 PASCAL、LSP、 FOXPRO、 COBOL。 高级语言通过“编译程序”翻译转化为机器语言 机器语言、汇编语言、高级语言之间的关系 高级语言编译程序 机器语言 汇编语言] 汇编程序 2021/2/24 §1计算机语言
4 2021/2/24 §1 计算机语言 ❖高级语言 不依赖于计算机,用接近于自然语言和数学语言表示的 计算机语言称为高级语言。如:BASIC、FORTRAN、C、 PASCAL、LISP、FOXPRO、COBOL。 高级语言通过“编译程序”翻译转化为机器语言。 ❖机器语言、汇编语言、高级语言之间的关系 高级语言 机器语言 汇编语言 编译程序 汇编程序
二、计算机语言三要素 5 包括:词法、语法、语义。 ◇词法:组成合法语句的基本单位称为单词,构成 合法单词的规则称为词法。 如:C语言中变量的规定。 心语法:具有特定含义的符号串或句子称为语句 构成合法语句的规则称为语法。 ◇语义:合法语句的实际含义称为该语句的语义。 2021/2/24 §1计算机语言
5 2021/2/24 二、计算机语言三要素 包括:词法、语法、语义。 ❖词法:组成合法语句的基本单位称为单词,构成 合法单词的规则称为词法。 如:C语言中变量的规定。 ❖语法:具有特定含义的符号串或句子称为语句, 构成合法语句的规则称为语法。 ❖语义:合法语句的实际含义称为该语句的语义。 §1 计算机语言
§2程序设计方法(P3843) 6 熟练掌握几种好的程序设计方法,是编写高质 量程序的基本前提。 两种:面向过程方法(主要指结构化程序设计 方法),面向对象方法。 结构化程序设计方法 基本思路:把一个复杂问题的求解过程分阶段 进行,每个阶段处理的向问题都控制在容易理解和处 理的范围内。 遵循的原则:()自顶向下、逐步细化;(2)模块 化设计;(3)结构化编码。 2021/2/24
6 2021/2/24 熟练掌握几种好的程序设计方法,是编写高质 量程序的基本前提。 两种:面向过程方法(主要指结构化程序设计 方法),面向对象方法。 一、结构化程序设计方法 基本思路:把一个复杂问题的求解过程分阶段 进行,每个阶段处理的问题都控制在容易理解和处 理的范围内。 遵循的原则:⑴自顶向下、逐步细化;⑵模块 化设计;⑶结构化编码。 §2 程序设计方法(p38-43)
令自顶向下、逐步细化 7 指对设计的系统要有一个全面的理解,从问题 的全局入手,把一个复杂问题分解成若干个相互独 立的子问题,然后对每个子问题再作进一步的分解 如此重复,直到分解细化为一系列具体的操作步骤 以致能用某种程序设计语言的基本控制语句来实现 2021/2/24 52程序设计方法
7 2021/2/24 ❖自顶向下、逐步细化 指对设计的系统要有一个全面的理解,从问题 的全局入手,把一个复杂问题分解成若干个相互独 立的子问题,然后对每个子问题再作进一步的分解, 如此重复,直到分解细化为一系列具体的操作步骤, 以致能用某种程序设计语言的基本控制语句来实现。 §2 程序设计方法
◇模块化设计 8 所谓模块化就是把大程序按照功能分为较小的 程序。 一般来讲,一个程序是由一个主控模块和若干 子模块组成的。主控模块用来完成某些公用操作及 功能选择,而子模块用来完成某项特定的功能,由 主控模坎控制、调用子模块。 当然,子模块是相对主模块而言的。作为某· 子模块,它也可以控制更下一层的子模块。 2021/2/24 52程序设计方法
8 2021/2/24 ❖模块化设计 所谓模块化就是把大程序按照功能分为较小的 程序。 一般来讲,一个程序是由一个主控模块和若干 子模块组成的。主控模块用来完成某些公用操作及 功能选择,而子模块用来完成某项特定的功能,由 主控模块控制、调用子模块。 当然,子模块是相对主模块而言的。作为某一 子模块,它也可以控制更下一层的子模块。 §2 程序设计方法
主控模块 9 匚子模块1][子模块2]……〖子模块n 子模块21[子模块22…子模块2m 模块化设计总是与自顶向下、逐步细化结合使 用,一般把模块化设计看作是自顶向下、逐步细化 的具体体现。 ◇结构化编码 在具体编程时,采用顺序、选择、循环三种基本 结构编写代码。 2021/2/24 52程序设计方法
9 2021/2/24 主控模块 子模块1 子模块2 …… 子模块n 子模块21 子模块22 …… 子模块2m 模块化设计总是与自顶向下、逐步细化结合使 用,一般把模块化设计看作是自顶向下、逐步细化 的具体体现。 ❖结构化编码 在具体编程时,采用顺序、选择、循环三种基本 结构编写代码。 §2 程序设计方法
二、面向对象设计方法 10 代表了程序设计方法的发展趋势。 在面向过程方法中,数据和施加于数据的操作 是独立设计的,以对数据进行操作的过程作为程序 的主体。 面向对象设计方法则以对象作为程序的主体。 对象是数据和操作的“封装体”,封装在对象内的 操作通过“消息”来驱动运行。 涉及到的基本概念包括:对象、类、封装、继 承、多态、消息等等。 在对象内部的编码实现上,常常使用结构化程 序设计方法。 2021/2/24 52程序设计方法
10 2021/2/24 二、面向对象设计方法 代表了程序设计方法的发展趋势。 在面向过程方法中,数据和施加于数据的操作 是独立设计的,以对数据进行操作的过程作为程序 的主体。 面向对象设计方法则以对象作为程序的主体。 对象是数据和操作的“封装体”,封装在对象内的 操作通过“消息”来驱动运行。 涉及到的基本概念包括:对象、类、封装、继 承、多态、消息等等。 在对象内部的编码实现上,常常使用结构化程 序设计方法。 §2 程序设计方法