《第1章 计算机系统概论.doc》由会员分享,可在线阅读,更多相关《第1章 计算机系统概论.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章 计算机系统概论本章系统地介绍计算机系统的基本知识,要求学生了解计算机的分类与应用,掌握计算机的硬件组成,软件与硬件的关系以及计算机系统的层次结构。重点提示:l 计算机系统的工作原理l 计算机硬件系统的几大部件及其功能l 计算机软件系统1-1重点难点指导1-1-1计算机系统简介ENIAC(电子数字积分计算机,Electronic Numerical Integrator And Computer)是第一台正式运转的通用电子计算机。自从这台计算机问世以来,从使用的元器件角度来看,计算机的发展大致经历了4代的变化。l 第一代(19461954)电子管计算机;l 第二代(19551964)晶体
2、管计算机;l 第三代(19651973)集成电路计算机;l 第四代(1974现在)大规模和超大规模集成电路计算机。在计算机系统发展历史中,摩尔定律(Moores Law)是一个很重要的概念。Intel的创始人之一高登摩尔(Gordon Moore)于1965年提出了著名的摩尔定律,预言单位平方英寸芯片的晶体管数目每过18到24个月就将增加一倍。计算机的分类方法有很多种,主要的分类方式有:按所处理的信号分类:模拟计算机;数字计算机。按硬件的组合及用途分类:专用计算机;通用计算机。按计算机的规模分类:微型计算机;工作站;小型计算机;主机;小巨型计算机;巨型计算机。现实中的分类:服务器;工作站;台式
3、机;便携机;手持机。计算机系统就是按人的要求接收和存储信息,自动地进行数据处理和计算,并输出结果信息的系统。计算机系统由硬件(子)系统和软件(子)系统组成。前者是借助电、磁、光、机械等原理构成的各种物理部件的有机组合,是系统赖以工作的实体。后者是各种程序和文件,用于指挥全系统按指定的要求进行工作。在学习计算机组成时,应当注意如何区别计算机体系结构(Computer Architecture)与计算机组成(Computer Organization)、计算机实现(Computer Implementation)这些基本概念。计算机体系结构(Computer Architecture):计算机体系
4、结构是指那些能够被程序员所看见的计算机系统的属性,即概念性的结构与功能特性。计算机组成(Computer Organization):计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的(即程序员不知道的)硬件细节。计算机实现(Computer Implementation):指计算机组成的物理实现。它包括处理机、主存等部件的物理结构,器件的集成度和速度,信号传输,器件、模块、插件、底板的划分与连接,专用器件的设计,电源、冷却、装配等技术以及有关的制造工艺和技术等。1-1-2 现代计算机的体系结构现代计算机绝大部分都是采用冯诺依曼体系结构,冯诺依曼计算机的特点是:
5、l 采用二进制形式表示数据和指令;l 采用存储程序方式(指令流驱动);l 由运算器、存储器、控制器、输入装置和输出装置5大部件组成计算机系统。现代的计算机的基本结构如图1-1-1所示。图中实线为数据线,虚线为控制线和反馈线。结 果程 序输入设备输出设备运算器存储器控制器图1-1-1 以存储器为中心的计算机结构框图冯诺依曼计算机各个部件的功能:l 运算器用来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内。l 存储器用来存放数据和程序。l 控制器用来控制、指挥程序和数据的输入,运行以及处理运算结果。l 输入设备用来将人们熟悉的信息形式转换为机器能识别的信息形式,主要有键盘、鼠标等。l 输
6、出设备可将机器运算结果转换为人们熟悉的信息形式,主要有打印机、显示器等。其中,运算器与控制器往往合成在同一芯片上,通常将它们合起来统称为中央处理器,简称为CPU。将CPU与存储器合在一起称为主机,输入与输出设备统称为外设。1-1-3 计算机的层次结构虚拟机(Virtual Machine)是一个抽象的计算机,它由软件实现,并与实际机器一样,都具有一个指令集并可以使用不同的存储区域。通过虚拟机的概念,将计算机的软件和硬件联系在一起。虚拟机可分为:操作系统虚拟机、汇编语言虚拟机、高级语言虚拟机和应用语言虚拟机等几个层次。如图1-1-2所示。微程序机器 M0 (微指令)由硬件直接执行传统机器 M1
7、(机器语言)由微程序解释机器指令操作系统虚拟机 M2 (作业控制语言)由机器语言程序解释操作系统命令汇编语言虚拟机M3 (汇编语言)汇编语言程序经汇编程序翻译成机器语言程应用语言虚拟机M5 (应用语言)用应用语言编写的应用语言程序经应用程序包翻译成高级语言高级语言虚拟机 M4 (高级语言)高级语言程序经编译程序翻译成汇编语言(或某种中间语言程序或机器语言程序)图 1-1-2 计算机系统的层次结构图本课程主要讨论传统机器M1和微程序机器M0的组成原理和设计思想。某些特定的功能可以由软件来完成,也可以由硬件来完成,即硬件和软件在逻辑上是等价的。在具体应用中,要根据当时的成本、速度、可靠性等因素来决
8、定由软件还是由硬件来实现。1-1-4 计算机的性能指标机器字长:指CPU一次能处理数据的位数,它标志着计算机的计算精度。存储容量包含主存和外存的容量。主存储器:CPU可以直接访问的存储器,需要执行的程序与需要处理的数据就放在主存之中。主存容量大则可以运行比较复杂的程序,并可存入大量信息,可利用更完善的软件支持环境。所以,计算机处理能力的大小在很大程度上取决于主存容量的大小。外存容量:外存容量一般是指计算机系统中联机运行的外存储器容量。由于操作系统、编译程序及众多的软件资源往往存放在外存之中,需用时再调入主存运行。在批处理、多道程序方式中,也常将各用户待执行的程序、数据以作业形式先放在外存中,再
9、陆续调入主存运行。所以,联机外存容量也是一项重要指标,一般以字节数表示。描述计算运算速度的指标一般有如下几个:MIPS(Million Instructions Per Second):它表示每秒百万条指令数。MFLOPS(Million Floating Point Operations Per Second):每秒百万次浮点操作次数。CPI(Cycle Per Instruction):表示每条指令周期数,即执行一条指令所需的平均时钟周期数。吞吐量:一台计算机在某一时间间隔内能够处理的信息量。响应时间:从输入有效到系统产生响应之间间隔的时间。主频/时钟周期:CPU的工作节拍受一个主时钟的控
10、制,主时钟的频率叫做CPU的主频;主频的倒数叫做CPU的时钟周期。CPU执行时间:表示CPU执行程序所占用的CPU时间。注意:各个指标都不能完全表征出一台计算机的性能。1-2 典型例题解析1、一个完整的计算机系统应该包括( )两大部分。A.主机和外设B.硬件系统和操作系统C.硬件系统和软件系统D.硬件系统和系统软件参考答案:选项C解析:选项A:现代计算机通常把运算器和控制器合起来做在一个芯片上,称为中央处理器(CPU)。然后把CPU和内存储器合起来称为主机。主机和外设构成硬件系统。所以选项A不全面。选项B:一个完整的计算机系统应该包括硬件系统和软件系统两部分。软件系统分为系统软件和应用软件两大
11、类。系统软件包括操作系统、计算机语言处理程序(各种程序翻译软件,包括编译程序、解释程序、汇编程序)、服务性程序、数据库管理系统和网络软件等。操作系统只是系统软件的一种,所以不全面。选项D:系统软件只是软件系统中的一类软件,因而,也不全面。2、下列是有关程序、指令和数据关系的叙述,其中错误的是( )。A.一个程序由若干条指令和所处理的数据组成B.指令和数据形式上没有差别,都是一串0/1序列C.指令和数据不能放在同一个存储器中,必须分别存放在指令存储器和数据存储器中D.启动程序前指令和数据都存放在外存中,启动后才被装入内存参考答案:选项C解析:选项A:在计算机上完成的所有任务都必须先编好程序,通过
12、计算机执行程序来完成。所以执行程序的过程就是周而复始执行指令的过程。一个程序由一条条指令以及指令所处理的数据组成。指令规定程序的动作和步骤,数据是动作作用的对象。选项B:指令和数据在计算机内部都是用二进制表示的,因而都是0、1序列,在形式上没有差别。选项C和D:程序编好后,先放到外存(如,磁盘)上保存。当需要执行程序时,通过操作系统提供的人-机接口(在命令行符下输入命令,或鼠标双击等)启动程序,程序被启动后,程序中的指令和数据被操作系统装入主存,一般是装入到同一个主存储器(DRAM)中,而不区分是数据存储器还是指令存储器。CPU通过指令执行的不同阶段来区分取出的是数据还是指令,而不是靠分开存放
13、数据和指令来区分的。所以,选项C是错误的。3、以下关于冯.诺依曼计算机工作方式的叙述中,错误的是( )。A.计算机完成的所有任务都必须执行相应的程序来完成B.某任务用某语言(如C+)编好程序后,一旦被启动,则马上可调至主存直接执行C.程序执行时,CPU按指令地址自动按序到内存读取指令并执行D.冯.诺依曼计算机工作方式称为“存储程序”控制方式参考答案:选项B解析:冯.诺依曼计算机的工作方式被称为“存储程序”控制方式。其主要内容是:计算机的工作由程序控制,程序是一个指令序列,指令是能被计算机理解和执行的操作命令; 程序(指令)和数据均以二进制编码表示,均存放在存储器中;存储器中存放的指令和数据按地
14、址进行存取;指令是由CPU一条一条顺序执行的。用一句话来说,就是:一旦要计算机完成某个特定的任务,则计算机会将事先编好的程序,按指令的顺序自动一条一条从主存中读出并执行,整个过程不需要人的干预。这里,事先编好的程序是指机器可执行的目标程序。用C+这种高级语言编写的源程序,不能直接装入内存后由CPU执行,而是需要先用编译程序将其转换为机器可直接执行的目标程序。4、下面是有关反映计算机中存储器容量的计量单位的叙述,其中错误的是( )。A.最小的计量单位为位(bit),表示一位“0”或“1”,一个字节为8位B.最基本的计量单位是字节(Byte),因而指令、数据和地址的长度都是8的倍数C.主存储器的编
15、址单位一般是字节的倍数D.主存容量为1KB,其含义是主存储器中能存放1000个字节的二进制信息参考答案:选项D解析:选项A:冯偌依曼结构计算机规定,计算机内部信息的表示采用二进制,所以,所有信息都是由0或1构成的0/1序列,用位(bit)来表示一个二进制位“0”或“1”,它是最小的计量单位,一个字节为8位。选项B:计算机中的存储部件、传送部件、运算部件等的宽度(串行传送部件例外)基本上都是字节的倍数,因而最基本的计量单位是字节(Byte)。为了数据、地址和指令信息的存储、传输和运算方便,一般把指令、数据和地址的长度都规定为8的倍数。选项C:对于现代计算机的主存储器,其存储单元的编号采用字节编址
16、方式,也就是说,每8位构成一个存储单元,所以其编址单位为一个字节。早期的机器也有用16位、24位、32位进行编址的。所以一般应该是8的倍数。选项D:主存容量的单位有KB、MB、GB等,分别表示210字节、220字节和230字节。而辅存容量中的kB、MB、GB分别表示103字节、106字节和109字节。所以,选项D是错误的。5、计算机系统就是硬件系统吗?解析:说计算机系统就是硬件系统是不完整的。一个完整的计算机系统应该包括硬件和软件系统两部分。硬件系统包括:运算器、控制器、存储器、输入设备和输出设备五大基本部件。软件系统分为系统软件和应用软件两大类。系统软件包括操作系统、计算机语言处理程序(各种
17、程序翻译软件,包括编译程序、解释程序、汇编程序)、服务性程序、数据库管理系统和网络软件等;应用软件包括各种特定领域的处理程序。计算机系统中的硬件和软件是相辅相成的,缺一不可。软件是计算机系统的灵魂,没有软件的硬件不能被用户使用,犹如一堆废铁。6、翻译程序就是编译程序吗?解释程序和编译程序有什么差别?什么是汇编程序?解析:翻译程序是指把高级语言源程序翻译成机器语言程序(目标代码)的软件。翻译程序有两种:一种是编译程序,另一种是解释程序。它们是两种不同的翻译程序。不同在于编译程序将高级语言源程序一次全部翻译成目标程序,每次执行程序时,只要执行目标程序,因此,只要源程序不变,就无需重新翻译;解释程序
18、是将源程序的一条语句,翻译成对应的机器目标代码,并立即执行,然后翻译下一条源程序语句并执行,直至所有源程序中的语句全部被翻译并执行完。所以解释程序的执行过程是翻译一句,执行一句。解释的结果是源程序执行的结果,而不会生成目标程序。汇编程序也是一种语言翻译程序,它是把汇编语言写的源程序翻译为机器语言程序(目标代码)的软件。汇编语言是一种面向机器的低级语言,是机器语言的符号表示,与机器语言一一对应。7、要计算机做的任何工作都要先编写成程序才能完成吗?解析:是的。要计算机完成的任何事情,都必须先编制程序,程序是由指令构成的。不管是用哪种语言编写的程序,最终都要翻译成机器语言程序才能让机器理解,机器语言
19、程序是由一条一条指令组成的程序。CPU的主要功能就是周而复始地执行指令,因此,要计算机完成的所有功能都是通过执行一条一条指令来实现的,也就是由一个程序来完成的。有时我们说某个特定的功能是由硬件实现的,但并不是说不要编写程序,如乘法功能可由乘法器这个硬件实现,但要启动这个硬件(乘法器)工作,必须先执行程序中的乘法指令。8、指令和数据形式上没有差别,且都存于存储器中,计算机如何区分它们呢?解析:指令和数据在计算机内部都是用二进制表示的,因而都是0、1序列,在形式上没有差别。在指令和数据取到CPU之前,它们都存放在存储器中,CPU必须能够区分读出的是指令还是数据,如果是指令,CPU会把指令的操作码送
20、到指令译码器进行译码,而把指令的地址码送到相应的地方进行处理;如果是数据,则送到寄存器,或运算器。那么,CPU如何识别读出的是指令还是数据呢?实际上,CPU并不是把信息从主存读出后,靠某种判断方法来识别信息是数据还是指令的。而是在读出之前就知道将要读的信息是数据还是指令了。执行指令的过程分为:取指令、指令译码、取操作数、运算、送结果等。所以,在取指令阶段,总是根据程序计数器PC的值去取指令,所以取来的一定是指令;取操作数阶段取的一定是数据。1-3 练习题一、选择题1、至今为止,计算机中的所有信息仍以二进制方式表示的理由是_。 A. 节约元件 B. 运算速度快 C. 物理期间性能所至 D. 信息
21、处理方便2、冯诺依曼机工作方式的基本特点是_。 A. 多指令流单数据流 B. 按地址访问并顺序执行命令 C. 堆栈操作 D. 存储器按内部选择地址3、寄存器中的值有时是地址,因此只有计算机的_才能识别它。 A. 译码器 B. 判断程序 C. 指令 D. 时序信号4、没有硬盘存储器的计算机监控程序可以存放在_。 A. RAM B. FLASH C.RAM 或ROM D. CPU5、目前大多数集成电路生产中,所采用的基本材料为_。 A.单晶硅 B. 非晶硅 C. 锑化钼 D. 硫化镉6、从器件角度看,计算机经历了四代变化。但从系统结构看,至今绝大多数计算机仍属于_计算机。A 并行 B 冯诺依曼 C
22、 智能 D 串行7、运算器的核心功能部件是_。A 数据总线 B ALU C 状态条件寄存器 D 通用寄存器二、填空题1、在计算机术语中,将运算器和控制器和在一起称为_,而将_和存储器和在一起称为_。2、计算机存储器的最小单位为_。1KB容量的存储器能够存储_个这样的基本单位。3、在计算机系统中,多个系统部件之间信息传送的公共通路称为_。就其所传送的信息的性质而言,在公共通路上传送的信息包括_、_ 和_信息。4、计算机系统的层次结构从下至上可分为五级,即微程序设计级(或逻辑电路级)、一般机器级、操作系统级、_级、_级。三、综合应用题1、同一个功能可以由软件完成也可以由硬件完成吗?2、什么叫透明性
23、?透明是指什么都能看见吗?3、数据通路宽度、机器字长、“字”宽、存储单元宽度、编址单位、总线宽度、指令字长各指什么?它们之间有何关系?1-4 参考答案一、选择题1、C 2、B 3、C 4、B 5、A 6、B 7、B 二、填空题1、CPU CPU 主机2、比特 81923、总线 数据 地址 控制4、汇编语言 高级语言三、综合应用题1、解:软件和硬件是两种完全不同的形态,硬件是实体,是物质基础;软件是一种信息,看不见、摸不到。但是它们都可以用来实现逻辑功能,所以在逻辑功能上,软件和硬件是等价的。因此,在计算机系统中,许多功能既可以直接由硬件实现,也可以在硬件的配合下由软件来实现。例如:乘法运算既可
24、以用专门的乘法器(主要由加法器和移位器组成)实现,也可以用乘法子程序(主要由加法指令和移位指令等组成)来实现。2、解:在计算机领域中,站在某一类用户的角度,如果感觉不到某个事物或属性的存在,即“看”不到某个事物或属性,则称为“对xxxx用户而言,某个事物或属性是透明的”。这与日常生活中的“透明”概念(公开、看得见)正好相反。例如:对于高级语言程序员来说,浮点数格式、乘法指令等这些指令的格式、数据如何在运算器中运算,等等,是透明的;而对于机器语言程序员和汇编语言程序员来说,指令的格式、机器结构、数据格式等则不是透明的。3、解:在计算机内部,有指令和数据两大类信息。指令和数据都以二进制形式存放在存
25、储器中,运行程序时,需要把指令和数据从存储器读出,通过总线传输到CPU,然后,CPU再通过执行指令来对操作数进行相应的运算,最后把结果数据送到寄存器或存储器中。所以,在设计或使用计算机过程中,要涉及到:指令和数据在存储器中按什么长度存放;写入或读出时按什么长度存取;在总线上传输时同时传送多少位;数据和指令送到CPU后,在CPU的寄存器中按多少位存放;在运算器中按多少位运算;等等问题。因而出现了以下一些概念,它们的定义和关系如下: “数据通路”是指数据在CPU中所经过的路径,连同路径上的部件,包括:通用寄存器、多路选择器、符号扩展器、零扩展器、ALU、移位寄存器等。这些部件的宽度和数据传送的路径
26、宽度都是一致的,这个一致的宽度就是数据通路的宽度。CPU中有定点运算器和浮点运算器,因而,相对应的就有定点运算器的数据通路和浮点运算器数据通路。两者的宽度不同,浮点运算器的数据通路要宽的多。“机器字长”是计算机的一个非常重要的指标。通常称32位机器或64位机器,就是指机器的字长是32位或64位。一般情况下,机器字长定义为CPU中在同一时间内一次能够处理的二进制数的位数,实际上就是CPU中数据通路的位数。因为机器字长与内存单元的地址位数有关,而地址计算是在定点运算器中进行的。所以,一般把定点运算器的数据通路宽度定为机器字长。在计算机中,“字”的概念经常出现。一个“字”的宽度并不等于机器字长。“字
27、”作为机器中所有信息宽度的计量单位,对于某个系列机来说,其字宽总是固定的。例如,在80x86系列中,一个字的宽度为16位,因此,32位是双字,64位是四字。在IBM303X系列中,一个字的宽度为32位,所以16位为半字,32位为单字、64位为双字。“存储单元”指存储器中具有相同地址的若干个存储元件(或称存储元、存储基元、记忆单元)构成的一个存储单元中的二进制代码,其宽度等于一个编址单位的长度,可以是8位、16位、32位等。现在,大多数计算机是按字节编址的,即:每一个字节(8位)有一个地址,编址单位就是一个字节,所以一个存储单元的宽度(位数)是8位。由此可见,一个数据(如:32位整数、32位浮点数或64位浮点数等)可能占多个存储单元。一次从存储器读出或写入的信息也可能有多个存储单元。“指令字长”指指令的位数。有定长指令字机器和不定长指令字机器。定长指令字机器中所有指令的位数是相同的,目前定长指令字大多是32位指令字。不定长指令字机器的指令有长有短,但每条指令的长度一般都是8的倍数。所以,一个指令字在存储器中存放时,可能占用多个存储单元;从存储器读出并通过总线传输时,可能分多次进行,也可能一次读多条指令。
限制150内