《计算机导论》复习提纲.docx
《《计算机导论》复习提纲.docx》由会员分享,可在线阅读,更多相关《《计算机导论》复习提纲.docx(40页珍藏版)》请在冰豆网上搜索。
![《计算机导论》复习提纲.docx](https://file1.bdocx.com/fileroot1/2023-1/23/bc6019d0-3d3f-4e01-a533-ac226c3b1a44/bc6019d0-3d3f-4e01-a533-ac226c3b1a441.gif)
《计算机导论》复习提纲
《计算机导论》复习纲要
2010/6/2108:
52
第1章绪论
1、第一台计算机;
2、计算机发展的五个阶段;
第一代(1945~1957):
电子管计算机(VacuumTubes)
第二代(1958~1963):
晶体管计算机(Transistor)
第三代(1964~1969):
小规模集成电路计算机IntegratedCircuits
第四代(1970~1990):
以微处理器(Microprocessors)为标志的大规模/超大规模集成电路(LSI/VLSI)计算机(Large-scaleIntegratedCircuits)
第五代(1991~目前):
以互联网(Internet)为标志的信息系统
3、计算学科的定义
计算学科是对描述和变换信息的算法过程,包括对其理论、分析、设计、效率、实现和应用等进行的系统研究。
4、计算学科的根本问题
计算学科的根本问题是:
什么能被(有效地)自动进行。
计算学科所有分支领域的根本任务就是进行计算,其实质就是字符串的变换。
5、计算学科的5个分支学科
计算机科学(ComputerScience,简称CS)
信息系统(InformationSystem,简称IS)
软件工程(SoftwareEngineering,简称SE)
计算机工程(ComputerEngineering,简称CE)
信息技术(InformationTechnology,简称IT)
6、学科知识体
计算机科学知识体由以下3个层次构成:
(1)最高层是分支领域(area),它代表一个特定的学科子领域。
(2)分支领域之下又分为更小的知识单元(unit),它代表该领域中的主题模块。
(3)知识单元又被细分为众多的知识点(topic),这些知识点构成了知识体结构的最底层。
7、计算机科学二维定义矩阵
三个过程
主领域
抽象
理论
设计
离散结构(DiscreteStructures)
程序设计基础(ProgrammingFundamentals)
算法和复杂性(Algorithms&Complexity)
计算机结构与组织(Architecture&Organization)
操作系统(OperatingSystems)
网络计算(NetworkComputing)
程序设计语言(ProgrammingLanguages)
人-机交互(Human-ComputerInteraction)
图形学与可视计算(Graphics&VisualComputing)
智能系统(IntelligentSystems)
信息管理(InformationManagement)
软件工程(SoftwareEngineering)
社会和职业问题(Social&ProfessionalIssues)
科学计算(ComputationalScience)
计算机科学二维定义矩阵是学科概念的认知模型。
“纵向”关系,即计算机科学的研究领域。
这些内容蕴含在学科3个过程中,并将学科各分支领域结合成一个完整的体系,而不是互不相关的领域。
“横向”关系,即抽象、理论和设计3个过程的关系,是定义矩阵中最为重要的内容。
它反映的是,人们在计算领域的认识规律,即是从感性认识(抽象)到理性认识(理论),再由理性认识(理论)回到实践(设计)的过程。
“横向”关系还蕴含着学科中的基本问题。
抽象、理论和设计3个过程
(1)理论源于数学。
应用数学家们认为科学的进展都是建立在数学基础之上。
它的研究内容表现在两个方面:
一方面是建立完整的理论体系,另一方面是在现有理论的指导下,建立具体问题的数学模型,从而实现对客观世界的理性认识。
(2)抽象源于现实世界。
抽象建模是自然科学的根本。
(3)设计源于工程。
设计是工程的根本。
8、摩尔定律和“贝尔定律”
在体系结构方面,有所谓“摩尔定律”(Moore’sLaw)和“贝尔定律”(Bell’sLaw)。
前者断定微处理器的速度会每18个月提升一倍,而后者则认为如果保持计算能力不变,微处理器的价格和体积每18个月缩减一倍。
第2章计算学科的基本问题
什么是科学问题?
科学问题是指一定时代的科学认识主体,在已完成的科学知识和科学实践的基础上,提出的需要解决且有可能解决的问题。
它包含一定的求解目标和应答域,但尚无确定的答案。
罗素悖论
罗素悖论的表现形式:
在对结果的观察中同时包含了观察者自身的行为,就会出现悖论。
也就是说,理性无法回答关于自身的问题。
希尔伯特纲领
希尔伯特在数学基础的研究中提出了一个设想:
将每一门数学的分支形式化,构成形式系统或形式理论,并在以此为对象的元理论即元数学中,证明每一个形式系统的相容性,从而导出全部数学的相容性。
他企图寻找通用的形式逻辑系统,在该系统中,可以机械地判定任何给定命题的真伪,即该系统是完备的。
任何系统的完备和一致性,可以由系统本身得到证明。
希尔伯特这一设想,就是所谓的“希尔伯特纲领”。
库尔特·哥德尔(K.Godel)提出的关于形式系统的“不完备性定理”中指出:
形式系统不能穷尽全部数学命题,任何形式系统中都存在着该系统所不能判定其真伪的命题。
没有一种公理系统可以导出数论中所有的真实命题,除非这种系统本身就有悖论。
“哥德尔第一定理”,即哥德尔的“不完备性定理”:
一个形式系统,如果是一致的(=相容的=无矛盾的),那么,就一定存在一个命题,这个命题在该系统中不能被证明,也不能被否证。
换一种说法,这个命题在该系统中不能被证明,它的反命题在该系统中也不能被证明。
“哥德尔第二定理”,即:
任何一个被认为是一致的系统,它的一致性是不能在系统内部得到证明的。
因此:
形式系统是不完备的
2.2哥尼斯堡七桥问题
欧拉回路
欧拉给出了哥尼斯堡七桥问题的证明,还用数学方法给出了三条判定规则(判定每座桥恰好走过一次,不一定回到原点,即对欧拉路径的判定):
(1)如果通奇数座桥的地方不止两个,满足要求的路线是找不到的。
(2)如果只有两个地方通奇数座桥,可以从这两个地方之一出发,找到所要求的路线。
(3)如果没有一个地方是通奇数座桥的,则无论从哪里出发,所要求的路线都能实现。
根据第3点,可以得出,任一连通图存在欧拉回路的充分必要条件是所有顶点均有偶数度。
哈密尔顿回路问题:
在某个图G中,能不能找到这样的路径,即从一点出发不重复地走过所有的结点,最后又回到原出发点。
这个问题也被称作周游世界问题。
“哈密尔顿回路问题”与“欧拉回路问题”的不同点
“哈密尔顿回路问题”是访问每个结点一次,而“欧拉回路问题”是访问每条边一次。
对图G是否存在“欧拉回路”前面已给出充分必要条件,而对图G是否存在“哈密尔顿回路”至今仍未找到满足该问题的充分必要条件。
计算问题可以分为可计算问题与不可计算问题。
可计算问题:
存在可解的算法。
不可计算问题:
不存在可解的算法。
梵天塔问题说明了:
理论上可以计算的问题,实际上并不一定能行,这属于算法复杂性方面的研究内容。
算法复杂性中的难解性问题、P类问题和NP类问题
算法复杂性包括算法的空间以及时间两方面的复杂性问题。
在计算复杂性理论中,将所有可以在多项式时间内求解的问题称为P类问题,而将所有在多项式时间内可以验证的问题称为NP类问题。
证比求易算法
在计算机科学中,一般认为求解一个问题往往比较困难,但验证一个问题就比较简单。
顺序算法和并行算法
当将一个问题分解到多个处理器上解决时,由于算法中不可避免地存在必须串行执行的操作,从而大大地限制了并行计算机系统的加速能力。
阿达尔定律(参看书本)
一个不可计算问题:
停机问题
停机问题(HaltingProblem)是1936年图灵在其著名论文《论可计算数及其在判定问题上的应用》中提出,并用形式化方法给予证明的一个不可计算问题。
停机问题引出了一个悖论——当一个程序无限循环时才会停机,并且当它停机时才会无限循环。
什么是形式化方法:
引入表达形式结构的符号语言,用符号与符号之间的联系表达命题或推理的形式结构。
找零问题、背包问题与贪婪算法
一类可以用启发式的贪婪算法来处理的典型问题。
1.找零问题
2.背包问题
“哲学家共餐”问题与计算机资源管理
计算机的资源分软件资源和硬件资源。
硬件的资源主要指CPU、存储器以及输入和输出设备等;软件资源则是指存储在存储设备里面的各类文件。
在计算机中,操作系统负责对计算机软硬资源进行控制和管理,要使计算机系统中的软硬件资源得到高效的使用,就会遇到由于资源共享而产生的问题。
“哲学家共餐”问题
哲学家进餐问题在计算机科学中所反映的问题实际上是程序并发执行时进程同步的问题:
为了提高系统的处理能力和机器的利用率,并发程序被广泛地使用,因此必须彻底解决并发进程中的死锁和饥饿问题。
并行处理
并行计算时的完整性和同步性出现了问题。
生产者-消费者问题
一个生产者和一个消费者以及一个硬件资源。
所谓消费者是指使用某一软硬件资源时的进程,而生产者是指提供(或释放)某一软硬件资源时的进程。
一个重要的概念,即信号灯,它借用了火车信号系统中的信号灯来表示进程之间的互斥。
生产者-消费者问题
例如:
大型数据库的共享、联网的售票系统、火车(航班)进出管理系统
2.6“两军问题”与计算机网络
计算机网络的定义
计算机网络是将分散在不同地理位置上的,具有独立功能的多台计算机系统、各种终端设备、外部设备及其它附属设备,通过通信设备和通信线路连接起来,在网络协议和网络操作系统的管理和控制下,实现数据通信、资源共享和分布处理的系统。
计算机网络发展的四个阶段
计算机网络的发展,大致经历了四个阶段:
1.远程终端联机阶段
2.计算机网络阶段
3.网络互连阶段
4.信息高速公路(互联网)阶段
计算机网络的功能
资源共享、信息传输、提高系统的可靠性、分布处理,系统便于扩充。
计算机网络的分类
1.根据组成计算机网络的地理范围大小的不同,可分为广域网(WAN)、城域网(MAN)和局域网(LAN)三种。
2.按网络的使用范围划分,可将计算机网络分为公用网和专用网。
计算机网络的组成
计算机网络由计算机通过通信线路互连而成,用户通过终端访问网络。
从组成网络的设备或系统功能看,计算机网络由通信子网和资源子网构成。
计算机网络的拓扑结构
局域网中,构成网络服务器、工作站(又称节点)等设备通过电缆在物理上互连的几何构形,称为网络的拓扑结构。
信道
信道是指信号的传输通道,可分为物理信道和逻辑信道。
其中,物理信道是指用来传递信号的一条物理通道,由传输介质和相关设备组成。
按照传输方式分,信道可分为两类:
点到点信道和广播信道。
按使用的传输介质不同,信道可分为有线信道和无线信道。
有线信道可以是架空明线、同轴电缆、光钎电缆及微波导管等信道。
无线信道可以是微波信道、短波信道等。
信道所能传送信号的频率宽度(即可传送信号的最高频率和最低频率之差)称为信道的带宽。
网络协议
计算机网络为了进行网络中的数据交换而建立的规则、标准或约定称为网络协议。
网络协议规定了有关功能部件在通信过程中的操作,规定了传输数据的格式和有关的同步问题。
网络的标准化组织
为计算机网络制定标准的组织主要有三个:
⑴国际标准化组织ISO
⑵国际电子电器工程师协会IEEE
⑶ARPA(AdvancedResearchProjectsAgency)
参照计算机系统多层体系结构的原理,网络系统的通信结构也采用分层结构的方法。
开放性系统互连(OSI)的参考模型
局域网协议的标准IEEE802
局域网的标准是由IEEE802制定的。
IEEE802的标准只定义到最低两层,即物理层与数据链路层,较高层的功能则留给网络厂商决定。
其中,数据链路层中又可分成两个子层:
①逻辑连接控制LLC(LogicLinkControl):
让上层的网络在使用网络服务器时不必去考虑其下层是如何设置的。
②介质存取控制MAC(MediumAccessControl):
定义多种不同的存取控制方法,以决定如何控制实际传送介质的使用。
TCP/IP通信协议
TCP/IP(TransmissionControlProtocol/InternetProtocol)是美国国防部早期为开发ARPANET的协议,提供连接不同厂家计算机主机的通信协议。
TCP/IP主要有两个协议:
①网际协议(IP):
制定所有在网络上流通的包标准,提供跨越多个网络的单一包传送服务。
②传输控制协议(TCP):
在网际协议(IP)的上面,提供面向连接的可靠数据传输服务。
确保所有送到某个系统的数据能正确无误的到达该系统。
互联网软件的分层结构
第3章3个学科形态
信息系统模型
信息系统是一个人造系统,它由人、计算机硬件、软件和数据资源组成,目的是及时和正确地收集、加工、存储、传递和提供决策所需的信息。
与系统模型类似,信息系统包括输入、处理、输出和反馈4个部分。
数据库系统
数据库系统:
DatabaseSystem
构成数据库系统的有四个部分:
数据、数据库管理系统、应用软件和用户
DBMS,DatabaseManagerSystem,数据库管理系统
DBMS由以下几个部分构成
1.物理数据库
2.数据库引擎
3.数据库模式
DBMS支持的功能
数据定义
数据操纵:
一般是指用来查询、添加、修改和删除数据库中数据
数据控制:
设置或者更改数据库用户或角色权限
系统存储过程:
目的在于能够方便地从系统表中查询信息,或完成与更新数据表相关的管理任务,包括系统管理任务
DBMS还包括数据字典
数据库体系结构和数据库模型
数据库的体系结构——建立数据库的一个框架,这个框架用于解释数据库,也用于描述数据库的概念。
而组织数据库中的数据,是数据库管理系统的核心,即DBMS所采用的数据库模型
数据库的三级体系结构
计算学科中理论、抽象和设计3种主要形态(过程)
抽象形态包括以下4个步骤的内容:
(1)形成假设;
(2)建造模型并作出预测;
(3)设计实验并收集数据;
(4)对结果进行分析。
理论形态包括以下4个步骤的内容:
(1)表述研究对象的特征(定义和公理);
(2)假设对象之间的基本性质和对象之间可能存在的关系(定理);
(3)确定这些关系是否为真(证明);
(4)结论。
设计形态包括以下4个步骤的内容:
(1)需求分析;
(2)建立规格说明;
(3)设计并实现该系统;
(4)对系统进行测试与分析。
设计、抽象和理论3个形态针对具体的研究领域均起作用,在具体研究中,就是要在其理论的指导下,运用其抽象工具进行各种设计工作,最终的成果将是计算机的软硬件系统及其相关资料(如需求说明、规格说明和设计与实现方法说明等)。
计算机语言的发展
1.低级语言:
机器语言
汇编语言
2.高级程序设计语言
FORTRAN语言
BASIC语言
COBOL语言
Pascal语言
C语言
语言处理程序
1.汇编程序
汇编语言翻译系统
汇编语言翻译系统的主要功能是将用汇编语言书写的程序翻译成用二进制码0或1表示的等价的机器语言,形成计算机可以执行的机器指令代码。
2.编译程序
编译程序以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。
3.解释程序
解释程序是按照源程序中的语句的动态顺序逐条翻译成机器代码并立即执行相应功能的处理系统。
也称为高级程序设计语言解释系统
由于解释程序它的方便性和交互性较好,早期一些高级语言采用这种方式,如BASIC、dBASE。
但它的弱点是运行效率低,程序的运行依赖于开发环境,不能直接在操作系统下运行。
自然语言
自然语言是某一社会发展中形成的一种民族语言。
例如,汉语、英语、法语和俄语等。
其最基本、最普遍的形式是文字,文字是人类最普遍使用的自然语言符号系统。
自然语言符号系统的基本特征:
歧义性、不够严格和不够统一的语法结构。
高级语言的歧义性问题
高级程序设计语言也有语义的歧义性问题,但是高级程序设计语言存在较少的歧义性。
形式语言
人们在自然语言符号系统的基础上,逐步建立起了人工语言符号系统(也称科学语言系统),即各学科的专门科学术语(符号),使语言符号保持其单一性、无歧义性和明确性。
人工语言符号系统发展的第二阶段叫形式化语言,简称形式语言。
图灵机
图灵的观点及结论:
凡是能用算法方法解决的问题,一定能用图灵机解决;凡是图灵机解决不了的问题,任何算法也解决不了。
与图灵机等价的计算模型:
递归函数、λ-演算、POST规范系统
从可计算理论可知每一个原始递归函数都是图灵机可计算的。
冯•诺依曼型计算机:
从原来对程序和数据的严格区别到一样看待,这个观念上的转变是计算机史上的一场革命,它反映的正是计算的本质,即符号串的变换。
按照冯▪诺依曼原理构造的计算机又称冯▪诺依曼计算机,其体系结构称为冯▪诺依曼结构。
冯▪诺依曼计算机的基本工作原理是存储程序和程序控制,其特点如下:
将计算过程描述为由多条指令按一定顺序组成的程序,并放入存储器保存。
指令按其在存储器中存放的顺序执行;
控制器控制整个程序和数据的存取以及程序的执行;
冯·诺依曼计算机的体系结构
冯·诺依曼计算机的体系结构,即存储程序式计算机的体系结构,是将程序与数据一样看待,对程序像数据那样进行适当的编码,然后与数据一起共同存放在存储器中。
这样,计算机就可以通过改变存储器中的内容,对数据进行操作。
(1)计算机由运算器、控制器、存储器、输入设备和输出设备5大部分组成。
控制器和运算器是其核心。
(2)按存储程序原理进行工作。
数据和程序以二进制代码形式不加区别地存放在存储器中,存储器是按线性编址的唯一结构进行地址访问,每个单元的位数是固定的。
(3)机器以运算器为中心,输入输出设备与存储器间的数据传送都经过运算器。
通过执行指令直接发出控制信号控制计算机的操作。
(4)控制器根据存放在存储器中的指令序列(程序)进行工作,并由一个程序计数器控制指令的执行。
(5)指令由操作码和地址码组成。
指令同数据一样可以送到运算器进行运算,由指令组成的程序是可以修改的。
冯·诺依曼型计算机体系结构图如下所示:
输入设备和输出设备
作用:
是将信息输入计算机和输出计算机。
存储器
存储器是一种数据或信息的存储部件,它分成很多存储单元,并按照一定的方式进行排列。
每个单元都编了号,称为存储地址。
指令和数据存放在存储器中,对指令和数据同等对待,都不加区别地送到运算器中运算。
指令在存储器中基本上是按执行顺序存储的,由指令计数器指明要执行的指令在存储器中的地址。
存储器一般分为内存储器与外存储器两大类。
内存一般安装在主机板上,根据材料和工作原理的不同,内存可分为随机存储器(RAM)和只读存储器(ROM)两种。
控制器和运算器只能接受在内存中存放的指令和数据。
外存一般安装在主机板之外,外存上面的信息可长久保存,但这些信息必须读入内存之后才能被控制器和运算器所利用。
磁盘就是一种常用的外存。
半导体存储器
半导体存储器(semiconductormemory)是一种能存储大量二值信息(或称为二值的数据)的半导体器件。
从存取功能上可以分为只读存储器(ROM,即ReadOnlyMemory)和随机存储器(RAM,即RandomAccessMemory)两大类。
随机存储器RAM又分为静态随机存储器SRAM和动态随机存储器DRAM两大类
非易失性存储器
非易失性存储器,是指那些断电后数据仍然能保留的半导体存储器。
对这类存储器,业界统称为非易失性随机访问存储器(NVRAM,Non-VolatileRandomAccessMemory)。
在NVRAM产品中,“闪存”被广泛用在PC机的主板上,用来保存BIOS程序,便于进行程序的升级。
其另外一大应用领域是用来作为硬盘的替代品,具有抗震、速度快、无噪声、耗电低的优点。
磁存储器
光盘存储系统
CPU(运算器和控制器)
中央处理器(CentralProcessingUnit,CPU)由控制器、运算器和寄存器组成,是整个计算机的核心,计算机的运算处理功能主要由它来完成。
同时,它还控制计算机的其他零部件,从而使计算机的各部件协调工作。
总线
总线:
CPU与主存储器之间通过总线连接,
CPU通过总线提供存储单元目标地址以及读信号来选择、读取数据
CPU通过总线提供存储单元目标地址以及写信号来放置、写入信号
指令系统
CPU能够解码并执行的机器指令集合
CISC
最初人们采用的是进一步增强原有指令的功能,并设置更为复杂的指令的方法,采用这种设计思路的计算机被称为复杂指令系统计算机(CISC)。
RISC
通过减少指令总数和简化指令的功能来降低硬件设计的复杂度,从而提高指令的执行速度。
优点:
与CISC技术相比,简化了指令系统,适合超大规模集成电路的实现;
提高了机器执行的速度和效率;
降低了设计成本,提高了系统的可靠性;
提供了直接支持高级语言的能力,简化了编译程序的设计。
机器指令
机器指令系统——每台数字电子计算机在设计中,都规定了一组指令。
机器语言——用机器指令形式编写的程序。
在裸机级,计算机语言关于算法的描述采用的是实际机器的机器指令,它的符号集是{0,1},支撑实际机器的理论是图灵机等计算模型;
在图灵机等计算模型理论的指导下,有关设计形态的主要成果有冯·诺依曼型计算机等具体实现思想和技术,以及各类数字电子计算机产品。
计算机语言在裸机级所取得的主要成果
汇编语言:
采用字符和十进制数来代替二进制代码的思想。
汇编语言源程序经汇编程序翻译成机器指令,再在实际的机器中执行。
从汇编语言的用户角度来看,机器是可以直接识别汇编语言的,从而产生了一个属于抽象形态的重要概念,即虚拟机的概念。
虚拟机:
抽象的计算机
由软件实现,并与实际机器一样,都具有一个指令集并可以使用不同的存储区域。
例如,一台机器上配有C语言和Pascal语言的编译程序,对C语言用户来说,这台机器就是以C语言为机器语言的虚拟机,对Pascal用户来说,这台机器就是以Pascal语言为机器语言的虚拟机。
高级语言
虽然与机器语言相比,汇编语言的产生是一个很大的进步,但是用它来进行程序设计仍然比较困难。
于是人们着手对它进行改进。
一是发展宏汇编,即用一条宏指令代替若干条汇编指令,从而提高编程效率。
现在人们使用的汇编语言,大多数都是宏汇编语言。
二是创建高级语言,使编程更加方便。
3.7.6应用语言
一般将计算机语言划分为5代:
第一代为机器语言;
第二代为汇编语言;
第三代为高级语言;
第四代为“非过程性语言”;
第五代为自然语言。
3.7.7自然语言
计算机对自然语言的处理划分为四个层次:
第一层次是文字和语音,即基本语言信息的构成;
第二层次是语法,即语言的形态结构;
第三层次是语义,即语言与它所指的对象之间的关系;
第四层次是语用,即语言与它的使