《大学计算机信息技术.ppt》由会员分享,可在线阅读,更多相关《大学计算机信息技术.ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术第三章第三章第三章第三章 计算机软件计算机软件计算机软件计算机软件(二二二二)大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3 3.3 3.3 3.3 程序设计语言及程序设计语言及程序设计语言及程序设计语言及语言处理程序语言处理程序语言处理程序语言处理程序3.3.1 3.3.1 程序设计语言分类程序设计语言分类3.3.2 3.3.2 语言中的数据成分和控制成分语言中的数据成分和控制成分3.3.3 3.3.3 语言处理系统语言处理系统3.3.4 3.3.4 主要程序语言介绍主要程序语言介绍大学计
2、算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.1 3.3.1 3.3.1 3.3.1 程序设计语言分类程序设计语言分类程序设计语言分类程序设计语言分类大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术1.1.1.1.机器语言机器语言机器语言机器语言由由0 0、1 1代码组成,能被计算机直接识别和执行的指令集合。代码组成,能被计算机直接识别和执行的指令集合。特点:特点:特点:特点:占用空间小、执行速度快,不易学习和修改占用空间小、执行速度快,不易学习和修改 不同类型不同类型机器机器机器机器的指令系统的指令系统(机器语言机器语言)不同,不同,通用性
3、差通用性差。2.2.2.2.汇编语言汇编语言汇编语言汇编语言(符号语言)符号语言)用助记符代替机器语言中的指令和数据用助记符代替机器语言中的指令和数据特点:特点:特点:特点:易修改,保持了速度快,占用空间小的特点易修改,保持了速度快,占用空间小的特点 不同类型不同类型机器机器机器机器的的汇编语言不同汇编语言不同3.3.3.3.高级语言高级语言高级语言高级语言由贴近自然语言的由贴近自然语言的“词词”和和“数学公式数学公式”组成组成 特点:特点:特点:特点:易学、易读,易修改,通用性好,不依赖于机器易学、易读,易修改,通用性好,不依赖于机器具有很强的具有很强的通用性通用性和和可移植性可移植性3.3
4、.1 3.3.1 3.3.1 3.3.1 程序设计语言分类程序设计语言分类程序设计语言分类程序设计语言分类大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.2 3.3.2 3.3.2 3.3.2 程序语言中的数据成程序语言中的数据成程序语言中的数据成程序语言中的数据成分和控制成分分和控制成分分和控制成分分和控制成分大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.2 3.3.2 3.3.2 3.3.2 程序语言基本成分程序语言基本成分程序语言基本成分程序语言基本成分高级语言种类繁多,但是其高级语言种类繁多,但是其基本成份基本成份都可归
5、纳为四种:都可归纳为四种:数据成分数据成分数据成分数据成分运算成分运算成分运算成分运算成分控制成分控制成分控制成分控制成分传输成分传输成分传输成分传输成分大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术数据作为程序操作的对象,具有名称、类型、作用域等特征。数据作为程序操作的对象,具有名称、类型、作用域等特征。使用前要对数据的这些特征加以说明。使用前要对数据的这些特征加以说明。数数据据名名称称由由用用户户通通过过标标识识符符命命名名,类类型型说说明明数数据据需需占占用用存存储储单元的多少和存放形式,作用域说明数据可以使用的范围。单元的多少和存放形式,作用域说明数据可以使用
6、的范围。以以VBVB语言为例,数据构造为:语言为例,数据构造为:数据类型数据类型基本类型基本类型派生类型派生类型算术类型算术类型字符类型字符类型枚举类型枚举类型整型整型实型实型单精度单精度双精度双精度数组数组用户定义类型用户定义类型3.3.2 3.3.2 3.3.2 3.3.2 程序语言基本成分程序语言基本成分程序语言基本成分程序语言基本成分1.1.数据成分数据成分数据成分数据成分大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术控控制制成成分分提提供供一一种种基基本本框框架架,在在此此基基本本框框架架支支持持下下,可可以以将数据和对数据的运算组合成程序。将数据和对数据的
7、运算组合成程序。(1)(1)顺序结构顺序结构顺序结构顺序结构用来表示一个操作(或语句)用来表示一个操作(或语句)的序列。从操作序列的第一的序列。从操作序列的第一 个操作开始,顺序执行个操作开始,顺序执行,直至直至 序列的最后一个操作。序列的最后一个操作。3.3.2 3.3.2 3.3.2 3.3.2 程序语言基本成分程序语言基本成分程序语言基本成分程序语言基本成分2.2.控制成分控制成分控制成分控制成分A AB B表示形式:表示形式:表示形式:表示形式:A A A A B B B B大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.2 3.3.2 3.3.2 3.
8、3.2 程序语言基本成分程序语言基本成分程序语言基本成分程序语言基本成分2.2.控制成分控制成分控制成分控制成分(2)(2)条件选择结构条件选择结构条件选择结构条件选择结构由一个条件(由一个条件(P)和两个供选择的操作和两个供选择的操作A和和B组成。组成。执行过程执行过程:先计算条件表达式先计算条件表达式P的值,的值,如果如果P的值为真,则执行操的值为真,则执行操 作作A;否则执行操作否则执行操作B。A AB BP P真真真真假假假假条件选择结构条件选择结构表示形式:表示形式:表示形式:表示形式:IF P THEN AIF P THEN AIF P THEN AIF P THEN A ELSE
9、 B ELSE B ELSE B ELSE B 大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术(3)重复结构重复结构重重复复结结构构为为程程序序描描述述重重复复计计算算过过程程提提供供控控制制手手段段,重重复复结结构构有有多多种种形形式式,最最基基本本的的形形式式为为 whilewhile型型重重复结构。复结构。3.3.2 3.3.2 3.3.2 3.3.2 程序语言基本成分程序语言基本成分程序语言基本成分程序语言基本成分2.2.控制成分控制成分控制成分控制成分A AP P假假真真WhileWhile型重复结构型重复结构表示形式:表示形式:表示形式:表示形式:DO W
10、HILE P DO WHILE P DO WHILE P DO WHILE P A A A A LOOP LOOP LOOP LOOP 大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.3 3.3.3 3.3.3 3.3.3 语言处理系统语言处理系统语言处理系统语言处理系统大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.3.3 3.3.3 3.3.3 3.3.3 语言处理系统语言处理系统语言处理系统语言处理系统1.1.1.1.语言处理系统的作用:语言处理系统的作用:语言处理系统的作用:语言处理系统的作用:把把用用非非机机器器语语言言编编
11、写写的的各各种种程程序序变变换换成成可可在在计计算算机机上上执执行行的程序,或最终的计算结果,或其他中间形式。的程序,或最终的计算结果,或其他中间形式。2.2.2.2.语言处理系统包括:语言处理系统包括:语言处理系统包括:语言处理系统包括:可执行可执行目标程目标程序序程序模块程序模块程序模块1 11程序模块程序模块程序模块n nn正文正文编辑编辑源程序源程序源程序1 11源程序源程序源程序n nn编译编译编译编译目标程序目标程序目标程序1 11目标程序目标程序目标程序n nn联接联接编辑编辑装入装入执行执行结结结果果果库库库文件文件文件编辑、编译、装入和执行过程编辑、编译、装入和执行过程编辑、
12、编译、装入和执行过程编辑、编译、装入和执行过程大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术 程程序序语语言言处处理理系系统统与与被被处处理理的的语语言言及及其其处处理理方方法法和和处处理理过程有关。过程有关。每个语言处理系统通常都包含一个翻译程序。每个语言处理系统通常都包含一个翻译程序。3.3.3.3.翻译程序翻译程序翻译程序翻译程序3.3.3 3.3.3 3.3.3 3.3.3 语言处理系统语言处理系统语言处理系统语言处理系统 概念:源语言和源程序概念:源语言和源程序 目标语言和目标程序目标语言和目标程序什么是计算机语言?什么是计算机语言?汇编语言汇编语言源程序源
13、程序源程序源程序 目标程序目标程序目标程序目标程序高级语言高级语言源程序源程序源程序源程序 编译程序编译程序汇编程序汇编程序大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术(2)(2)对高级语言源程序的翻译对高级语言源程序的翻译对高级语言源程序的翻译对高级语言源程序的翻译解释程序:对源程序从头到尾逐句扫描,翻译一句执行一句。解释程序:对源程序从头到尾逐句扫描,翻译一句执行一句。不形成目标程序。相当于自然语言的不形成目标程序。相当于自然语言的“口译口译”。特点特点特点特点:实现算法简单、运行效率低实现算法简单、运行效率低3.3.3.3.翻译程序翻译程序翻译程序翻译程序3.
14、3.3 3.3.3 3.3.3 3.3.3 语言处理系统语言处理系统语言处理系统语言处理系统(1)(1)(1)(1)对汇编语言的源程序的翻译对汇编语言的源程序的翻译对汇编语言的源程序的翻译对汇编语言的源程序的翻译 汇编程序汇编程序:将将汇编语言的源程序翻译成目标程序汇编语言的源程序翻译成目标程序编译程序:对源程序扫描一遍或几遍,最终形成一个可在编译程序:对源程序扫描一遍或几遍,最终形成一个可在 计算机上执行的目标程序计算机上执行的目标程序。相当于相当于“笔译笔译”。特点特点特点特点:高效运行,以备多次执行、实现算法较为复杂高效运行,以备多次执行、实现算法较为复杂大学计算机信息技术大学计算机信息
15、技术大学计算机信息技术大学计算机信息技术3.3.4 3.3.4 3.3.4 3.3.4 主要程序语言介绍主要程序语言介绍主要程序语言介绍主要程序语言介绍大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术最早的一种高级语言最早的一种高级语言主要用于数值计算方面的程序设计语言。主要用于数值计算方面的程序设计语言。特点:特点:接近数学公式、简单易用。允许复数与双精度实数运算接近数学公式、简单易用。允许复数与双精度实数运算1.FORTRAN1.FORTRAN1.FORTRAN1.FORTRAN语言语言语言语言3.3.4 3.3.4 3.3.4 3.3.4 主要程序语言介绍主要程序
16、语言介绍主要程序语言介绍主要程序语言介绍2.ALGOL2.ALGOL2.ALGOL2.ALGOL语言语言语言语言 程序设计语言发展史上的里程碑。程序设计语言发展史上的里程碑。后继语言后继语言PASCAL被称为第一个结构化程序设计语言。被称为第一个结构化程序设计语言。PASCALPASCAL语言:具有丰富的数据类型和灵活的控制结构,语言:具有丰富的数据类型和灵活的控制结构,编译效率高,强调程序的可靠性和易于验证性曾经成为大编译效率高,强调程序的可靠性和易于验证性曾经成为大学程序设计教学的优选语言。学程序设计教学的优选语言。大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术
17、由由SUNSUN公公司司于于19951995年年5 5月月正正式式对对外外公公布布的的一一种种面面向向对对象象的的、用于网络环境的程序设计语言。用于网络环境的程序设计语言。特特点点:适适用用于于网网络络分分布布环环境境,具具有有一一定定的的平平台台独独立立性性、安安全性和稳定性。全性和稳定性。3.Java3.Java3.Java3.Java语言语言语言语言3.3.4 3.3.4 3.3.4 3.3.4 主要程序语言介绍主要程序语言介绍主要程序语言介绍主要程序语言介绍大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术 C C C C语言:语言:语言:语言:19721972年
18、至年至19731973间由间由ATATT T公司公司BellBell实验室的实验室的D.M.Ritchie D.M.Ritchie 在在BCPLBCPL语言基础上设计而成的,著名的语言基础上设计而成的,著名的UNIXUNIXUNIXUNIX操作系统操作系统操作系统操作系统就是用就是用C C语言编写的。语言编写的。特点:特点:特点:特点:语言与运行支撑环境分离、可移植性好、语言规模小因而语言与运行支撑环境分离、可移植性好、语言规模小因而相对简单、具有指针类型等,相对简单、具有指针类型等,C C语言本身简洁、高度灵活、程语言本身简洁、高度灵活、程序运行效率高。此外,在序运行效率高。此外,在C C语
19、言中,有不少操作直接对应实际语言中,有不少操作直接对应实际机器所执行的动作,并在许多场合可以代替汇编语言。机器所执行的动作,并在许多场合可以代替汇编语言。4.C4.C4.C4.C语言和语言和语言和语言和C+C+C+C+语言语言语言语言3.3.4 3.3.4 3.3.4 3.3.4 主要程序语言介绍主要程序语言介绍主要程序语言介绍主要程序语言介绍大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术 C+C+C+C+语言语言语言语言:以以C C语语言言为为基基础础发发展展起起来来的的通通用用程程序序设设计计语语言言。C+C+内内置置面面向向对对象象的的机机制制,支支持持数数据据
20、抽抽象象。最最先先由由Be11Be11实实验验室室的的B.B.stroustrupstroustrup在在19801980年代设计并实现,至今仍在不断发展。年代设计并实现,至今仍在不断发展。C+C+C+C+语语语语言言言言是是是是对对对对C C C C语语语语言言言言的的的的扩扩扩扩充充充充,扩扩充充的的内内容容绝绝大大部部分分来来自自其其他他著著名名语语言言(如如SimulaSimula、ALGOL68ALGOL68、AdaAda等等)的的最最佳佳特特性性。由由于于C+C+语语言言既既有有数数据据抽抽象象和和面面向向对对象象能能力力,运运行行性性能能高高,又又能能与与C C语语言言相相兼兼容
21、容,使使得得数数量量巨巨大大的的C C语语言言程程序序能能方方便便地地在在C+C+语语言言环环境境中中重重用用。因因而而近近近近年年年年来来来来C+C+C+C+语语语语言言言言迅迅迅迅速速速速流流流流行行行行,成成成成为为为为当前当前当前当前 面向对象程序设计的主流语言。面向对象程序设计的主流语言。面向对象程序设计的主流语言。面向对象程序设计的主流语言。4.C4.C4.C4.C语言和语言和语言和语言和C+C+C+C+语言语言语言语言3.3.4 3.3.4 3.3.4 3.3.4 主要程序语言介绍主要程序语言介绍主要程序语言介绍主要程序语言介绍大学计算机信息技术大学计算机信息技术大学计算机信息技
22、术大学计算机信息技术3.43.43.43.4算法和计算机软件理论基础算法和计算机软件理论基础算法和计算机软件理论基础算法和计算机软件理论基础3.4.1 3.4.1 算法和数据结构算法和数据结构3.4.2 3.4.2 计算机软件理论基础计算机软件理论基础大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.4.1 3.4.1 3.4.1 3.4.1 算法和数据结构算法和数据结构算法和数据结构算法和数据结构大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.4.1 3.4.1 3.4.1 3.4.1 算法和数据结构算法和数据结构算法和数据结构算法和数据
23、结构1.1.算法(算法(算法(算法(AlgorithmAlgorithm)(1)(1)(1)(1)什么是算法什么是算法什么是算法什么是算法 算法是问题求解规则的一种过程描述算法是问题求解规则的一种过程描述,不同于程序。不同于程序。它它定义一系列规则,即指定了相应的操作顺序,在有限定义一系列规则,即指定了相应的操作顺序,在有限的步骤内得到所求问题的解答。的步骤内得到所求问题的解答。算法的设计一般采用由粗到细,由抽象到具体的逐步算法的设计一般采用由粗到细,由抽象到具体的逐步求精的方法。求精的方法。例如:要对包含例如:要对包含例如:要对包含例如:要对包含n n个整数元素的数组个整数元素的数组个整数元
24、素的数组个整数元素的数组A A进行排序。进行排序。进行排序。进行排序。(2)(2)算法的基本性质:算法的基本性质:算法的基本性质:算法的基本性质:确定性、有穷性、确定性、有穷性、能能行性、输入、输出行性、输入、输出 注意:算法与程序的区别注意:算法与程序的区别(P117)大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术判断一个算法的好坏,除保证判断一个算法的好坏,除保证正确性正确性正确性正确性外,还应考虑:外,还应考虑:占用的计算机资源占用的计算机资源是否易理解、易调试和易测试等是否易理解、易调试和易测试等3.4.1 3.4.1 3.4.1 3.4.1 算法和数据结构算
25、法和数据结构算法和数据结构算法和数据结构1.1.算法(算法(算法(算法(AlgorithmAlgorithm)(3)(3)(3)(3)算法分析算法分析算法分析算法分析 时间代价时间代价空间代价空间代价时间代价时间代价时间代价时间代价:依据算法编制为程序后,在计算机中:依据算法编制为程序后,在计算机中运行时所耗费的时间大小运行时所耗费的时间大小;空间代价空间代价空间代价空间代价:解决问题的算法实现时所占用存储空:解决问题的算法实现时所占用存储空间特性的数量级间特性的数量级大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术3.4.1 3.4.1 3.4.1 3.4.1 算法和
26、数据结构算法和数据结构算法和数据结构算法和数据结构2.2.数据结构(数据结构(数据结构(数据结构(Data StructuresData Structures)(1)(1)(1)(1)数据结构数据结构数据结构数据结构:研究程序设计中计算机操作对象以及它们之间关系和运算研究程序设计中计算机操作对象以及它们之间关系和运算的一个专门学科。的一个专门学科。(2)(2)(2)(2)研究数据结构一般包括三个方面的内容:研究数据结构一般包括三个方面的内容:研究数据结构一般包括三个方面的内容:研究数据结构一般包括三个方面的内容:逻辑结构逻辑结构:只抽象地反映数据元素间的逻辑关系只抽象地反映数据元素间的逻辑关系
27、 数据的存储结构数据的存储结构:数据数据在计算机存储器上的实现。在计算机存储器上的实现。在在数数据据上上定定义义的的运运算算的的集集合合:对对各各种种数数据据逻逻辑辑结结构构有有相相应的各类运算,每种逻辑结构都有一个运算的集合。应的各类运算,每种逻辑结构都有一个运算的集合。常用的运算有:检索、插入、删除、更新、排序等。常用的运算有:检索、插入、删除、更新、排序等。大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术Q1:请上网使用搜索引擎查出这些软件分别是哪些公司出品?大学计算机信息技术大学计算机信息技术大学计算机信息技术大学计算机信息技术2Q1:请上网使用搜索引擎查出这些软件分别是哪些公司出品?