资源预览内容
第1页 / 共91页
第2页 / 共91页
第3页 / 共91页
第4页 / 共91页
第5页 / 共91页
第6页 / 共91页
第7页 / 共91页
第8页 / 共91页
第9页 / 共91页
第10页 / 共91页
亲,该文档总共91页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
计算机组成原理 主编:马辉 王丁磊,第1章 计算机系统概论,本章导读,本章首先介绍电子数字计算机的发展历程与应用情况,其中也包括微型计算机的产生和发展;然后讲述计算机的基本组成情况,内容包括计算机硬件的基本组成、软件的分类和计算机系统的层次结构。同时通过一个简单模型机结构,讲解计算机执行程序的工作流程;最后介绍计算机主要性能指标,如:吞吐量、响应时间、CPU时钟周期、主频、CPI、CPU执行时间、MIPS、MFLOPS等。,本章要点,计算机发展历程 计算机系统层次结构 计算机硬件的基本组成 计算机软件的分类 计算机的工作过程 计算机性能指标,1.1 计算机的发展与应用,1.1.1 计算机的产生 1.1.2 计算机的发展 1.1.3 微型计算机的产生与发展 1.1.4 计算机的应用 1.1.5 计算机的未来展望,1.1.1 计算机的产生,计算的需求是伴随着人类的产生和发展一直存在的,因此,很早就有一些计算工具被发明出来应用于人类的生活。 我们现在所说的计算机一般是指电子数字计算机,它的诞生可以认为是在1946年,由宾夕法尼亚大学研制了ENIAC计算机。,ENIAC采用十进制运算,使用18000多个电子管,重量达30吨,使用手工扳动开关和插、拔电缆来编制程序,每秒可进行5000多次加法运算。 ENIAC的出现不仅仅是实现了制造一台通用计算机的目标,更重要的是将计算工具的发展推进到了一个崭新的空间。,1.1.2 计算机的发展,自从ENIAC问世后,人类研制并提高电子计算机性能的欲望就从未减退过,很多发达国家相继开展了计算机的设计和应用研究。 半个多世纪以来,根据电子计算机所采用的物理器件的改变,一般把电子计算机的发展分成四个阶段,习惯上称为四代。,第一代:电子管计算机时代。 第二代:晶体管计算机时代。 第三代:集成电路计算机时代。 第四代:大规模、超大规模集成电路计算机时代。,我国对现代电子计算机的研究始于20世纪50年代初,分别于1958年和1959年推出了103小型数字计算机和104大型通用数字计算机,它们属于第一代电子管机。1965-1966年间分别推出了晶体管计算机,中国进入晶体管机时代。集成电路计算机的研究始于1965年,直到1971年100系列机才进行量产。,1.1.3 微型计算机的产生与发展,集成电路技术的进步使得人们可以将成千上万的门电路全部都集成在一块极小的硅片上,这样就可以把计算机的控制单元和算术逻辑单元集成到一个芯片上,制成微处理器芯片,进而构成微型计算机。,1971年,美国Intel公司的年仅31岁的工程师霍夫研制出了世界上第一个4位的微处理器芯片,这就是Intel 4004。它集成了2300多个晶体管,能完成4位数据的运算。进一步出现了用它作为处理器的MCS-4计算机,这就是世界上最早的微型计算机。,微型计算机具有独特的优点:体积小,重量轻,可靠性高,结构配置灵活,价格低廉,从而发展迅猛。 微处理器的发展代表了微型机的发展,下面以Intel公司的产品为代表,来看一下微处理器的发展情况。,1972年8位微处理器8008。(8080、8085) 1978年16位微处理器8086。(8088、80286) 1985年32位微处理器80386。(80486) 1993年32位微处理器Pentium。( Pentium Pro、 Pentium II、 Pentium III、 Pentium 4),人们习惯上用这些不同微处理器的型号来称呼所相应构成的微型计算机。 现在,除了32位的微处理器芯片外,各处理器生产厂家也开发了一些64位的微处理器。但现在微处理器芯片的开发设计除了提高字长和追求工作频率的提高外,也已经转向了多个核心的发展方向。,综观微处理器的发展历程,芯片内所集成的晶体管数目,每隔1824个月就要翻一番,符合了Intel公司开创人之一的Moore于1965年提出的预言,人们一般称其为摩尔定律。,1.1.4 计算机的应用,早期的计算机是大学和研究机构的娇贵设备,后来随着价格的降低和软件的迅速发展完善,计算机走出了大学和研究室,迅速渗透到了各行各业。近年来计算机技术和通信技术相互结合,配合上Internet网络的普及,计算机以更多的方式应用到更多的领域,同时还出现了许多与计算机相关的新行业。,科学计算:计算机最初设计的主要目的就是为了完成各种复杂、烦琐的运算,发展到现在,科学计算仍然是计算机的重要应用领域之一。 数据处理:随着计算机在社会生活各行业中的普及,数据处理成了当前计算机最普及最广泛的应用领域之一。,计算机控制 计算机辅助(CAD、CAM、CAI等) 人工智能 多媒体应用 网络应用,1.1.5 计算机的未来展望,1989年,IEEE提出了计算机的分类报告,把计算机分为个人机(Personal Computer,简称PC)、工作站(Work Station)、小型机(Minicomputer)、主机(Mainframe)、小巨型机(Mini super Computer)和巨型机(Super Computer)。其中巨型机体现了一个时代和一个国家的计算机水平。,随着社会需求的不断增长和微电子技术的不断发展,计算机越来越向着巨型化、微型化、网络化和智能化方向发展。 在天气预报、航空航天等领域,要求计算量大且需实时处理,这只有巨型机才能担此重任。而在各种工业领域,既对计算速度有要求,又对计算机的体积、功耗有限制,所以出现了单片机和各种嵌入式系统。,计算机给未来的生活会带来巨大的影响是不容置疑的,这不但要求社会各行各业有很多计算机的熟练应用人才,也需要很多计算机专业人才来推动计算机技术本身的进步。我国现在计算机总体水平还比较落后,这需要我们的有志青年去为之奋斗和改变。,1.2 计算机的基本组成,1.2.1 计算机软、硬件的概念 1.2.2 计算机硬件的基本组成 1.2.3 指令与软件 1.2.4 计算机的工作过程,1.2.1 计算机软、硬件的概念,计算机系统由“硬件”和“软件”两大部分组成。所谓“硬件”部分是指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成。我们把由这些硬件设备构成的计算机称为“裸机”。它是计算机功能的基础。,软件部分是计算机程序及其有关文档,也包括被版本化了的有关计算机的使用方法的信息。它可以用来控制计算机硬件的工作,使计算机能按照一定的步骤去解决某些实际问题或体现出一定的智能。,软件分为系统软件和应用软件两大类。 系统软件主要用来管理整个计算机系统,监视服务,使系统资源得到合理调度,确保高效运行;它包括操作系统、诊断程序、计算机语言处理程序等; 应用软件包括厂家出售的通用软件和用户自己编写的应用程序,如科学计算程序,数据处理程序,事务管理程序等。,计算机的硬件是计算机功能得以实现的基础,而软件是功能的描述和体现。因此,计算机性能的好坏,取决于“软”、“硬”件功能的总和。 在早期的计算机中,硬件和软件之间的界限十分清楚,但随着时间的推移和技术的进步,界限变得越来越模糊。,硬件和软件在逻辑功能上是等价的。任何由软件实现的操作都可直接由硬件来完成,任何由硬件实现的功能也可以由软件来模拟。将某个具体的功能交由硬件实现还是软件实现,是根据当时的技术、速度、可靠性等因素来决定的,并且不是固定不变的。一般来说用硬件实现某个功能的优点是速度快;而用软件实现的优点是灵活、系统结构简单。,1.2.2 计算机硬件的基本组成,组成计算机的硬件设备非常多,但大体上可分为中央处理器CPU(运算器和控制器)、存储器和输入/输出设备,这个划分是由数学家冯诺依曼提出来的。 他在1946年6月的“电子计算机装置逻辑结构初探”报告中提出了关于计算机基本结构的一些设想,主要内容包括:,、计算机由运算器、存储器、控制器和输入设备、输出设备五大部件组成。 、采用存储程序的方式,程序和数据放在同一个存储器中,指令和数据一样可以送到运算器运算,即由指令组成的程序是可以修改的。 、指令和数据均用二进制码表示。,、指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中存放的位置。 、指令在存储器内按执行顺序存放,由指令计数器指明要执行的指令所在的单元地址。通常指令是按顺序执行的,在特定条件下可根据运算结果或根据设定的条件改变执行顺序。,、机器以运算器为中心,输入输出设备与存储器的数据传送通过运算器。 这些观点奠定了现代计算机的基本结构体系,人们习惯上将具有这些结构的计算机称为冯诺依曼计算机。,半个多世纪以来,随着技术的发展和新应用领域的开拓,对冯诺依曼机作了很多改进。如某些机器结构中,程序与数据分开存放在不同的存储器中;程序不允许修改;机器不再以运算器为中心,而是以存储器为中心等等。但基本原则变化不大,所以仍被称为冯诺依曼结构的计算机。,图1-1 以存储器为中心的计算机硬件结构框图,1.2.3 指令与软件,计算机的软件是根据解决问题的方法、思想和过程编写的程序的有机集合,它可分为系统软件和应用软件两大类。 而所谓程序指的是指令的有序集合,一台计算机中全部程序的集合,统称为这台计算机的软件系统。一台计算机所能执行的指令的全部集合,称为这台计算机的指令系统(Instruction Set)。,指令是指挥计算机完成特定操作的命令。计算机所能认识的指令属于机器语言,是指能直接指挥计算机硬件工作的命令,也叫机器码,用二进制编码表示。 在早期的计算机中,使用机器自身能识别的机器语言来编写程序。,在20世纪50年代后,逐渐产生了用与机器语言相对应的符号(称为助记符)来编写的程序,这种符号语言后来就发展成了汇编语言。 但机器硬件不认识汇编语言,所以必须通过叫做汇编程序的软件把它转换成机器语言后才能在机器上得到执行。,为了摆脱对具体机器的依赖,在汇编语言之后又出现了面向问题的高级语言。 但为了使高级语言描述的算法和相应的程序能在机器上执行,同样需要一个翻译系统,于是产生了编译程序和解释程序,它们能把高级语言翻译成机器语言。,可见,随着各种语言的出现,汇编程序、编译程序、解释程序的产生,逐渐形成了软件系统。另一方面,随着计算机应用领域的不断扩大,外部设备的增多,为了方便对计算机各种软硬件资源的管理,又出现了操作系统。后来又出现了数据库管理系统和网络支持软件等。 上述各种软件属于系统软件,而软件发展的另一个主要内容就是应用软件。,1.2.4 计算机的工作过程,前面介绍了计算机的软硬件组成,接下来看一个简单的计算例子,通过对它在计算机中的执行过程的分析,来了解计算机的软硬件各种资源是如何配合来完成具体的工作的。为了理解这一运算过程,首先我们需要对计算机内的硬件结构有一个更深入的了解。,图1-2 细化的计算机组成框图,在此假设计算机要完成的运算是ax+b,在C语言中是a*x+b的表示形式,但是计算机不认识这样的形式,所以需要把该表达式转换成机器硬件能识别的机器语言表示才能在机器上得到执行。对用C语言编写的程序来说,在计算机上的转换及执行过程如图1-3所示。,图1-3 C语言程序在计算机上的执行过程,分析ax+b的操作,可以分为以下几个基本步骤: (1)取x至运算器中; (2)乘以a,得到ax,存于运算器中; (3)加b,得到ax+b,存于运算器中; 将上述操作步骤表示成某计算机对应的机器指令,就可以在计算机上执行。,设某机的指令字长为16位,其中操作码OP占6位,地址码占10位。操作码表示机器所执行的各种操作,如取数、存数、加、减、乘、除、停机、打印等等。表1-1列出了与上例有关的操作码及其对应的操作性质。,表1-1 操作码与操作性质的对应表,此例中所用到的数a、b、x,设事先已存入存储器的相应单元内。依据ax+b的运算过程,用上述机器指令可编写出一份运算的程序清单,程序和数据存放情况假设如表1-2所示。,表1-2 计算ax+b的程序清单,程序编完后,进入上机操作的过程。启动机器后,控制器立即将程序计数器的内容送至主存的MAR,并命令存储器做读操作,此刻主存“0”号单元的内容“0000010000000110”(程序的第一条指令)便被送入MDR内,然后由MDR送至控制器的IR,完成了一条指令的取指过程。,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号