第2章 计算机体系结构与组织2012_第1页
第2章 计算机体系结构与组织2012_第2页
第2章 计算机体系结构与组织2012_第3页
第2章 计算机体系结构与组织2012_第4页
第2章 计算机体系结构与组织2012_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-计算机体系结构与组织,胡军南京航空航天大学2012,10,2020/7/4,2,2.1计算机系统简介,现代计算机系统是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统,由计算机硬件系统和计算机软件系统两大部分组成:硬件系统:由一系列电子元器件按照一定逻辑关系连接而成,是计算机系统的物质基础;软件系统:由操作系统、语言处理系统以及各种软件工具和应用软件等软件程序组成。计算机软件指挥和控制计算机硬件系统按照预定的程序运行和工作,从而达到预定目标。,2020/7/4,3,2.1.1计算机的硬件系统,现代计算机的基本工作原理是存储程序和程序控制(冯诺依曼原理,1946年

2、提出);其相应的计算机体系结构称为冯诺依曼结构。基本思想:二进制替代十进制。采用存储程序的思想。把计算机从逻辑上划分为5大部分,即运算器、控制器、存储器、输入/输出设备。,2020/7/4,4,计算机的五大部件,2020/7/4,5,2.1.2计算机的软件系统,没有配备任何软件的硬件计算机称为裸机,裸机向外部世界提供的界面只是机器指令(0101010)。计算机软件系统分为系统软件和应用软件软件系统之间的层次结构(洋葱结构,抽象层次)软件不仅包括程序,还包括相关的文档。软件可能是有史以来人们所构造的最复杂的系统如:微软的Windows系统比人类所建造的任何建筑都复杂的多,2020/7/4,6,2

3、.1.2计算机的软件系统(续),计算机科学中的核心概念抽象(abstraction)直观理解:一个实体(东西)的外部特征与内部构成细节之间的分离.(如:计算机,汽车,电视,微波炉等)抽象能让我们忽略复杂设备的内部细节,而将其作为一个单一的可理解单元。正是通过这种抽象机制,复杂的系统才能被设计和生产出来.具备抽象的能力也是人类区别于其他自然界动物的本质特征之一.,2020/7/4,7,2.1.2计算机的软件系统(续),计算机科学中的核心概念抽象(abstraction)与“抽象”紧密相关联的另一个概念就是系统层次结构(hierarchy),每个层次都代表了一层抽象.抽象并不局限于计算机、科学、技

4、术,其实它在我们日常生活中无处不在.计算机及其软件系统非常集中的、非常精巧的体现了人类处理复杂系统的抽象能力.,2020/7/4,8,2.1.3计算机系统主要技术指标,字长字节(8位bit,byte);字(word):8位、16位、32位、64位时钟周期/主频CPU的节拍(心跳);指令的执行需要多个节拍运算速度平均指令执行时间;MIPS(每秒执行百万条指令数)内存(存储)容量字节为单位;1KB=1024Bytes,1MB,1GB,1TB,数据输入输出最高速率32KBit/S;1MBit/S;,2020/7/4,9,2.2数值数据,计算机只能识别二进制编码的指令和数据,其他的如数字、字符、声音、

5、图形、图像等信息都必须转换成二进制的形式,才能提供给计算机进行识别和处理。由于二进制只有两个状态即0和1,这正好与物理器件的两种状态相对应,如电压信号的高与低、电路的导通与截止、脉冲的有无等;而十进制电路则需要用10种状态来描述,这将使得电路十分复杂,处理也非常困难。,2020/7/4,10,2.2.1二进制数的逻辑运算操作,布尔(逻辑)运算:AND(“与”)OR(“或”)XOR(exclusiveor)(“异或”)NOT(“非”)0和1其实就代表了真(True)和假(False),2020/7/4,11,AND、OR与XOR的布尔运算法则,2020/7/4,12,2.2.2门和触发器,门(G

6、ate):可以进行布尔运算的设备,齿轮、继电器、微电子电路(数字0和1由电压电平来表示)等;门电路为构造计算机提供了最基础的构件;VLSI(VeryLargeScaleIntegration,超大规模集成电路),2020/7/4,13,2.2.2门和触发器(续),2020/7/4,14,2.2.2门和触发器(续),触发器(Flip-flops):由门电路组成的电路结构,可以用来保存数据0或1;一个输入端用来设置其保存的值为1(即:输出为1);另一个输入端用来设置其保存的值为0(即:输出为0);当两个输入端都为0时,则不改变原有的值(即:输出保持不变);,2020/7/4,15,2020/7/4

7、,16,2.2数值数据(续),采用二进制将使得计算机在物理上实现简单、处理简单,且具有可靠性高、抗干扰能力强等优点。数字式:用空桶表示二进制的0,盛满水的桶表示1;用桶的组合来表示数值;模拟式:用桶中的水位来表示数值.,2020/7/4,17,进位计数制(位置计数法)(123.45)10=1102+2101+3100+410-1+510-2(101.01)2=122+021+120+02-1+12-2ai:数码(数字符号),X:基数,简称“基”或“底”(如:10,2)Xi:权(每一固定位置对应的单位,如:102,101,22,21,等),2.3数的表示及数制转换,2020/7/4,18,计数规

8、则:逢基数进一十进制系统中,进位原则是“逢十进一”在二进制系统中,其进位原则是“逢二进一”日常生活中常用十进制数;计算机内所有数据都是以二进制代码的形式存储、处理和传送在输入/输出或书写时,为了用户方便,也经常用到八进制和十六进制;“逢八进一”;“逢十六进一”,2.3数的表示及数制转换(续),2020/7/4,19,各种进制的基、位权及基本符号,2020/7/4,20,数制间的基本关系,2020/7/4,21,数制的表示,下标法:用小括号将所表示的数括起来,然后在右括号右下角写上数制的基R。(123.45)10(101.01)2字母法:在所表示的数的末尾写上相应数制字母。010110B3AE2

9、H,2020/7/4,22,数制之间的转换,其它进制转换为十进制二进制与八进制、十六进制的相互转换十进制数转换为其它进制数,2020/7/4,23,其它进制转换为十进制,例1:将二进制数1101.101转换为十进制数解:(1011.101)2=123+022+121+120+12-1+02-2+12-3=8+0+2+1+0.5+0+0.125=11.625例2:将十六进制数2AE.4转换为十进制数解:2AE.4H=2162+10161+14160+416-1=512+160+14+0.25=686.25,2020/7/4,24,二进制与十六进制的相互转换,方法:四位二进制对应一位十六进制(整数

10、部分从右到左,小数部分从左到右)例1:将1011101001.110101B转换为十六进制数解:整数部分:0010111010012E9小数部分:11010100D4故1011101001.110101B=2E9.D4H,2020/7/4,25,二进制与十六进制的相互转换,例2:将5A.3BH转换为二进制数解:5A.3B1011010.00111011故5A.3BH=1011010.00111011B,2020/7/4,26,例1:将十进制整数105转换为二进制整数解:2105252余数为1226余数为0213余数为026余数为123余数为021余数为10余数为1所以,(105)10(1101

11、001)2,十进制数转换为二进制数或十六进制数,2020/7/4,27,例2:将十进制小数(0.8125)转换为二进制小数,采用“乘2顺取整”的方法:0.812521.625取整数位10.62521.25取整数位10.2520.5取整数位00.521.0取整数位1所以,(0.8125)10(0.1101)2注意:1.如果出现乘积的小数部分一直不为“0”(如:0.6876),则需要根据精度要求截取一定的位数(截断误差).2.只有很少一部分十进制小数具有精确的二进制浮点数表达。(运算过程的误差累积)(数值分析),十进制数转换为二进制数或十六进制数,2020/7/4,28,思考与练习,将十进制数11

12、.375转换为二进制数将十进制数301.6875转换为十六进制数将3ADH转换为十进制数将10001110010001010B转换为十六进制,2020/7/4,29,2.4数的原码、反码和补码,数有正负、整数、小数,因此,数值数据在计算机中的表示必须明确指明符号表示方法和小数点的位置表示方法。符号表示方法:占用一位二进制数位(最高位);“0”表示正号,“1”表示负号N11101010N21011100N1:01101010N2:11011100,2020/7/4,30,真值与机器数,机器数是指数在计算机中的具体表示形式,我们将通常的数称为机器数的真值。在计算机中只有机器数,不存在数的真值。如:

13、两个数N1和N2的真值分别为:N11101010;N21011100所对应的机器数分别为:N1:01101010;N2:11011100,2020/7/4,31,表示整数的原码、反码和补码,二进制数值数据(整数)在计算机中有原码、反码和补码3种表示方法主要考虑到实现数值运算电路设计的高效和可靠问题反码很少使用表示整数最普遍的系统:二进制补码小数也可以用类似的方式来表示,2020/7/4,32,原码,原码:一个二进制数,最高位表示数的符号(0正,1负),其余各位保持不变表示数值本身。例:求1011,1011的原码原码的特点:数的原码与真值之间的关系较简单,与真值的转换方便适于作乘除运算在机器中进

14、行加减法运算时比较复杂,2020/7/4,33,补码,补码:对于最左边的符号,如果是正数,补码的符号位为0,其余数值位不变;如果是负数,则补码的符号位为1,然后其余数值位按位取反后加1。,2020/7/4,34,补码的运算,应用二进制补码的计算机设计只需要用加法电路和取负电路就可以完成加、减、乘、除。简单、高效、可靠。溢出问题(overflow)(“千年虫”)如:4位二进制补码系统中,5+4=9(-7)?32位(最大数2147483647)、64位补码系统、,2020/7/4,35,数值数据中的小数点表示方法-定点数和浮点数,在计算机系统的发展过程中,曾经提出过多种方法表达实数:定点数(fix

15、ed-pointnumber):小数点的位置事先已有约定,不再改变.浮点数(floating-pointnumber):小数点的位置可以变动;科学计数法小数点位置隐含约定(节省内存),2020/7/4,36,定点数,基本思想:小数点固定,位于实数所有数字中间的某个位置;计算机设计时在机器结构中约定好.如:货币的表达(99.00或00.99)可以用于表达具有四位精度的数,小数点后有两位的货币值.定点整数定点小数,16位定点整数形式表示的十进制数(195),16位定点小数形式表示的十进制数(-0.6876),2020/7/4,37,优点:计算规则简单、方便;机器硬件实现也较简单.(在特定需求场合仍

16、然会使用)缺点:表示形式过于僵硬,固定的小数点位置决定了固定位数的整数部分和小数部分,不利于同时表达特别大的数或者特别小的数;需要对参加运算的数进行比例因子的计算;同样大小的空间中,可以存放远比定点数取值范围大得多的浮点数(虽然浮点数的运算规则比定点数复杂得多)。,定点数(续),2020/7/4,38,浮点数,绝大多数现代计算机系统采纳了浮点数表达方式(科学计数法);如:123.45表示为1.2345102;其中:1.2345为尾数(有效数字),10为基数,2为指数;(利用指数达到了浮动小数点的效果,可以灵活地表达更大范围的实数)规范化:表达多样性:123.45可以表达为:12.34510-1

17、,0.1234510-3或者1.234510-2规范化以达到统一表达的目的:1.234510-2二进制数1001.101(9.625)的浮点数规范表达为1.00110123。,2020/7/4,39,计算机中用有限的连续字节保存浮点数的;必须有特定的格式标准(IEEE-754)C,Java,:float类型:单精度32位浮点数(注意:指数域的偏移操作(-127),有效表示:-127至128尾数的保存规则:二进制的1001.101的表示)double类型:双精度64位浮点数,浮点数(续),2020/7/4,40,常见的浮点数运算的“不准确”问题:由于事实上只有很少一部分十进制小数具有精确的二进制

18、浮点数表达;因此从十进制到二进制的变换不能保证总是精确的,很多时候只能是近似值。再加上浮点数运算过程中的误差累积,很多看来非常简单的十进制运算有时会出现出人意料的计算结果:Java示例:System.out.print(34.6-34.0=+(34.6f-34.0f);输出结果如下:34.6-34.0=0.5999985(原因:34.6无法精确表达为相应的浮点数,只能保存为经过舍入的近似值)在软件设计(程序设计)中,涉及到浮点数运算时,要很小心的考虑实际的数据运算精度需求和运算可能产生的误差。,浮点数(续),2020/7/4,41,2.5非数值数据,计算机中还能处理非数值数据,包括:字符(Ch

19、arcter)、声音(Sound)、图形(Graph)、图像(Image)等数据信息;如:使用office处理文本;用暴风影音播放视频文件;处理数码相机拍的照片;但是计算机只处理二进制编码形式的数据,因此非数值数据都必须转换为二进制表示的编码才能提供给计算机进行处理。,2020/7/4,42,2.5.1文字信息(字符)的编码,英文字符的编码ASCII码(AmericanStandardCodeforInformationInterchange):美国信息交换标准码7位二进制数(后扩充为8位):128种字符(10个数字符号,26个小写字母符号,26个大写字母符号,运算符号,标点符号.)Unico

20、de(16位),ISO(32位),中文字符的编码(GB2312)机内码:计算机内部存储、处理用的二进制汉字编码;机外码:不在计算机内使用的汉字编码,主要是指汉字输入码;此外还有供输出的汉字字形点阵码。,2020/7/4,43,2.5.2声音的编码,目的:将模拟信号(如语音、音乐等)转换成为数字信号。基本方法:A/D(模/数)转换,采样每隔一定时间间隔对模拟波形上取一个幅度值量化将每个采样点得到的幅度值以数字存储编码将采样和量化后的数字数据以一定的格式记录下来,2020/7/4,44,数字音频的文件格式:Wave格式文件(.Wav):记录了真实声音的二进制采样数据,通常文件较大。MIDI格式文件

21、(.MID):数字音乐的国际标准,记录的是音符数字,文件小。MPEG音频文件(.MP1/.MP2/.MP3):采用MPEG音频压缩标准进行压缩的文件。,2.5.2声音的编码,2020/7/4,45,2.5.3图形、图像数据的编码,图像(Image)由扫描仪、摄像机等输入设备捕捉实际的画面产生的数字图像,是由像素点阵构成的位图(bit-map)。图形(Graph)是指由外部轮廓线条构成的矢量图(vector-graph);即由计算机绘制的直线、圆、矩形、曲线、图表等;矢量编码位图编码,2020/7/4,46,常用图像文件格式,BMP和DIB与设备无关的位图格式文件,Windows环境中经常使用。

22、GIFInternet上的重要文件格式之一,压缩比较高,与设备无关。JPEG(.JPG)利用JPEG方法压缩,Internet上重要文件格式之一,用于处理256色以上、大幅面图像。WMF位图与矢量图的混合体,Windows中许多剪贴画图像。广泛应用于桌面出版印刷领域。,2020/7/4,47,2.6数据的存储系统,主存储器(mainmemory)内存(主存)海量存储器(massstorage)硬盘光盘闪存磁带,2020/7/4,48,主存单元(Cell)及地址(Address),主存单元:一个字节(Byte,即8个bit)最高位:最左边的bit位最低位:最右边的bit位主存地址:能够唯一标示出

23、一个主存单元实际上是用数字来表示地址号地址从0开始,连续分配如:256字节的主存空间;1G(?),2020/7/4,49,主存编址及存取方式,编址规则:主存地址线性增长.主存中所有的二进制位本质上被排序成一长行,使得可以存储比单个存储单元要长的数据.随机存取器(RAM:RandomAccessMemory)主存器由单个、可编址的存储单元组成,且可以根据需要用任何顺序进行存取;读(read)/写(write).存取任一单元所需的时间相同断电后,存储内容立即消失(易失性,volatile),2020/7/4,50,主存器种类,随机存储器(RAM)动态RAM(DRAM):目前主要内存器的构成静态RA

24、M(SRAM):速度最快,价格昂贵,用于CPU缓存只读存储器(ROM:ReadOnlyMemory):非易失可编程只读存储器(PROM)可删除编程只读存储器(EPROM)电可删除编程存储器(EEPROM),2020/7/4,51,海量存储器,海量存储系统(Massstorage)(辅助存储器)原因:主存储器的易失性、容量限制、价格较昂贵.种类:磁学系统:磁盘、磁带光学系统:光盘闪存驱动器:U盘优点:更稳定、容量大、价格低、存档方便缺点:一般需要机械运动,相比较主存储器(ns级),速度慢(ms级),2020/7/4,52,海量存储器-磁盘,3.5英寸软盘,硬盘的容量计算式:硬盘容量=记录面数柱面

25、数扇区数/磁道字节/扇区,2020/7/4,53,海量存储器磁带,磁带缺点:相对于磁盘系统,存取时间更长,不适合联机应用.优点:脱机档案数据存取,容量大、可靠性高、性价比好,2020/7/4,54,海量存储器光盘(CD),光盘(CompactDisk:CD):盘面反射层对光的反射偏差特点:处理长且连续的数据串(如:音乐复制)效率高,但随机存取数据的效果不如磁盘。,数据记录在一个道(track)上,道向外螺旋形展开,并分为很多扇区,2020/7/4,55,闪存:结合了ROM和RAM的长处便携式应用:U盘和MP3嵌入式系统:近年来Flash全面代替了EPROM,用作存储Bootloader、操作系

26、统、程序代码、直接当硬盘使用(U盘)。优点:具备电子可擦除可编程(EEPROM)的性能,不会断电丢失数据,同时可以快速读取数据缺点:可靠性问题反复插写会损坏存储介质,不适合主存储器应用长期应用时,不如其他介质可靠,海量存储器闪存(Flashmemory),2020/7/4,56,2.7计算机体系结构,问题:计算机内部是如何动态的操纵数据的?CPU的基本结构机器语言与机器指令系统程序的执行过程计算机与外部设备的通信,2020/7/4,57,CPU的基本结构,中央处理单元(CPU:CentralProcessingUnit),简称:处理器(processor).算术/逻辑单元(ALU:Arithm

27、etic/LogicUnit)控制单元(ControlUnit)寄存器单元(RegisterUnit)通用寄存器(General-PurposeRegister)专用寄存器(Special-PurposeRegister),2020/7/4,58,CPU的基本结构(续),CPU通过总线(Bus)与主存储器以及外部其他设备(如:输入输出设备,主板)进行通信联系,计算1+2的程序的执行过程:1.从主存中取出1放入寄存器A中;2.从主存中取出2放入寄存器B中;3.激活加法电路,以A和B中的值作为输入,用寄存器C存放相加结果3;4.将寄存器C中的数3存入主存;5.停止,2020/7/4,59,存储程序

28、的概念,早期计算机中每个执行的步骤都是事先存入控制单元中,作为计算机的一部分;早期电子计算机的设计使得CPU可以方便的通过插拔装置进行重新布线,程序仍然被认为是CPU的一部分冯.诺依曼:存储程序(stored-program)程序可以像数据一样进行二进制编码,并存储在主存器中.(计算机发展中的一个开创性的重要概念)CPU的控制单元可以从主存中读取程序,然后将指令解码(决定做什么事情),最后执行程序指令;修改程序只需改存储器中的内容,而不必再对CPU进行重新布线;程序本身也可以被当作数据一样处理.,2020/7/4,60,机器语言及指令系统,为了应用存储程序的概念,CPU被设计成可以识别各种指令

29、(二进制编码形式);如:算术运算、数据传输等;这些指令及其相应的编码系统称为机器语言(MachineLanguage)通常,一个典型的CPU必须要能解码并执行的指令集合很小,但不同的厂商基于运行效率、使用便利性等方面的考虑,导致不同的CPU体系结构:RISC,CISC,2020/7/4,61,机器语言及指令系统(续),精简指令集计算机:RISC(ReducedInstructionSetComputer)只需执行最小的一组机器指令集;强调效率高、速度快;嵌入式系统应用;如:PowerPC(苹果、IBM和摩托罗拉),SPARC(Sun)复杂指令集计算机:CISC(ComplexInstructi

30、onSetComputer),能够执行大量复杂指令;容易编程,桌面应用;如:Intel的奔腾系列芯片,AMD,2020/7/4,62,机器语言及指令系统(续),不管是RISC还是CISC,机器指令集都可分为3类:数据传输类:从一个存储位置复制(或移动)数据到另一个存储位置(寄存器、主存单元、外设备);Load,Store;算术/逻辑类:控制单元要求在ALU内实现一个活动(算术运算、逻辑运算数据移位等);控制类:指导程序执行流程,但不是数据操作的指令;如:条件转移指令(ifthen);JUMP;,计算1+2的程序的执行过程:1.从主存中取出1放入寄存器A中;2.从主存中取出2放入寄存器B中;3.

31、激活加法电路,以A和B中的值作为输入,用寄存器C存放相加结果3;4.将寄存器C中的数3存入主存;5.停止,2020/7/4,63,机器语言及指令系统(续),机器指令的格式不同的CPU有不同的指令系统;操作码(Op-code):执行什么样的操作;(操作符)操作数(Operand):参与操作的详细信息(数据、存储位置等)根据不同的操作码,操作数的格式会相应不同例:16位(双字节)的指令结构;约定好操作码和操作数的位数.,2020/7/4,64,一个简单的计算机体系结构示例,主存:256个内存单元(8位),地址从00-FF;CPU:16个通用寄存器,控制器中有两个专用寄存器:程序计数器(PC):下一个待执行的指令的地址.指令计数器(IR):存放当前执行的指令.,2020/7/4,65,机器语言及指令系统(续),机器指令设计:16位(双字节)长度,前4位操作码,后12位为操作数.,其他指令示例:156C;5056;306E;,2020/7/4,66,程序(指令)的执行,CPU通过两个专用寄存器来控制程序(指令)的执行:程序计数器(PC):下一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论