计算机的基本概念
什么是计算机?
计算机是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统。
计算机能够完成的基本操作及其主要功能:
输入:接受由输入设备(如键盘、鼠标器、扫描仪等)提供的数据。
处理:对数值、逻辑、字符等各种类型的数据进行操作,按指定的方式进行转换。 输出:将处理所产生结果等数据送到相关输出设备。
存储:存储程序和数据。
计算机的分类
按处理对象分类
数字计算机
模拟计算机
数字模拟混合计算机
按用途分类
通用计算机
专用计算机
计算机的发展
第一代计算机(1946年~1957年)
第二代计算机(1958年~1964年)
第三代计算机(1965年~1971年)
第四代计算机(1972年~1981年)
第五代计算机(1982年~1992年)
第六代计算机(1993年~?)
第一代(1946-1957)
电子管技术,核心元件是电子管,速度几千次/秒,用于军事与科学研究。
第二代(1958-1964)
半导体技术,核心元件是晶体管,速度几十万次/秒,用于科学计算、数据和事务处理 。 第三代(1965-1971)
固体物理技术,核心元件是中小规模集成电路,在几平方毫米单晶硅片上集成十几个至上百个电子元件;速度几十万至几百万次/秒;用于各个科学领域 。
第四代(1972至1981年)
核心元件是大规模和超大规模集成电路(如“奔腾4处理器”包含4200万个晶体管) ;速度上千万次至上亿次/秒;进入现代社会各个领域。 超大规模集成电路应用的直接结果是微型计算机的诞生。
第五代计算机 超大规模集成电路和人工智能
是一种有知识,会学习,能推理的计算机,具有能理解自然语言,声音,文字和图像的能力,并且具有说话的能力,使人机能够用自然语言直接对话,它可以利用已有的和不断学习到的知识,进行思维,联想,推理,并得出结论,能解决复杂问题,具有汇集,记忆,检索有关知识的能力。
智能计算机突破了传统的诺伊曼式机器的概念,舍 弃了二进制结构,把许多处理机并联起来,并行处理信息,速度大大提高。它的智能化人机接口使人们不必编写程序,只需发出命令或提出要求,电脑就会完成推理和判断,并且给出解释。1988年,世界上召开了第五代电脑国际会议。1991年,美国加州理工学院推出了一种大容量并行处理系统,用528
台处理器并行进行工作,其运算速度可达到每秒320亿次浮点运算。
第六代计算机 神经网络计算机
第六代电子计算机是模仿人的大脑判断能力和适应能力,并具有可并行处理多种数据功能的神经网络计算机。与以逻辑处理为主的第五代计算机不同,它本身可以判断对象的性质与状态,并能采取相应的行动,而且它可同时并行处理实时变化的大量数据,并引出结论。以往的信息处理系统只能处理条理清晰、经络分明的数据。而人的大脑活动具有能处理零碎、含糊不清信息的灵活性,第六代电子计算机将类似人脑的智慧和灵活性 。
计算机发展史上的重要人物 计算机之父:冯·诺依曼
英国数学家图灵(Turing):创建了自动机理论,发展了可计算机性理论,奠定了人工智能的基础。
美籍匈牙利数学家冯. 诺依曼(Von Neumann):确立了现代计算机的基本结构,即冯. 诺依曼体系结构。
图灵机由一个控制器和一根假设两端无界的工作带组成,工作带起着存储器的作用,它被划分为大小相同的方格,每一格上可书写一个给定字母表上的符号。控制器可以在带上左右移动,控制带有一个读写头,读写头可以读出控制器访问的格子上的符号,也能改写和抹去这一符号。
这一装置只是一种理想的计算模型,或者说是一种理想中的计算机。正如飞机的真正成功得力于空气动力学一样,图灵的这一思想奠定了整个现代计算机的理论基础。这就是电脑史上与" 冯·诺依曼机器" 齐名的" 图灵机" 。
计算机的特点; 运算速度快
运算精度高
具有记忆能力
具有逻辑判断能力
存储程序
计算机的用处; 科学计算
数据处理
实时控制
人工智能
娱乐与游戏
计算机辅助工程和辅助教育
计算机科学与技术学科简介
计算机科学技术是研究计算机的设计与制造,以及利用计算机进行信息获取、表示、存储、处理、控制等的理论、原则、方法和技术的学科。它包括科学与技术两方面。
计算机科学侧重于研究现象、揭示规律;计算机技术则侧重于研制计算机和研究使用计算机进行信息处理的方法与技术手段。
科学是技术的依据, 技术是科学的体现;技术得益于科学, 它又向科学提出新的课题。科学与技术相辅相成、互为作用, 二者高度融合是计算机科学技术学科的突出特点。
计算机科学研究范畴
包括计算机理论、硬件、软件、网络及应用等,按照研究的内容,也可以划分为基础理论、专业基础和应用三个层面。
十进制
数制:按进位的原则进行计数称为进位计数制,简称数制。
十进制:是使用数字1、2、… 、9、0等符号来表示数值且采用“逢十进一”的进位计数制。 位权表示法数制的特点: 数字的总个数等于基数。最大的数字比基数小1。每个数字都要
乘以基数的幂次,该幂次由每个数字所在的位置决定。
二进制
二进制:使用数字0和1等符号来表示数值且采用“逢二进一”的进位计数制。
二进制数制的特点:仅使用0和1两个数字。最大的数字为1,最小的数字为0。每个数字都要乘以基数2的幂次,该幂次由每个数字所在的位置决定。
二进制加法和乘法运算规则:
0+0=0 0 × 0=0
0+1=1 0 × 1=0
1+0=1 1 × 0=0
1+1=1 1 × 1=1
八进制与十六进制
八进制:使用数字0、1、2、3、4、5、6、7等符号来表示数值的,且采用“逢八进一”的进位计数制。
十六进制:使用数字0、1、2、3、4、5、6、7、8、9和A 、B 、C 、D 、E 、F 等符号来表示数值,其中A 、B 、C 、D 、E 、F 分别表示数字10、11、12、13、14、15。十六进制的计数方法为“逢十六进一”。
十进制整数转换为非十进制整数
除基取余法:“除基取余,先余为低(位),后余为高(位)”。
微型计算机硬件系统
计算机硬件系统的组成
主 机
硬件
外部设备 R A M /Cache)
运算器
运算器:对二进制数进行运算的部件。它在控制器的控制下执行程序中的指令, 完成各种算术运算、逻辑运算、比较运算、移位运算以及字符运算等。
运算器的组成:算术逻辑部件(ALU )完成加、减、乘、除等四则运算以及与、或、非、移位等逻辑运算;寄存器用来暂存参加运算的操作数或中间结果,常用的寄存器有累加
寄存器、暂存寄存器、标志寄存器和通用寄存器等。
运算器的主要技术指标:运算速度,其单位是MIPS (百万指令/秒),通常是按照一定的频度执行各类指令的统计值。
控制器:是指挥计算机的各个部件按照指令的功能要求协调工作的部件。
控制器的组成:
程序计数器(PC ):用来对程序中的指令进行计数,使控制器能依次读取指
令;
指令寄存器(IR ):在指令执行期间暂时保存正在执行的指令。
指令译码器(ID ):用来识别指令的功能,分析指令的操作要求。
时序控制电路:用来生成时序信号,以协调在指令执行周期内各部件的工作。
微操作控制电路:用来产生各种控制操作命令。
系统主板 每个元件直接连接到主板,并通过主板进行数据交换。它是一个较大的平面电路板,由5个部分组成:CPU 、存储器、总线、插槽以及电源。
微处理器 CPU 。
存储器 用来存储数据和程序的部件。
存储单位:“位”(bit )、“字节”(byte )、“字”和“字长”
存储容量:存储器所包含的存储单元的总数,其单位为K (1K =210=1024)。
存储器的分类:内存储器:又称为主存储器,简称为内存或主存,用来存放现行程序的指令和数据。包括随机存取存储器(RAM )和只读存储器(ROM )等。
输入/输出设备:简称为I/O设备,是外部与计算机交换信息的渠道。
输入设备:用于输入程序、数据、操作命令、图形、图像以及声音等信息。常用的输入设备有键盘、鼠标器、扫描仪、光笔、数字化仪以及语音输入装置等。
输出设备:用于显示或打印程序、运算结果、文字、图形、图像等,也可以播放声音。常用的输出设备有显示器、打印机、XY 绘图仪以及声音播放装置等。
计算机的指令系统
指令:能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一种操作。 指令系统:一台计算机能执行的所有指令的集合。
指令的格式:一条指令由操作码和地址码组成。操作码规定了该指令进行的操作种类;地址码给出了操作数、结果以及下一条指令的地址。
指令的分类:数据传送型指令 数据处理型指令 输入输出型指令 硬件控制指令
计算机性能指标
显卡的主要性能指标
声卡的性能指标
CPU 的性能指标
硬盘性能指标
音箱的主要性能指标
液晶显示器的性能指标
鼠标的性能指标
网卡的性能指标
内存的性能指标
第3章 计算机系统的软件
1.什么是软件?为运行、维护、管理及应用计算机所编制的所有程序及其文档资料的总和,称为计算机软件。简而言之,软件就是程序及其相关的文档。
软件分为三大类,即系统软件、支撑软件和应用软件。这种分法将软件开发工具和环境从应用软件中分出来,将支持其它软件开发与维护的软件,称之为支撑软件。 硬件与软件的关系:
(1)硬件是基础,但它只能执行二进制代码表示的机器语言程序。
(2)软件加硬件构成了功能更完善,使用更方便的虚拟机
(3)硬件与软件在逻辑功能上是等效的,它们之间没有固定不变的分界面(即硬件可软化,软件可硬化)
算法与程序
1. 什么是算法 算法是精确定义的一系列规则,这些规则指出如何从给定问题的输入
信息经过有限步骤产生出所求问题的输出信息。
不同算法必须遵循的共性
(1)确定性:算法的每一种运算必须有确切的定义
(2)能行性:算法中有待实现的运算都可在有限时间内完成。
(3)输入:一个算法有零个以上的输入。
(4)输出:一个算法产生一个或多个输出。
(5)有穹性:一个算法总是在执行了有穹步的运算后终止。
评价算法优劣的标准
(1)空间复杂性S (n ):按算法所编制的程序在计算机中所占用的存储单元的总数。n 是问题的规模,显然S (n )是随n 的增长而增加。
(2)时间复杂性f (n ):按算法所编制的程序在计算机执行时所耗费的时间。显然f (n )随 n 的增长而增加。
程序设计语言的发展过程 程序设计语言的发展已经历了四代,第五代语言尚处于萌芽状态。
1.第一代语言:机器语言 组成:由二进制指令代码组成,也称二进制语言。 特点:
(1)机器语言可由计算机硬件直接识别和执行,故用机器语言编制的程序效率较高。
(2)人工编写机器语言程序很繁琐,容易出错。
(3)通用性差,不同计算机有不同的机器语言。
2. 汇编语言
组成:由指令的助记符(指令的英文名称的缩写)及相关语法规则组成
特点:
(1)用汇编语言编制的程序称为汇编语言程序,它不能为计算机硬件直接识别和执行。必须通过汇编程序(一种系统软件),将汇编语言程序(源程序)“翻译”为机器语言程序(目标程序)后,才能执行。
(2)汇编语言指令与机器语言指令一一对应,仍然依赖于计算机的硬件,称它们为低级语言。
(3)不同计算机有不同的汇编语言,彼此不能通用。
(4)与机器语言相比,记忆指令助记符较记忆指令代码容易,但仍然很繁琐。
3.第三代语言:高级语言
组成:由表达各种意义的“词”、“数学公式”及特定的语法规则组成。由于它比较接近自然语言,并与机器的指令系统没有直接关系,故称它为高级程序设计语言,或算法语言。
特点:(1)可在不同的计算机上运行,通用性强。
(2)编程方便、简单、直观,不容易出错。
(3)用高级语言编写的源程序必须通过编译“或解释”生成机器语言程序(目标程序),才能在计算机上运行。
4.第四代语言:在高级语言基础上集成的模块化语言。
第四代语言实质上是可以快速开发应用软件的各种高生产率的软件工具的统称,它具有更强的编程功能。例如:
面向过程的第四代语言:SQL ,Power Builder 和Delphi 等。
面向对象的编程语言和网络语言:VB (Visual Basic) VC , C++ , HTML 和 Java 等。
各种软件开发工具。如CASE (计算机辅助软件工程),它已超出语言的范围,集语言、数据库于一体,形成了所谓信息系统应用生成工具。
5.第五代语言
第五代语言将是智能化语言,到目前为止,还没有公认的第五代语言出现。PROLOG 语言可能成为第五代语言最著名的雏形。
高级语言的基本结构
每种高级语言都有其自身的特点及特殊的用途,但它们的语法成份、层次结构却是相似的。研究它们的共性,有助于更好地学习高级语言。
高级语言的层次结构,一般由基本元素,表达式及语句组成。
基本元素:由基本符号组成,可分为数、逻辑值、名字、标号及字符串等五大类。基本符号包括单字符基本符号(字母、数字、特殊字符)及多字符基本符号。
表达式:由基本符号和基本元素组成,可分为算术表达式,逻辑表达式和字符串表达式。
语句:由基本元素、表达式等组成,通常包括下列语句:
赋值语句:实现计算或存储
转移语句:实现程序的转移
条件语句:实现条件的测试和判断
输入/输出语句:完成输入/输出任务
循环语句:实现循环运算
其它语句:实现其它特殊功能
操作系统 是由程序和数据结构组成的大型系统软件,它负责计算机的全部软硬件资源分配、调度与管理,控制各类程序的正常执行,并为用户使用计算机提供良好的环境。 操作系统的种类 按系统功能,可将操作系统分为下列几类:
(1)批处理操作系统 特点: 多个作业批量输入计算机,进行批量处理,无需人工干预。
分类: ① 单道批处理系统。② 多道批处理系统。
优缺点:① 多道批处理系统可使CPU 与外设、各外设之间并行操作,提高CPU 的利用率② 在处理过程中,无交互性,对运行中出现的问题不能及时处理。
(2)分时操作系统(分时系统) 特点:用户通过与计算机相连的终端,按时间片(如100ms )轮流使用计算机系统,直接与计算机交互,如同各用户都独占有自己的机器
优缺点:① 交互性好,能及时修改程序运行中所出现的错误② 要求CPU 速度高,参与“分时”的用户数目有一定限制。
(3)实时操作系统 特点:对于特定的输入,系统能够不失时宜地作出响应,并完成对该输入请求的处理。其及时性较分时系统要求更高(一般为毫秒级,甚至微妙级)其交互性较分时系统差。
(4)网络操作系统 特点:是在单机操作系统基础上发展起来的,能对网络上的共享资源进行管理的操作系统,如:Windows NT Server,Netware,UNIX等。
计算机的基本概念
什么是计算机?
计算机是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统。
计算机能够完成的基本操作及其主要功能:
输入:接受由输入设备(如键盘、鼠标器、扫描仪等)提供的数据。
处理:对数值、逻辑、字符等各种类型的数据进行操作,按指定的方式进行转换。 输出:将处理所产生结果等数据送到相关输出设备。
存储:存储程序和数据。
计算机的分类
按处理对象分类
数字计算机
模拟计算机
数字模拟混合计算机
按用途分类
通用计算机
专用计算机
计算机的发展
第一代计算机(1946年~1957年)
第二代计算机(1958年~1964年)
第三代计算机(1965年~1971年)
第四代计算机(1972年~1981年)
第五代计算机(1982年~1992年)
第六代计算机(1993年~?)
第一代(1946-1957)
电子管技术,核心元件是电子管,速度几千次/秒,用于军事与科学研究。
第二代(1958-1964)
半导体技术,核心元件是晶体管,速度几十万次/秒,用于科学计算、数据和事务处理 。 第三代(1965-1971)
固体物理技术,核心元件是中小规模集成电路,在几平方毫米单晶硅片上集成十几个至上百个电子元件;速度几十万至几百万次/秒;用于各个科学领域 。
第四代(1972至1981年)
核心元件是大规模和超大规模集成电路(如“奔腾4处理器”包含4200万个晶体管) ;速度上千万次至上亿次/秒;进入现代社会各个领域。 超大规模集成电路应用的直接结果是微型计算机的诞生。
第五代计算机 超大规模集成电路和人工智能
是一种有知识,会学习,能推理的计算机,具有能理解自然语言,声音,文字和图像的能力,并且具有说话的能力,使人机能够用自然语言直接对话,它可以利用已有的和不断学习到的知识,进行思维,联想,推理,并得出结论,能解决复杂问题,具有汇集,记忆,检索有关知识的能力。
智能计算机突破了传统的诺伊曼式机器的概念,舍 弃了二进制结构,把许多处理机并联起来,并行处理信息,速度大大提高。它的智能化人机接口使人们不必编写程序,只需发出命令或提出要求,电脑就会完成推理和判断,并且给出解释。1988年,世界上召开了第五代电脑国际会议。1991年,美国加州理工学院推出了一种大容量并行处理系统,用528
台处理器并行进行工作,其运算速度可达到每秒320亿次浮点运算。
第六代计算机 神经网络计算机
第六代电子计算机是模仿人的大脑判断能力和适应能力,并具有可并行处理多种数据功能的神经网络计算机。与以逻辑处理为主的第五代计算机不同,它本身可以判断对象的性质与状态,并能采取相应的行动,而且它可同时并行处理实时变化的大量数据,并引出结论。以往的信息处理系统只能处理条理清晰、经络分明的数据。而人的大脑活动具有能处理零碎、含糊不清信息的灵活性,第六代电子计算机将类似人脑的智慧和灵活性 。
计算机发展史上的重要人物 计算机之父:冯·诺依曼
英国数学家图灵(Turing):创建了自动机理论,发展了可计算机性理论,奠定了人工智能的基础。
美籍匈牙利数学家冯. 诺依曼(Von Neumann):确立了现代计算机的基本结构,即冯. 诺依曼体系结构。
图灵机由一个控制器和一根假设两端无界的工作带组成,工作带起着存储器的作用,它被划分为大小相同的方格,每一格上可书写一个给定字母表上的符号。控制器可以在带上左右移动,控制带有一个读写头,读写头可以读出控制器访问的格子上的符号,也能改写和抹去这一符号。
这一装置只是一种理想的计算模型,或者说是一种理想中的计算机。正如飞机的真正成功得力于空气动力学一样,图灵的这一思想奠定了整个现代计算机的理论基础。这就是电脑史上与" 冯·诺依曼机器" 齐名的" 图灵机" 。
计算机的特点; 运算速度快
运算精度高
具有记忆能力
具有逻辑判断能力
存储程序
计算机的用处; 科学计算
数据处理
实时控制
人工智能
娱乐与游戏
计算机辅助工程和辅助教育
计算机科学与技术学科简介
计算机科学技术是研究计算机的设计与制造,以及利用计算机进行信息获取、表示、存储、处理、控制等的理论、原则、方法和技术的学科。它包括科学与技术两方面。
计算机科学侧重于研究现象、揭示规律;计算机技术则侧重于研制计算机和研究使用计算机进行信息处理的方法与技术手段。
科学是技术的依据, 技术是科学的体现;技术得益于科学, 它又向科学提出新的课题。科学与技术相辅相成、互为作用, 二者高度融合是计算机科学技术学科的突出特点。
计算机科学研究范畴
包括计算机理论、硬件、软件、网络及应用等,按照研究的内容,也可以划分为基础理论、专业基础和应用三个层面。
十进制
数制:按进位的原则进行计数称为进位计数制,简称数制。
十进制:是使用数字1、2、… 、9、0等符号来表示数值且采用“逢十进一”的进位计数制。 位权表示法数制的特点: 数字的总个数等于基数。最大的数字比基数小1。每个数字都要
乘以基数的幂次,该幂次由每个数字所在的位置决定。
二进制
二进制:使用数字0和1等符号来表示数值且采用“逢二进一”的进位计数制。
二进制数制的特点:仅使用0和1两个数字。最大的数字为1,最小的数字为0。每个数字都要乘以基数2的幂次,该幂次由每个数字所在的位置决定。
二进制加法和乘法运算规则:
0+0=0 0 × 0=0
0+1=1 0 × 1=0
1+0=1 1 × 0=0
1+1=1 1 × 1=1
八进制与十六进制
八进制:使用数字0、1、2、3、4、5、6、7等符号来表示数值的,且采用“逢八进一”的进位计数制。
十六进制:使用数字0、1、2、3、4、5、6、7、8、9和A 、B 、C 、D 、E 、F 等符号来表示数值,其中A 、B 、C 、D 、E 、F 分别表示数字10、11、12、13、14、15。十六进制的计数方法为“逢十六进一”。
十进制整数转换为非十进制整数
除基取余法:“除基取余,先余为低(位),后余为高(位)”。
微型计算机硬件系统
计算机硬件系统的组成
主 机
硬件
外部设备 R A M /Cache)
运算器
运算器:对二进制数进行运算的部件。它在控制器的控制下执行程序中的指令, 完成各种算术运算、逻辑运算、比较运算、移位运算以及字符运算等。
运算器的组成:算术逻辑部件(ALU )完成加、减、乘、除等四则运算以及与、或、非、移位等逻辑运算;寄存器用来暂存参加运算的操作数或中间结果,常用的寄存器有累加
寄存器、暂存寄存器、标志寄存器和通用寄存器等。
运算器的主要技术指标:运算速度,其单位是MIPS (百万指令/秒),通常是按照一定的频度执行各类指令的统计值。
控制器:是指挥计算机的各个部件按照指令的功能要求协调工作的部件。
控制器的组成:
程序计数器(PC ):用来对程序中的指令进行计数,使控制器能依次读取指
令;
指令寄存器(IR ):在指令执行期间暂时保存正在执行的指令。
指令译码器(ID ):用来识别指令的功能,分析指令的操作要求。
时序控制电路:用来生成时序信号,以协调在指令执行周期内各部件的工作。
微操作控制电路:用来产生各种控制操作命令。
系统主板 每个元件直接连接到主板,并通过主板进行数据交换。它是一个较大的平面电路板,由5个部分组成:CPU 、存储器、总线、插槽以及电源。
微处理器 CPU 。
存储器 用来存储数据和程序的部件。
存储单位:“位”(bit )、“字节”(byte )、“字”和“字长”
存储容量:存储器所包含的存储单元的总数,其单位为K (1K =210=1024)。
存储器的分类:内存储器:又称为主存储器,简称为内存或主存,用来存放现行程序的指令和数据。包括随机存取存储器(RAM )和只读存储器(ROM )等。
输入/输出设备:简称为I/O设备,是外部与计算机交换信息的渠道。
输入设备:用于输入程序、数据、操作命令、图形、图像以及声音等信息。常用的输入设备有键盘、鼠标器、扫描仪、光笔、数字化仪以及语音输入装置等。
输出设备:用于显示或打印程序、运算结果、文字、图形、图像等,也可以播放声音。常用的输出设备有显示器、打印机、XY 绘图仪以及声音播放装置等。
计算机的指令系统
指令:能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一种操作。 指令系统:一台计算机能执行的所有指令的集合。
指令的格式:一条指令由操作码和地址码组成。操作码规定了该指令进行的操作种类;地址码给出了操作数、结果以及下一条指令的地址。
指令的分类:数据传送型指令 数据处理型指令 输入输出型指令 硬件控制指令
计算机性能指标
显卡的主要性能指标
声卡的性能指标
CPU 的性能指标
硬盘性能指标
音箱的主要性能指标
液晶显示器的性能指标
鼠标的性能指标
网卡的性能指标
内存的性能指标
第3章 计算机系统的软件
1.什么是软件?为运行、维护、管理及应用计算机所编制的所有程序及其文档资料的总和,称为计算机软件。简而言之,软件就是程序及其相关的文档。
软件分为三大类,即系统软件、支撑软件和应用软件。这种分法将软件开发工具和环境从应用软件中分出来,将支持其它软件开发与维护的软件,称之为支撑软件。 硬件与软件的关系:
(1)硬件是基础,但它只能执行二进制代码表示的机器语言程序。
(2)软件加硬件构成了功能更完善,使用更方便的虚拟机
(3)硬件与软件在逻辑功能上是等效的,它们之间没有固定不变的分界面(即硬件可软化,软件可硬化)
算法与程序
1. 什么是算法 算法是精确定义的一系列规则,这些规则指出如何从给定问题的输入
信息经过有限步骤产生出所求问题的输出信息。
不同算法必须遵循的共性
(1)确定性:算法的每一种运算必须有确切的定义
(2)能行性:算法中有待实现的运算都可在有限时间内完成。
(3)输入:一个算法有零个以上的输入。
(4)输出:一个算法产生一个或多个输出。
(5)有穹性:一个算法总是在执行了有穹步的运算后终止。
评价算法优劣的标准
(1)空间复杂性S (n ):按算法所编制的程序在计算机中所占用的存储单元的总数。n 是问题的规模,显然S (n )是随n 的增长而增加。
(2)时间复杂性f (n ):按算法所编制的程序在计算机执行时所耗费的时间。显然f (n )随 n 的增长而增加。
程序设计语言的发展过程 程序设计语言的发展已经历了四代,第五代语言尚处于萌芽状态。
1.第一代语言:机器语言 组成:由二进制指令代码组成,也称二进制语言。 特点:
(1)机器语言可由计算机硬件直接识别和执行,故用机器语言编制的程序效率较高。
(2)人工编写机器语言程序很繁琐,容易出错。
(3)通用性差,不同计算机有不同的机器语言。
2. 汇编语言
组成:由指令的助记符(指令的英文名称的缩写)及相关语法规则组成
特点:
(1)用汇编语言编制的程序称为汇编语言程序,它不能为计算机硬件直接识别和执行。必须通过汇编程序(一种系统软件),将汇编语言程序(源程序)“翻译”为机器语言程序(目标程序)后,才能执行。
(2)汇编语言指令与机器语言指令一一对应,仍然依赖于计算机的硬件,称它们为低级语言。
(3)不同计算机有不同的汇编语言,彼此不能通用。
(4)与机器语言相比,记忆指令助记符较记忆指令代码容易,但仍然很繁琐。
3.第三代语言:高级语言
组成:由表达各种意义的“词”、“数学公式”及特定的语法规则组成。由于它比较接近自然语言,并与机器的指令系统没有直接关系,故称它为高级程序设计语言,或算法语言。
特点:(1)可在不同的计算机上运行,通用性强。
(2)编程方便、简单、直观,不容易出错。
(3)用高级语言编写的源程序必须通过编译“或解释”生成机器语言程序(目标程序),才能在计算机上运行。
4.第四代语言:在高级语言基础上集成的模块化语言。
第四代语言实质上是可以快速开发应用软件的各种高生产率的软件工具的统称,它具有更强的编程功能。例如:
面向过程的第四代语言:SQL ,Power Builder 和Delphi 等。
面向对象的编程语言和网络语言:VB (Visual Basic) VC , C++ , HTML 和 Java 等。
各种软件开发工具。如CASE (计算机辅助软件工程),它已超出语言的范围,集语言、数据库于一体,形成了所谓信息系统应用生成工具。
5.第五代语言
第五代语言将是智能化语言,到目前为止,还没有公认的第五代语言出现。PROLOG 语言可能成为第五代语言最著名的雏形。
高级语言的基本结构
每种高级语言都有其自身的特点及特殊的用途,但它们的语法成份、层次结构却是相似的。研究它们的共性,有助于更好地学习高级语言。
高级语言的层次结构,一般由基本元素,表达式及语句组成。
基本元素:由基本符号组成,可分为数、逻辑值、名字、标号及字符串等五大类。基本符号包括单字符基本符号(字母、数字、特殊字符)及多字符基本符号。
表达式:由基本符号和基本元素组成,可分为算术表达式,逻辑表达式和字符串表达式。
语句:由基本元素、表达式等组成,通常包括下列语句:
赋值语句:实现计算或存储
转移语句:实现程序的转移
条件语句:实现条件的测试和判断
输入/输出语句:完成输入/输出任务
循环语句:实现循环运算
其它语句:实现其它特殊功能
操作系统 是由程序和数据结构组成的大型系统软件,它负责计算机的全部软硬件资源分配、调度与管理,控制各类程序的正常执行,并为用户使用计算机提供良好的环境。 操作系统的种类 按系统功能,可将操作系统分为下列几类:
(1)批处理操作系统 特点: 多个作业批量输入计算机,进行批量处理,无需人工干预。
分类: ① 单道批处理系统。② 多道批处理系统。
优缺点:① 多道批处理系统可使CPU 与外设、各外设之间并行操作,提高CPU 的利用率② 在处理过程中,无交互性,对运行中出现的问题不能及时处理。
(2)分时操作系统(分时系统) 特点:用户通过与计算机相连的终端,按时间片(如100ms )轮流使用计算机系统,直接与计算机交互,如同各用户都独占有自己的机器
优缺点:① 交互性好,能及时修改程序运行中所出现的错误② 要求CPU 速度高,参与“分时”的用户数目有一定限制。
(3)实时操作系统 特点:对于特定的输入,系统能够不失时宜地作出响应,并完成对该输入请求的处理。其及时性较分时系统要求更高(一般为毫秒级,甚至微妙级)其交互性较分时系统差。
(4)网络操作系统 特点:是在单机操作系统基础上发展起来的,能对网络上的共享资源进行管理的操作系统,如:Windows NT Server,Netware,UNIX等。