第一章程序设计语言教学课件

上传人:仙*** 文档编号:241649834 上传时间:2024-07-13 格式:PPT 页数:38 大小:331.50KB
返回 下载 相关 举报
第一章程序设计语言教学课件_第1页
第1页 / 共38页
第一章程序设计语言教学课件_第2页
第2页 / 共38页
第一章程序设计语言教学课件_第3页
第3页 / 共38页
点击查看更多>>
资源描述
第1章 程序语言设计问题 学习目标学习目标:初步掌握程序语言的基本概念,了初步掌握程序语言的基本概念,了解程序语言的发展;了解编程环境对语言的影响。解程序语言的发展;了解编程环境对语言的影响。-理解学习程序设计语言的作用;理解学习程序设计语言的作用;-了解几种语言的特点;了解几种语言的特点;-了解对程序语言影响的主要要素;了解对程序语言影响的主要要素;-了解语言标准问题;了解语言标准问题;-学习程序设计语言的基本计算模式;学习程序设计语言的基本计算模式;重点和难点重点和难点:本章的重点是:程序设计语言的基本概念;好的本章的重点是:程序设计语言的基本概念;好的程序语言的基本特征;程序语言的基本特征;本章的难点是:程序设计语言的一般计算模型;本章的难点是:程序设计语言的一般计算模型;知识点知识点:程序;算法;数据结构;机器语言;汇编语言;程序;算法;数据结构;机器语言;汇编语言;高级语言;翻译;可读性;可维护型;使用代价;高级语言;翻译;可读性;可维护型;使用代价;计算模型;计算模型;1.1为什么学习程序设计语言(学习程序语言为什么学习程序设计语言(学习程序语言有何作用)?有何作用)?1.2 程序设计语言的发展简史程序设计语言的发展简史1.3 对程序语言影响的主要因素对程序语言影响的主要因素1.4 好语言的特征好语言的特征1.5 程序设计语言的基本计算模型程序设计语言的基本计算模型1.6 语言标准语言标准1.7 编程环境编程环境第1章 程序语言设计问题1.1 1.1 为什么学习程序设计语言?为什么学习程序设计语言?l增强设计高效率算法的能力;增强设计高效率算法的能力;(如如递归)递归)l提高对现存程序语言的运用能力;提高对现存程序语言的运用能力;l增加有用程序结构的词汇表;增加有用程序结构的词汇表;l可以对程序语言有更好的选择;可以对程序语言有更好的选择;l更容易学习新语言;更容易学习新语言;l更容易设计出一种新语言;更容易设计出一种新语言;返回1.2 1.2 程序语言发展简史程序语言发展简史l机器语言机器语言汇编语言汇编语言高级语言高级语言;l基于数字计算的语言,如基于数字计算的语言,如Fortran;Fortran;l基于商业语言,如基于商业语言,如COBOL;COBOL;l人工智能语言,如人工智能语言,如LISP;LISP;l系统语言,如系统语言,如C C语言语言;语言的应用领域语言的应用领域l商业:商业:COBOL,C+,Java,Excel,Delphil科学:科学:Fortran,C,C+,Java,Delphi,Basicl系统:系统:C,C+,Java,Adal人工智能:人工智能:LISP,Prologl出版:出版:Tex,Postscript,Wordl处理:处理:Unix shell,TCL,Perl,Javascript 返回1.3 1.3 对程序语言影响的主要因素对程序语言影响的主要因素l1 1)计算机性能:计算机性能价格比在不断提)计算机性能:计算机性能价格比在不断提高,嵌入了高,嵌入了OSOS,使用高级语言成为可能。,使用高级语言成为可能。l2 2)应用:从军事、科技、商业、工业领域)应用:从军事、科技、商业、工业领域计算机游戏、个人计算机,乃至各个领域。计算机游戏、个人计算机,乃至各个领域。l3 3)编程方法:简单程序)编程方法:简单程序复杂程序;复杂程序;技巧性技巧性可读性。可读性。l4 4)实现方法:设计新的数据结构和算法,)实现方法:设计新的数据结构和算法,实现高效性实现高效性可维护性。可维护性。l5 5)理论研究:采用形式化的数学方法进行语)理论研究:采用形式化的数学方法进行语言数据结构、算法等设计、实现方面的研究。言数据结构、算法等设计、实现方面的研究。6 6)标准化:强调可移植性。)标准化:强调可移植性。返回1.4 1.4 好语言的特征好语言的特征l l1 1 1 1)透明性、简单性和统一性:从语法上的区别就能)透明性、简单性和统一性:从语法上的区别就能)透明性、简单性和统一性:从语法上的区别就能)透明性、简单性和统一性:从语法上的区别就能体现语义上的区别。体现语义上的区别。体现语义上的区别。体现语义上的区别。l l2 2 2 2)正交性:是指能将一种语言的各种特征以所有可)正交性:是指能将一种语言的各种特征以所有可)正交性:是指能将一种语言的各种特征以所有可)正交性:是指能将一种语言的各种特征以所有可能的情况加以组合,并且每一种组合均有意义。例,能的情况加以组合,并且每一种组合均有意义。例,能的情况加以组合,并且每一种组合均有意义。例,能的情况加以组合,并且每一种组合均有意义。例,假设某种语言(如假设某种语言(如假设某种语言(如假设某种语言(如C C C C)提供了能够产生值的表达式,)提供了能够产生值的表达式,)提供了能够产生值的表达式,)提供了能够产生值的表达式,而且也提供了条件语句以计算一个表达式的值是真而且也提供了条件语句以计算一个表达式的值是真而且也提供了条件语句以计算一个表达式的值是真而且也提供了条件语句以计算一个表达式的值是真或假。如果任何一个表达式在条件语句中都能使用或假。如果任何一个表达式在条件语句中都能使用或假。如果任何一个表达式在条件语句中都能使用或假。如果任何一个表达式在条件语句中都能使用(和计算),那么这种语言中的这两个特征,即表(和计算),那么这种语言中的这两个特征,即表(和计算),那么这种语言中的这两个特征,即表(和计算),那么这种语言中的这两个特征,即表达式和条件语句就具有正交性。达式和条件语句就具有正交性。达式和条件语句就具有正交性。达式和条件语句就具有正交性。l l正交性的好处:需要记忆的特殊情况较少,易于学正交性的好处:需要记忆的特殊情况较少,易于学正交性的好处:需要记忆的特殊情况较少,易于学正交性的好处:需要记忆的特殊情况较少,易于学习和编程。缺点:可能包含逻辑不连贯性的特征组习和编程。缺点:可能包含逻辑不连贯性的特征组习和编程。缺点:可能包含逻辑不连贯性的特征组习和编程。缺点:可能包含逻辑不连贯性的特征组合。合。合。合。l l3 3)应用的自然性:使得程序结构能够反映出算)应用的自然性:使得程序结构能够反映出算)应用的自然性:使得程序结构能够反映出算)应用的自然性:使得程序结构能够反映出算法的逻辑结构基础。理想情况下,能够将程序法的逻辑结构基础。理想情况下,能够将程序法的逻辑结构基础。理想情况下,能够将程序法的逻辑结构基础。理想情况下,能够将程序设计直接转化成正确的反映算法结构的程序语设计直接转化成正确的反映算法结构的程序语设计直接转化成正确的反映算法结构的程序语设计直接转化成正确的反映算法结构的程序语句句句句(自然语言描述的算法可直接转化成程序语句自然语言描述的算法可直接转化成程序语句自然语言描述的算法可直接转化成程序语句自然语言描述的算法可直接转化成程序语句)。l l4 4)抽象性的支持:能够支持抽象性的数据结构)抽象性的支持:能够支持抽象性的数据结构)抽象性的支持:能够支持抽象性的数据结构)抽象性的支持:能够支持抽象性的数据结构(如包含有(如包含有(如包含有(如包含有“学生、班级、教师、教室学生、班级、教师、教室学生、班级、教师、教室学生、班级、教师、教室”等成员等成员等成员等成员的记录的记录的记录的记录RecordRecord,结构,结构,结构,结构StructStruct等)以及抽象的操作等)以及抽象的操作等)以及抽象的操作等)以及抽象的操作(如给一个班级分配教室)。程序员的一项重(如给一个班级分配教室)。程序员的一项重(如给一个班级分配教室)。程序员的一项重(如给一个班级分配教室)。程序员的一项重要工作就是:设计抽象类、实现抽象类。要工作就是:设计抽象类、实现抽象类。要工作就是:设计抽象类、实现抽象类。要工作就是:设计抽象类、实现抽象类。l l5 5)程序的易验证性:语义和语法的简单性是简)程序的易验证性:语义和语法的简单性是简)程序的易验证性:语义和语法的简单性是简)程序的易验证性:语义和语法的简单性是简化程序验证的一个基本要素。化程序验证的一个基本要素。化程序验证的一个基本要素。化程序验证的一个基本要素。l l6 6)编程环境:集成化的编程环境。如)编程环境:集成化的编程环境。如)编程环境:集成化的编程环境。如)编程环境:集成化的编程环境。如VBVB、VCVC、VJVJ、JBuilderJBuilder、DelphiDelphi等。等。等。等。l l7)7)可移植性:能将一台机器上开发的程序在另一可移植性:能将一台机器上开发的程序在另一可移植性:能将一台机器上开发的程序在另一可移植性:能将一台机器上开发的程序在另一台机器上运行。如台机器上运行。如台机器上运行。如台机器上运行。如JavaJava程序。程序。程序。程序。l l8 8)使用代价)使用代价)使用代价)使用代价 程序执行代价:运行时占用系统资源代价。如程序执行代价:运行时占用系统资源代价。如程序执行代价:运行时占用系统资源代价。如程序执行代价:运行时占用系统资源代价。如今,不是关心的主要问题。今,不是关心的主要问题。今,不是关心的主要问题。今,不是关心的主要问题。翻译的代价:翻译的速度和占用系统资源代价,翻译的代价:翻译的速度和占用系统资源代价,翻译的代价:翻译的速度和占用系统资源代价,翻译的代价:翻译的速度和占用系统资源代价,对于教学性的语言较为强调。对于教学性的语言较为强调。对于教学性的语言较为强调。对于教学性的语言较为强调。程序创建、测试和使用的代价:程序员设计、程序创建、测试和使用的代价:程序员设计、程序创建、测试和使用的代价:程序员设计、程序创建、测试和使用的代价:程序员设计、编码、调试、修改、集成、测试和使用时投入编码、调试、修改、集成、测试和使用时投入编码、调试、修改、集成、测试和使用时投入编码、调试、修改、集成、测试和使用时投入的总时间与工作量。这是目前最关心的代价之的总时间与工作量。这是目前最关心的代价之的总时间与工作量。这是目前最关心的代价之的总时间与工作量。这是目前最关心的代价之一。如一。如一。如一。如PerlPerl,SmalltalkSmalltalk 程序维护的代价:在程序的使用过程中对程序程序维护的代价:在程序的使用过程中对程序程序维护的代价:在程序的使用过程中对程序程序维护的代价:在程序的使用过程中对程序反复修改、修复和升级扩充所花费的代价。这反复修改、修复和升级扩充所花费的代价。这反复修改、修复和升级扩充所花费的代价。这反复修改、修复和升级扩充所花费的代价。这是目前最关心的代价之一。是目前最关心的代价之一。是目前最关心的代价之一。是目前最关心的代价之一。返回1.5 1.5 程序设计语言的基本计算模型程序设计语言的基本计算模型l命令式语言(过程式语言)命令式语言(过程式语言)是命令驱动和面向语句的语言。是命令驱动和面向语句的语言。程序由一系列的语句组成,其一般语法形式为:程序由一系列的语句组成,其一般语法形式为:语句语句1 1;语句语句2 2;每条语句执行的结果是的计算机改变一个或多个存每条语句执行的结果是的计算机改变一个或多个存储单元的值,即进入一个新的状态。其操作过程如储单元的值,即进入一个新的状态。其操作过程如图所示。图所示。模型的优点:效率较高。模型的优点:效率较高。语言实例:语言实例:C,Pascal,Fortran,COBOLC,Pascal,Fortran,COBOL等。等。应用领域:科学计算、系统设计、商业应用、工业应用领域:科学计算、系统设计、商业应用、工业控制等领域。控制等领域。l应用式语言(函数式语言)应用式语言(函数式语言)以数据为驱动的强调程序(函数)执行的初始状态以数据为驱动的强调程序(函数)执行的初始状态和处理(输出)结果。和处理(输出)结果。不是将计算看成连续的机器状态的转换,而是看成不是将计算看成连续的机器状态的转换,而是看成为了得到答案而应用于数据的连续的函数转换。其为了得到答案而应用于数据的连续的函数转换。其一般语法形式为:一般语法形式为:functionn(function2(function1(data)该模型可看成是一个以原始数据作为输入,对内存该模型可看成是一个以原始数据作为输入,对内存进行操作以产生答案的透镜。其操作过程如图所示进行操作以产生答案的透镜。其操作过程如图所示模型的优点:较好的灵活性和可靠性。模型的优点:较好的灵活性和可靠性。语言实例:侧重于人工智能的语言实例:侧重于人工智能的LISP,MLLISP,ML语言等。语言等。应用领域:人工智能。应用领域:人工智能。l基于规则语言(逻辑编程语言)基于规则语言(逻辑编程语言)以条件作为驱动而执行相应动作的语言。规则以条件作为驱动而执行相应动作的语言。规则=条条件件+动作动作类似于命令式语言,但语句不是连续的,启用条件类似于命令式语言,但语句不是连续的,启用条件决定语句的决定语句的 执行顺序。其一般语法形式为:执行顺序。其一般语法形式为:启用条件1 动作1启用条件2 动作2该模型可看作是应用于数据的一个过滤器集合。通该模型可看作是应用于数据的一个过滤器集合。通过使用过滤器来改变状态。其操作过程如图所示。过使用过滤器来改变状态。其操作过程如图所示。模型的优点:较好的灵活性和决策推理性。模型的优点:较好的灵活性和决策推理性。语言实例:语言实例:PrologProlog语言。语言。应用领域:人工智能和决策支持。应用领域:人工智能和决策支持。l面向对象语言面向对象语言以对象为程序单元。以对象为程序单元。通过建立复杂的数据对象,并且设计有限的通过建立复杂的数据对象,并且设计有限的函数集对对象实施操作。函数集对对象实施操作。模型的优点:结合命令式和应用式语言的优模型的优点:结合命令式和应用式语言的优点。具有较高的效率以及较好的灵活性和可点。具有较高的效率以及较好的灵活性和可靠性。靠性。语言实例:语言实例:VCVC+,Java,Java等等应用领域:科学计算、系统设计、商业应用、应用领域:科学计算、系统设计、商业应用、工业控制等领域。工业控制等领域。计算模型的一般性l意大利面条代码意大利面条代码程序没有明显的结构,程序的控制跳转随意。程序没有明显的结构,程序的控制跳转随意。程序模块可能存在多个入口和出口。程序模块可能存在多个入口和出口。缺点:缺点:l模块之间的分解不易确定,分工协作较困模块之间的分解不易确定,分工协作较困难。难。l程序运行时难以确定任何点上的计算机状程序运行时难以确定任何点上的计算机状态。态。l程序的可读性和可维护性较差。程序的可读性和可维护性较差。l结构化程序代码结构化程序代码属于应用式模型,程序具有明显的结构,程属于应用式模型,程序具有明显的结构,程序的控制跳转不是随意的。序的控制跳转不是随意的。程序模块只有存在一个入口和出口。程序模块只有存在一个入口和出口。优点:优点:l模块之间的分界易确定,易于分工协作。模块之间的分界易确定,易于分工协作。l程序的可读性和可维护性较好。程序的可读性和可维护性较好。返回1.6 1.6 语言标准语言标准lint i;i=(1&2)+3;int i;i=(1&2)+3;该该C C代码有效?代码有效?i i的值?的值?l方法:方法:阅读阅读C C语言手册?语言手册?编程试验?编程试验?按语言标准理解?按语言标准理解?l语言开发商可能希望加入新的特征以增加功能,语言开发商可能希望加入新的特征以增加功能,增加的特性是否合法?用户是否能够对语言进增加的特性是否合法?用户是否能够对语言进行扩充,扩充后的语言能否在其它系统上运行行扩充,扩充后的语言能否在其它系统上运行?l标准化分类:标准化分类:专有化标准:语言开发商定义。一般不适用专有化标准:语言开发商定义。一般不适用于已经流行并广泛使用的语言。由于在使用于已经流行并广泛使用的语言。由于在使用过程中很快有许多增强但不兼容的语言版本过程中很快有许多增强但不兼容的语言版本出现。出现。共识性标准:相关组织定义。是使一种语言共识性标准:相关组织定义。是使一种语言在几个实现中保证相同性的主要方法。在几个实现中保证相同性的主要方法。l标准化组织:标准化组织:美国国家标准协会(美国国家标准协会(ANSIANSI);电子电器工程师协会(电子电器工程师协会(IEEEIEEE););计算机商业设备制造商联盟的计算机商业设备制造商联盟的X3X3委员会委员会(CBEMACBEMA);英国标准协会(英国标准协会(BSIBSI)。)。国际标准化组织(国际标准化组织(ISOISO););l影响标准化的因素:影响标准化的因素:时机性时机性:什么时候标准化一个语言最合适什么时候标准化一个语言最合适?不能太早,否则人们还没有足够的使用经不能太早,否则人们还没有足够的使用经验,难以被接受(如验,难以被接受(如AdaAda语言);也不能语言);也不能太晚,否则已经了许多不兼容的版本,在太晚,否则已经了许多不兼容的版本,在标准化较为困难(如标准化较为困难(如FortranFortran语言)。而语言)。而应该在它们正在发展的时候标准化最为合应该在它们正在发展的时候标准化最为合适,如适,如C C和和PascalPascal。一致性:对于一个符合标准的程序和能一致性:对于一个符合标准的程序和能编译标准程序的编译器,它意味着什么?编译标准程序的编译器,它意味着什么?在标准化的保证下,符合该语言标准的程序能够在标准化的保证下,符合该语言标准的程序能够正确执行,即程序具有一致性;对于一致性程正确执行,即程序具有一致性;对于一致性程序能够产生正确执行结果的编译器,称之为一序能够产生正确执行结果的编译器,称之为一致性编译器。致性编译器。时效性:标准的有效性有多久?时效性:标准的有效性有多久?一般在一般在5-105-10年就需要修改,注意语言的向后兼年就需要修改,注意语言的向后兼容性。容性。返回国际化国际化 语言进行国际化问题语言进行国际化问题排序问题:不同的字符在不同的国家具有不同的意排序问题:不同的字符在不同的国家具有不同的意义。义。大小写:有些国家的字符具有大小写区分,而有写大小写:有些国家的字符具有大小写区分,而有写国家的字符不具有大小写区分,如日文,中文,阿国家的字符不具有大小写区分,如日文,中文,阿拉伯语。拉伯语。读取方向:左到右、右到左、上到下等。读取方向:左到右、右到左、上到下等。日期格式:如美国日期格式:如美国10/25/201910/25/2019、英国、英国25/10/201925/10/2019、法国法国25.10.201925.10.2019、意大利、意大利25_25_X_2019X_2019、中国中国2019.10.252019.10.25时间格式:如美国时间格式:如美国3:303:30p.mp.m;中国中国15:3015:30;法国;法国1515h30h30时区:格林威治时间,夏时制。时区:格林威治时间,夏时制。货币:不同国家具有不同的货币单位。货币:不同国家具有不同的货币单位。1.7 1.7 编程环境编程环境l编程环境:编程环境:程序一般在编程环境下开发和测程序一般在编程环境下开发和测试。什么是编程环境?支持工具(编辑器、编试。什么是编程环境?支持工具(编辑器、编译器、调试器、验证器、测试数据产生器、打译器、调试器、验证器、测试数据产生器、打印器等)印器等)+命令。每一种支持工具其本身既是命令。每一种支持工具其本身既是一个程序。一个程序。l编程环境对语言设计的影响编程环境对语言设计的影响 主要表现在两个方面:主要表现在两个方面:1 1)单独编译和汇编)单独编译和汇编 2 2)测试和调试)测试和调试分别编译:将程序的各个组成部分分别进行分别编译:将程序的各个组成部分分别进行设计、编码、编译、测试、调试,然后连接设计、编码、编译、测试、调试,然后连接成一个完整的程序。成一个完整的程序。要求:要求:程序具有结构化的特性。程序具有结构化的特性。实现的难点:实现的难点:一、程序的各个模块本身具有相互关联性,一、程序的各个模块本身具有相互关联性,当编译一个子程序时,编译器可能需要其他当编译一个子程序时,编译器可能需要其他子程序或共享数据对象的信息,比如:子程序或共享数据对象的信息,比如:1 1)调用外部子程序的参数的数量、顺序和)调用外部子程序的参数的数量、顺序和 类型等信息。类型等信息。2 2)应用的外部变量的类型、存储形式等。)应用的外部变量的类型、存储形式等。3 3)与局部变量同名的外部变量信息。)与局部变量同名的外部变量信息。解决方法:解决方法:1 1)将信息在子程序中重定义,如)将信息在子程序中重定义,如fortranfortran语语言。多人编程时,有些困难,也易出错。言。多人编程时,有些困难,也易出错。2 2)规定特别的编译顺序:要求每个程序的)规定特别的编译顺序:要求每个程序的编译跟在所有调用则程序和共享数据的声明编译跟在所有调用则程序和共享数据的声明之后,如之后,如pascalpascal语言。语言。3 3)用一个专门的运行库包含所有的相关声)用一个专门的运行库包含所有的相关声明信息。明信息。分别编译的缺点:在一般情况下,无法检查分别编译的缺点:在一般情况下,无法检查外部子程序相关信息的一致性以及在子程序外部子程序相关信息的一致性以及在子程序中重新声明的数据。中重新声明的数据。二二、同名问题:不同编程人员使用相同子程、同名问题:不同编程人员使用相同子程序、全局变量名字。序、全局变量名字。解决方法:解决方法:1 1)各个编程人员(小组)在程序编制之前相互沟)各个编程人员(小组)在程序编制之前相互沟通和协调,避免使用相同的名字,每个编程人员通和协调,避免使用相同的名字,每个编程人员(小组)用它们约定的特殊字符作为名字的开头,(小组)用它们约定的特殊字符作为名字的开头,如如a a组用前缀组用前缀aaaa,b b组用前缀组用前缀bbbb。C C中中#include#include文件文件中的名字一般用前缀中的名字一般用前缀_._.2 2)使用范围规则来屏蔽名字,如一个子程序包含)使用范围规则来屏蔽名字,如一个子程序包含在另一个子程序中,则只有最外层子程序中的名字在另一个子程序中,则只有最外层子程序中的名字对其他分别编译的子程序右影响。如对其他分别编译的子程序右影响。如PascalPascal。3 3)通过从外部库中显式增加名字定义,如面向对)通过从外部库中显式增加名字定义,如面向对象语言中的继承机制。利用重载技术,允许不同的象语言中的继承机制。利用重载技术,允许不同的对象使用相同的名字。对象使用相同的名字。l测试与调试:跟踪执行、断点、断言。测试与调试:跟踪执行、断点、断言。跟踪执行:提供对特殊语句及变量作标记以跟踪执行:提供对特殊语句及变量作标记以便在程序中跟踪的特性。便在程序中跟踪的特性。断点:提供在程序中某处设立断点的特性。断点:提供在程序中某处设立断点的特性。断言断言(assertions):程序中作为单独语句插入的程序中作为单独语句插入的条件表达式。如条件表达式。如 assert(X0 and A=1)or(X=0 and AB+10);当断言激活时,编译器当断言激活时,编译器会判断条件,如条件不满足,则中断程序进会判断条件,如条件不满足,则中断程序进入异常处理。程序调试后,断言可被屏蔽而入异常处理。程序调试后,断言可被屏蔽而成为程序中有用的注释。成为程序中有用的注释。本章小节本章小节通过学习本章:通过学习本章:我们知道学习程序设计语言可以增强我们设计我们知道学习程序设计语言可以增强我们设计高效算法的能力,能够提高我们对现存程序语高效算法的能力,能够提高我们对现存程序语言的运用能力,使我们更容易学习和掌握新的言的运用能力,使我们更容易学习和掌握新的语言。语言。程序设计语言经过了低级语言(机器语言、汇程序设计语言经过了低级语言(机器语言、汇编语言)到高级语言的发展,而且仍在继续不编语言)到高级语言的发展,而且仍在继续不断的发展和变化。断的发展和变化。各种不同的语言具有不同的特点和在不同应用各种不同的语言具有不同的特点和在不同应用领域具有各自的优势。领域具有各自的优势。影响程序设计语言的主要因素有:计算机性能,影响程序设计语言的主要因素有:计算机性能,应用领域的要求,编程方法,实现方法和标准应用领域的要求,编程方法,实现方法和标准化。化。程序设计已经涉及到社会各个领域的应用,经程序设计已经涉及到社会各个领域的应用,经历着应用程序的历着应用程序的“简单性简单性”到到“复杂性复杂性”;编;编程强调程强调“技巧性技巧性”到到“可读性可读性”;追求实现的;追求实现的“高效性高效性”到到“可维护性可维护性”和强调和强调“可移植性可移植性”的演变。的演变。程序一般计算模型有:命令式语言、应用式语程序一般计算模型有:命令式语言、应用式语言、基于规则语言和面向对象语言四种,各自言、基于规则语言和面向对象语言四种,各自具有优点。目前主要使用的仍然是命令式语言具有优点。目前主要使用的仍然是命令式语言和面向对象语言。和面向对象语言。语言的标准化有专有化标准和共识性标准两语言的标准化有专有化标准和共识性标准两个种类,一般强调的是后者。影响标准化的个种类,一般强调的是后者。影响标准化的因素有时机性、一致性和时效性。因素有时机性、一致性和时效性。编程环境是指一些帮助程序设计与实现的支编程环境是指一些帮助程序设计与实现的支持工具和命令,它对语言设计的编辑、编译持工具和命令,它对语言设计的编辑、编译测试与调试有着较大的影响。编程环境对语测试与调试有着较大的影响。编程环境对语言设计的影响主要表现在两个方面:言设计的影响主要表现在两个方面:1)1)单独单独编译和汇编编译和汇编,2),2)测试和调试测试和调试习题T4,6.T4,6.补充习题:补充习题:1 1)简述程序设计语言的发展简史。)简述程序设计语言的发展简史。2 2)解释算法、数据结构的含义。)解释算法、数据结构的含义。3 3)程序语言的使用代价有哪几种量度。)程序语言的使用代价有哪几种量度。4 4)程序语言一般有哪几种计算模型,各有)程序语言一般有哪几种计算模型,各有和特点。和特点。END
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!