导图社区 计算机软件
计算机软件知识总结,包括计算机语言的发展、常用程序设计语言、程序设计语言处理系统、算法和数据结构等内容。
编辑于2021-11-13 14:49:13第三章 计算机软件
3.2程序设计语言
3.2.1计算机语言的发展
一、发展经历
1、机器语言(面向机器)
(1)定义:能直接识别和接受的二进制代码称为机器指令。机器指令的集合就是该计算机的机器语言。
(2)特点:效率最高、执行速度最快,可移植性差,人们已不再使用
2、汇编语言(面向机器)
(1)定义:用助记符来代替机器指令的操作数和操作码,如用ADD表示加法,SUB表示减法
3、高级语言
(1)定义:接近人们自然语言的程序设计语言
(2)特点:具有通用性,即可在不同计算机上通用
3.2.2常用程序设计语言
一、FORTRAN语言
1、定义:是一种主要用于数值计算的面向过程的程序设计语言
2、特点:面向过程、接近数学公式
二、BASIC语言和VB语言
1、VB:是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言,基于BASIC基础上开发的
三、Pascal语言
1、特点
(1)既适用于数值计算、又适用于数据处理
(2)面向过程,系统体现结构程序设计思想的第一种语言
四、C语言和C++语言
1、C语言
(1)C语言与支撑环境分离,可移植性好,运行效率高
(2)UNIX就是用C语言编写的
(3)面向过程程序设计的主流语言
2、C++语言
(1)是以C语言为基础发展起来的通用程序设计语言
(2)内置面向对象的机制、支持数据抽象、
(3)能与C语言兼容
五、C#语言
1、是由C语言和C++衍生出来的面向对象编程语言
六、Java语言
1、面向对象的、用于网络环境的程序设计语言
2、适用于网络分布环境,具有一定的平台独立性、安全性和稳定性
七、Python语言
1、面向对象、免费开源
3.2.3程序设计语言处理系统
一、用机器语言编写的程序可以被计算机直接执行,用其他任何语言编写的程序计算机都不能直接识别和执行,必须经过“翻译”
二、作用:是把汇编语言和高级语言编写的程序翻译成可在计算机上直接执行的程序
三、三种翻译程序
1、汇编程序:可将汇编语言编写的源程序翻译成目标程序
2、解释程序:按源程序中语句的执行顺序,翻译一句执行一句,不产生目标程序,相当于“口译”实现算法简单,但运行效率低
3、编译程序:会一次性全部翻译好,产生目标程序,可供多次执行,运行效率高
4、被翻译的程序称为源程序,翻译生成的程序称为目标程序
四、组成:编辑程序、翻译程序、连接程序、装入程序
3.3算法和数据结构
沃思提出:程序=数据结构+算法
3.3.1算法
1、定义:要使用计算机解决某个问题,首先必须进行问题分析,确定该问题的解决方法与步骤
2、特性:有穷性、确定性、可行性、输入、输出
3、常用的算法描述:自然语言、流程图、伪代码、计算机语言
4、查找方式:顺序查找、二分查找
5、算法分析:在衡量、比较算法的优劣时,除了要考虑其正确性之外还需考虑
(1)时间复杂度:表示一种算法的执行所需的时间的数量级
(2)空间复杂度:表示一种算法的执行所需的空间的数量级
3.3.2数据结构
一、定义:指数据对象在计算机中的组织方式——类似于图书的摆放方法
二、特点:数据对象必定与一系列施加于数据对象之上的操作相关联
三、主要研究内容
1、数据的逻辑结构
(1)定义:指数据元素之间的逻辑关系,与数据在计算机内部的存储结构无关
(2)分类
集合结构:任何两个数据元素之间都没有逻辑关系,组织形式松散
线性结构:结构中的书局元素之间存在一个对一个的关系,最常用
树形结构:存在一个对多个的关系
图状结构:存在多个对多个的关系
2、数据存储结构
(1)定义:是指数据元素在计算机存储设备中的存储方式,包括数据元素的表示和关系的表示
(2)分类
顺序存储结构:是一组连续的内存空间,依次存放线性表的每一个数据元素,逻辑上相邻的数据元素其物理位置也相邻
链式存储结构:指数据元素之间不要求连续存放,每个数据元素必须有一个能反映逻辑上后继元素在内存中位置的信息,存放该信息的部分称为链域(指针)
3、数据的操作算法
(1)定义:数据的运算是指施加于数据对象之上的各种操作
(2)运算:插入、更新、删除等