您的位置:首页 > 理论基础

【那些年学过的计算机基础】--计算机系统组成

2014-02-21 01:09 239 查看
[align=center]计算机系统组成
(内容资料来源于网络,本文仅做归纳整理)[/align]

一.计算机系统概述       

    一个完整的计算机系统包括硬件系统和软件系统两大部分。硬件系统主要包括计算机的主机和外部设备,软件系统主要包括系统软件和应用软件。

    计算机硬件系统是指构成计算机的所有实体部件的集合,通常这些部件由电路(电子元件)、机械等物理部件组成。直观地看,计算机硬件是一大堆设备,它们都是看得见摸得着的,是计算机进行工作的物质基础,也是计算机软件发挥作用、施展其技能的舞台。



[align=center]图1-1 计算机系统基本组成
[/align]
    计算机软件是指在硬件设备上运行的各种程序以及有关资料。所谓程序实际上是用户用于指挥计算机执行各种动作以便完成指定任务的指令的集合。用户要让计算机做的工作可能是很复杂的,因而指挥计算机工作的程序也可能是庞大而复杂的,有时还可能要对程序进行修改与完善。因此,为了便于阅读和修改,必须对程序作必要的说明或整理出有关的资料。这些说明或资料(称之为文档)在计算机执行过程中可能是不需要的,但对于用户阅读、修改、维护、交流这些程序却是必不可少的。因此,也有人简单地用一个公式来说明包括其基本内容:软件=程序+文档。

    通常,人们把不装备任何软件的计算机称为硬件计算机或裸机。裸机由于不装备任何软件,所以只能运行机器语言程序,这样的计算机,它的功能显然不会得到充分有效的发挥。普通用户面对的一般不是裸机,而是在裸机之上配置若干软件之后构成的计算机系统。有了软件,就把一台实实在在的物理机器(有人称为实机器)变成了一台具有抽象概念的逻辑机器(有人称为虚机器),从而使人们不必更多地了解机器本身就可以使用计算机,软件在计算机和计算机使用者之间架起了桥梁。正是由于软件的丰富多彩,可以出色地完成各种不同的任务,才使得计算机的应用领域日益广泛。当然,计算机硬件是支撑计算机软件工作的基础,没有足够的硬件支持,软件也就无法正常工件。实际上,在计算机技术的发展进程中,计算机软件随硬件技术的迅速发展而发展;反过来,软件的不断发展与完善又促进了硬件的新发展,两者的发展密切地交织着,缺一不可。计算机系统的组成如图1-1所示。


二、 计算机的硬件系统

    依照冯·诺依曼体系结构,计算机硬件系统由五部分组成:运算器、控制器、存储器、输入设备和输出设备。 通常,人们把运算器、控制器和存储器合起来统称为计算机的主机,而把各种输入和输出设备统称为计算机外部设备。

 


[align=center]图2-1 计算机硬件组成与各部分之间的联系
[/align]
    计算机硬件的基本功能是接受计算机程序的控制来实现数据输入、运算、数据输出等一系列根本性的操作。虽然计算机的制造技术从计算机出现到今天已经发生了极大的变化,但在基本的硬件结构方面,一直沿袭着冯·诺伊曼的传统框架,即计算机硬件系统由运算器、控制器、存储器、输入设备、输出设备五大部件构成。图2-1列出了一个计算机系统的基本硬件结构。图中,实线代表数据流,虚线代表指令流,计算机各部件之间的联系就是通过这两股信息流动来实现的。原始数据和程序通过输入设备送入存储器,在运算处理过程中,数据从存储器读入运算器进行运算,运算的结果存入存储器,必要时再经输出设备输出,如图2-1。指令也以数据形式存于存储器中,运算时指令由存储器送入控制器,由控制器控制各部件的工件。

    由此可见,输入设备负责把用户的信息(包括程序和数据)输入到计算机中;输出设备负责将计算机中的信息(包括程序和数据)传送到外部媒介,供用户查看或保存;存储器负责存储数据和程序,并根据控制命令提供这些数据和程序,它包括内存(储器)和外存(储器);运算器负责对数据进行算术运算和逻辑运算(即对数据进行加工处理);控制器负责对程序所规定的指令进行分析,控制并协调输入、输出操作或对内存的访问。下面分别对其各部分进行介绍。

1.运算器(Arithmetic Unit)

    运算器是计算机中对信息进行加工、运算的部件,它的速度决定了计算机的运算速度。运算器的功能是对二进制编码进行算术运算(加、减、乘、除)和逻辑运算(与、或、非、比较、移位)。

2.控制器(Control Unit)

    控制器的功能是控制计算机各部分按照程序指令的要求协调工作,自动地执行程序。它的工作是按程序计数器的要求,从内存中取出一条指令并进行分析,根据指令的内容要求,向有关部件发出控制命令,并让其按指令要求完成操作。

    通常情况下是把运算器和控制器合在一起,做在一块半导体集成电路中,称为中央处理器,简称CPU。

3.存储器(Memory)

    计算机中的存储器是计算机中用于记忆的部件,它的功能是存储程序和数据。计算机存储器通常有内部存储器及外部存储器两种。内部存储器简称内存,又称为主存储器,主要存放当前要执行的程序及相关数据。CPU可以直接对内存数据进行存、取操作,且存、取速度很快,但因为造价高(以存储单元计算),所以容量比外部存储器小。外部存储器简称外存,又称为辅助存储器,主要存放大量计算机暂时不执行的程序以及目前尚不需要处理的数据。因为造价较低,因此容量远比内存大,但存、取速度要慢得多。CPU存、取外部存储器的数据时,都必须将数据先调入内部存储器。内部存储器是计算机数据交换的中心。

    内部存储器目前均采用半导体存储器,其存储实体是芯片的一些电子线路。内部存储器又可分两类。一类是只能读不能写的只读存储器(Read Only Memory,ROM),保存的是计算机最重要的程序或数据,由厂家在生产时用专门设备写入,用户无法修改,只能读出数据来使用。在关闭计算机后,ROM存储的数据和程序不会丢失。另一类是既可读又可写的随机存储器(Random Access Memory,RAM)。在关闭计算机后,随机存储器的数据和程序就被清除。通常说“主存储器”或“内存”一般是指随机存储器。

    外部存储器主要有磁盘机(包括软盘机及硬盘机,又称为软盘驱动器和硬盘驱动器)、光盘机(光盘驱动器)及磁带机。其存储实体分别是软盘片、硬盘片和光盘片、磁带。在关闭计算机后,存储在外部存储器的数据和程序仍可保留,适合存储需要长期保存的数据和程序。不过,在PC上几乎不用磁带机。

    CPU与内部存储器一起称为计算机的主机。

4.输入设备(Input Device)

    输入设备是指向计算机输入信息的设备。它的任务是向计算机提供原始的信息,如文字、图形、声音等,并将其转换成计算机能识别和接收的信息形式送入存储器中。常用的输入设备有键盘、鼠标、扫描仪、手写笔、触摸屏、条形码输入设备、数字化仪等。

5.输出设备(Output Device)

    输出设备是指从计算机中输出人可以识别的信息的设备。它的功能是将计算机处理的数据、计算结果等内部信息,转换成人们习惯接受的信息形式,然后将其输出。常用的输出设备有显示器、打印机、绘图仪和扬声器等。

    输入/输出设备和外部存储器统称为外部设备(Peripheral Equipment)。

三、 计算机的软件系统

    软件系统是指为了运行、管理和维护计算机所编制的各种程序的集合。软件系统按其功能可分为系统软件和应用软件两大类。



图3-1 计算机软件分类

1.系统软件

    系统软件是指计算机的基本软件,是为使用和管理计算机而编写的各种应用程序。系统软件包括监控程序、操作系统、汇编程序、解释程序、编译程序和诊断程序等。

2.应用软件

    应用软件是专门为解决某个应用领域里的总体任务而编制的程序。应用程序一般由用户自行设计,有的计算机厂家也提供应用软件。

四、计算机程序设计语言

    编写计算机程序所用的语言即计算机程序设计语言。计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。



图4-1 计算机编程语言分类

1.机器语言

    机器语言是计算机硬件系统所能识别的、不需翻译、直接供机器使用的程序语言。机器语言用二进制代码0和1的形式表示,是唯一能被计算机直接识别的程序,执行速度最快,但编写难度大,调试修改繁琐。用机器语言编写的程序不便于记忆、阅读和书写,因此通常不用机器语言直接编写程序。

2.汇编语言

    汇编语言是一种用助记符(英文或英文缩写)表示的面向机器的程序设计语言。汇编语言的每条指令对应一条机器语言代码,不同类型的计算机系统一般有不同的汇编语言。用汇编语言编写的程序称为汇编语言程序,机器不能直接识别和执行,必须由“汇编程序”(或汇编系统)翻译成机器语言程序才能运行。汇编语言程序比机器语言程序易读、易修改和检查,同时也保持了机器语言执行速度快、占存储空间小的优点。汇编语言适用于编写直接控制机器操作的低层程序,它与机器密切相关,不容易使用。

    机器语言与汇编语言和计算机有十分密切的关系,因此我们称之为低级语言。

3.高级语言

    高级语言是一种比较接近自然语言和数学表达式的计算机程序设计语言。用高级语言编写的程序一般称为“源程序”,计算机不能识别和执行,要把用高级语言编写的源程序翻译成机器指令,通常有编译和解释两种方式。

    编译方式是将源程序整个地翻译成用机器指令表示的目标程序,然后让计算机来执行,例如C语言。

    解释方式是将源程序逐句翻译,翻译一句执行一句,也就是边解释边执行,不产生目标程序,例如Basic语言。

    高级语言直观,易读、易懂、易调试,便于移植。

    常用的高级语言有:Basic、Fortran、Pascal、C、Java等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息