资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,微机原理与接口技术,第,1,章 微型计算机的基础知识,3,本章主要介绍:,微型计算机的组成和微型计算机的工作过程,;,计算机的运算基础,。,重点是微型计算机的组成和计算机的运算基础。,1.1,微型计算机的发展及概述,5,第,1,章 微型计算机的基础知识,自,1946,年世界上第一台电子计算机问世以来,计算机科学和技术得到了高速发展。电子计算机的产生和发展是,20,世纪最重要的科技成果之一。到今天为止,电子计算机的发展已经历了由,电子管计算机,、,晶体管计算机,、,集成电路计算机,到,大规模集成电路、超大规模集成电路计算机,的四代更替。,6,第,1,章 微型计算机的基础知识,1.1.1,微型计算机的发展,所谓,“,微型计算机,”,是指:以大规模、超大规模为主要部件的,微处理器,作为核心,配以,存储器,、,输入输出接口,电路及,系统总线,的计算机系统。,1946年第一台计算机(,ENIAC),诞生,(电子数值集成计算机),就是采用冯.诺依曼结构框架。,投资150万美元,占地150平米,重30吨,用了18800个电子管,耗电150,KW,2KBytes,内存,5000次/,s,,几小时出一次故障。,7,第,1,章 微型计算机的基础知识,1.1.1,微型计算机的发展,1971,年,美国,Intel,公司研制出了,4,位,4004,微处理器芯片。该芯片能同时处理,4,位二进制数,集成了,2300,个晶体管,每秒可进行,6,万次运算,成本约为,200,美元。它是世界上第一个微处理器芯片,以它为核心组成的,MCS-4,计算机,标志着世界上第一台微型计算机的诞生。,从那时起,短短,20,多年的时间,微型计算机的发展经历了五代。我们一般以字长(计算机能同时处理的二进制的位数)和典型的微处理器芯片作为各阶段的标志。,8,第,1,章 微型计算机的基础知识,1.1.1,微型计算机的发展,第一代(,1971,1973,)是,4,位和低档,8,位微机。代表产品是美国,Intel,公司,4004,微处理器及由它组成的,MCS,微型计算机。,第二代(,1974,1978,)是中高档,8,位微机,以,Intel8080,8085,和,Z80,等为,CPU,的微型机为典型代表。,第三代(,1979,1981,)是,16,位微机,如以,8086,、,80286,、,Z8000,和,MC68000,为,CPU,的微型机。为与原,8,位机相衔接,,Intel,公司还推出了,8088CPU,,其指令系统完全与,8086,兼容,内部为,16,位的功能结构,外部数据总线是,8,位。,9,第,1,章 微型计算机的基础知识,1.1.1,微型计算机的发展,第四代(,1982,1992,)是,32,位微机,典型的,CPU,产品有,80386,和,MC68020,。之后,Intel,公司又推出了,80486,微处理器。,第五代(,1993,年以后)是,64,位微机。,1993,年,3,月,Intel,公司推出了当前最先进的微处理器芯片,-64,位的,Pentium,,该芯片采用了新的体系结构,其性能大大高于,Intel,系列的其他微处理器,给微处理器体系结构和,PC,机的性能引入了全新的概念。,10,第,1,章 微型计算机的基础知识,1.1.2,微型计算机的应用,各行各业,无所不用,科技、生产、学习、日常生活等各个方面,主要用于以下两个方向:,数值计算、数据处理及信息管理,2.,过程控制及智能化仪表,11,第,1,章 微型计算机的基础知识,1.1.3,微型计算机的组成,微机的基本硬件由下列几部分组成:,运算器(,ALU),控制器(,CTRL),存储器(,MEM),输入设备(,INE),输出设备(,OUTE),总线(,BUS),微处理器,12,第,1,章 微型计算机的基础知识,1.1.3,微型计算机的组成,图,1-1,微型计算机的基本结构,13,运算器(,ALU-Arithmetic Logic Unit),进行算术运算(加、减、乘、除与移位);,进行逻辑运算(与、或、非、异或等);,为了提高存取数据的速度,与,ALU,有关的部件还有寄存器阵列,第,1,章 微型计算机的基础知识,14,控制器(,CTRL-Controller),它是计算机的控制中心,发布与控制计算机工作的各种命令,协调计算机内部以及主机与外设工作的各种关系。,它有两个主要功能:,一个是控制程序的运行;,另一个是对不同的外部事件做出相应响应的能力。,(这些外部事件是指:复位、停机、中断请求、总线请求、总线周期延长等),上述,ALU+CTRL+REG,阵列=,CPU(,中央处理器),第,1,章 微型计算机的基础知识,15,存储器(,MEM-Memory),记忆部件。它存储计算机操作的控制信息及各种命令信息(指令)和被处理加工的信息(数据),包括存储加工的中间与最终结果。,存储器内有两类信息:,一类是命令信息(即指令),经译码并执行,放在代码区;,另一类是数据,放在数据区。,它们都以二进制形式存放。,应注意:内存中的代码区和数据区中的信息具有不同的性质与功能,两个区域中的某些单元具有相同的信息,却具有完全不同的含义。,第,1,章 微型计算机的基础知识,16,输入设备与输出设备,称为外设,其作用是进行信息形式的转换,即外界的语言、文字、图像、机械动作等信息转换成计算机能识别的电信号表示的二进制数形式,或进行相反方向的转换。,输入设备,如:键盘、鼠标、磁盘、光盘、游戏杆、扫描仪、数码相机、,A/D,转换器等,输出设备,如:显示器、打印机、音响、绘图机、磁盘、光盘、,D/A,转换器等,第,1,章 微型计算机的基础知识,17,总线(,BUS),总线是计算机各部件间传送信息的公共通路,它把计算机的各个部件连接成为一个整体。,分为内部总线,外部总线。,计算机内部的基本总线分为数据总线(,DBUS),,地址总线(,ABUS),,控制总线(,CBUS)。,通常又称为三总线。,第,1,章 微型计算机的基础知识,18,第,1,章 微型计算机的基础知识,1.1.3,微型计算机的组成,从系统的组成观点来看,一个微型计算机系统应包括硬件系统和软件系统。所谓“硬件系统”,是指在上述微型计算机的基础上配以必要的外部设备、外部存储器和电源设备等组成的设备集合;所谓“软件系统”,一般指在计算机上运行的程序,如操作系统和应用软件等,广义软件还包括由计算机管理的数据和有关的文档资料。,19,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,在启动计算机进行计算之前,必须作如下工作:,用助记符号指令编写程序;,用汇编软件将汇编程序翻译(汇编)成计算机能识别的机器语言指令;,将数据和程序通过输入设备送入存储器中存放。,20,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,如何计算,5+6,?,表,1-1,汇编语言和机器语言程序对照,操 作,助记符号,机器码,(二进制)(十六进制),功 能,立即数送累加器,MOV AX,,,05H,10110000 B0H,把,05H,送入累加器,AX,00000101 05H,加立即数,ADD AX,,,06H,00000100 04H,06H,与,AX,中的内容相加,并将结果存入累加器,AX,00000110 06H,整个程序一共,2,条指令,,4,个字节,假设它们存放在,00H,开始的,4,个单元中,21,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,计算机执行程序是一条指令一条指令执行的。执行一条指令分两个阶段,即,取指令阶段,和,执行指令阶段,。,开始执行程序时,必须先给程序计数器,IP,赋以第一条指令的地址,00H,,然后进入第一条指令的取指阶段。,22,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,图,1-2,取指令阶段的执行过程,23,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,图,1-3,执行指令阶段的执行过程,24,第,1,章 微型计算机的基础知识,1.1.4,微型计算机的工作过程,微型计算机的工作过程是执行程序的过程。首先,CPU,进入取指阶段,从存储单元中取出指令代码,通过数据总线,送到,CPU,中的指令寄存器中寄存,然后对该指令译码,译码器经译码后发出相应的控制信号,通过控制总线,,CPU,把控制信息传送到存储器或输入输出系统,它们会按照,CPU,的命令进行相应的动作,也即,CPU,执行指令指定的操作。,取指阶段由一系列相同的操作组成,因此取指的时间总是相同的。而执行指令的阶段是由不同的事件组成的,它取决于执行指令的类型。,1.2,微型计算机中信息的表示及运算基础,26,第,1,章 微型计算机的基础知识,目前使用的计算机是一种电设备,它只认识电的信号:如电平的高与低、电路的通与断、晶体管的导通与截止、电子开关的开与关等。将这两种状态用,0,和,l,两个符号表示,,0,或,l,就是二进制数的一位,称为,bit,。因此在计算机中,任何信息都必须用,0,和,1,的数字组合形式。也就是说,计算机存储和处理的仅仅是二进制信息。,27,第,1,章 微型计算机的基础知识,1,个二进制位称为,1,个,bit,;,8,个二进制位称为,1,个,Byte,,也称,1,个字节(,8,位);,2,个字节称为,1,个字(,Word,,,16,位);,2,个字称为双字(,Dword,或,Double Word,,,32,位);,4,个连续的字称为四字(,Qword,或,Quad Word,,,64,位);,连续的,10,个字节称为十字节,它是一个,80,位二进制的值。,28,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,1.,二进制数的表示,二进制数仅有两个计数符号:,0,、,1,。一个,8,位的二进制数由,8,个,0,或,1,组成,如,11010010,计数符号在不同位置有不同的位权:,11010010,1,2,7,+1,2,6,+0,2,5,+1,2,4,+0,2,3,+0,2,2,+1,2,1,+0,2,0,我们习惯于在二进制数的后面加上字母,B,(,Binary,),如,1100110lB,,,10011B,。,29,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,1,)算术运算,加法运算:逢,2,进,1,减法规则:借,1,当,2,乘法规则:,1,与,1,乘得,1,,其它为,0,30,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,2,)逻辑运算,逻辑运算都是比特运算。与算术运算区别在于,前者只在对应的比特之间进行,各位之间没有进/借位,本位运算结果不影响其它位。,常用的逻辑运算有:逻辑与、逻辑非、逻辑或、逻辑异或。,31,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,2,)逻辑运算,与运算通常用于屏蔽掉某些位(清0),保留某些位不变。,例:(,A5H)AND(F0H)=A0H;,屏蔽低4位(清0),保留高4位。,逻辑与运算(,AND),0,0,0,1,0,1,0,1,1,0,0,1,32,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,2,)逻辑运算,逻辑或运算通常把某些位置1,某些位不变。,例:(,A5H)OR(0FH)=AFH;,高4位不变,低4位置全1。,逻辑或运算(,OR),0,0,0,1,1,0,1,1,1,1,1,0,33,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,2,)逻辑运算,把逻辑变量变成反码。,例:,NOT(A5H)=5AH,逻辑非运算(,NOT),34,第,1,章 微型计算机的基础知识,1.2.1,二进制数的表示与运算,2.,二进制数的运算,(,2,)逻辑运算,异或运算可以使某些位清0,某些位变反。通常用于寄存器或内存单元清0。,例,:(,A,5H)XOR(0FH)=AAH;,高4位不变,低4位变反。,例,:,(A5H)XOR(A5H)=00H;,一个数自身异或,相当于清0。,逻辑,异或运算(,XOR,Exclusive OR),0,0,0,0,1,1,1,0,1,1,1,0,35,微机的硬件构成框图,例,1.1,:,00011010B,+01,101101B,10000111B,00011010,+,01101101,10000111B,36,微机的硬件构成框图,例,1.2,:,10011011B-00110101B,01100110B,10011011,-,00110101,01100110,37,微机的硬件构成框图,例,1.3,:,01110101B,00110110B,0001100010101110B,01110101,00110110,01110101,01110101,01110101,+01110101,0001100010101110,38,微机的硬件构成框图,例,1.4,:,10111001B,1011B,00010000B,,余,00001001B,39,微机的硬件构成框图,例,1.5,:,10011101B01101110B,00001100B,10011101,01101110,00001100,40,微机的硬件构成框图,例,1.6,:,10011101B01101110B,11111111B,10011101,01101110,11111111,41,微机的硬件构成框图,例,1.7,:,10011101B01101110B,11110011B,10011101,01101110,11110011,42,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,1.,二,-,十进制数的表示,十进制数有,10,个计数符号:,0,9,,而计算机仅认识,2,个符号:,0,、,1,,因而十进制数的,10,个计数符号需要改用,0,和,1,两个符号的编码表示。,10,个符号必须用,4,位二进制编码表示。,0 00005 0101,1 0001 6 0110,2 0010 7 0111,3 0011 8 1000,4 01009 1001,43,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,1.,二,-,十进制数的表示,这种用二进制编码的十进制数称为,BCD,(,Binary Coded Decimal,)数,压缩的(组合的),BCD,码:一个字节表示两位,BCD,码。,非压缩(非组合)的,BCD,码:一个字节表示一位,BCD,码,高 4位为0。,44,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,2.,二,-,十进制数的加、减运算,例,1.8,:,BCD,数,十进制数,1000,+01,01,8,+5,13,两个,BCD,数相加后,其结果已不是,BCD,数,1101,45,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,2.,二,-,十进制数的加、减运算,例,1.9,:,BCD,数,十进制数,1001,+0111,9,+7,16,运算结果,不对,10000,46,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,2.,二进制数的运算,究其原因是:在计算机中,用,BCD,可以表示十进制数,但其运算规则还是按二进制数进行的。因而,4,位二进制数相加要到,16,才会进位,而不是逢十进位。,为什么会出现不正确的结果,?,采取调整运算结果的措施。调整规则为:当,BCD,数加法运算结果的,4,位二进制超过,1001,(,9,),出现非法编码1010,1111或个位向十位有进位时,则加,0l10,(,6,)进行调整;当十位向百位有进位时,加,01100000,(,60,)调整。这是人为地干预进位。,微机的,CPU,中都有专门的十进制运算调整部件,DAA,,还设有专门的十进制加减运算调整指令,DAA,与,DAS,等。,如何解决,BCD,数的运算问题,?,47,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,2.,二进制数的运算,在,CPU,中,称为,Flag,寄存器,由于这些标志决定了程序分支的条件,也称为条件码(,CC:Condition Code)。,CPU,常设的标志有:,C(Carry),进位标志,运算结果的最高位产生进位或借位。,S,或,N(Sign,或,Negative,)符号标志,反映运算结果的符号位。,O,或,V(OVerflow),溢出标志,反映符号数运算结果是否产生溢出。,Z(Zero),零标志,反映运算结果是否为0。,48,例,:,若,X、Y,为十进制数,,X=38,Y=57,,计算,X+Y=?,3 8 (BCD,码中没有字母,结果中的,F(1111),为非法码,,+57,应在该位加6修正,以强迫其进位。),8,F,+0,.,6,9 5,例,:,若,X=28,Y=79,,计算,X+Y=?2 8,+7,.,9,A 1,因为低4位有进位(,AF=1),+6 6 高4位,A9,,所以+66,10 7,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,49,例,:,若,X、Y,为十进制数,,X=75,Y=26,,计算,X-Y=?,7,5 (BCD,码中没有字母,结果中的,F(1111),为非法码,,-2 6,应在该位-6修正,使借高位的数得到修正。),例,:X=30,Y=42,,计算,X-Y=?,3,0,-4 2,E E,因为低4位有借位(,AF=1),-6 6 高4位也有借位(,CF=1),8 8 所以 66修正,4,F,-0,6,4 9,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,50,BCD,码加法修正原则是:,若运算结果低位大于9或,AF(,半进位)=1,则结果+06;,若运算结果高位大于9或,CF(,进位)=1,则结果+60;,若 都满足时,则结果+66。,BCD,码减法修正原则是:,若运算结果低位大于9或,AF(,半借位)=1,则结果-06;,若运算结果高位大于9或,CF(,借位)=1,则结果-60;,若 都满足时,则结果-66。,第,1,章 微型计算机的基础知识,1.2.2,二,-,十进制(,BCD,)数的表示与运算,51,第,1,章 微型计算机的基础知识,1.2.3,十六进制数的表示与运算,十六进制数有,16,个计数符号:,0,9,,,A,F,。,4,个二进制位共有,16,种组合状态,这样每个十六进制数的计数符号可对应,4,位二进制数的一种组合状态;反之,,1,个十六进制符号可以替代一种,4,位二进制数的组合状态。在阅读和编写汇编语言程序时,经常用十六进制数表示数据、存储单元地址或代码等。,在书写数据时,为了区分不同进制的数据,在十进制数后加字母,D,或省略;在二进制数后加字母,B,;在十六进制数后加字母,H,,对于字母开头的十六进制数,还须在数据前加个,0,,以表明它是十六进制数而不是其他,如,25H,,,43,,,57D,,,0A5H,,,0CD3BH,。,52,第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,正号,“,+,”,和负号,“,-,”,在计算机中只能用,0,和,1,表示,我们用,0,表示,“,”,号,用,1,表示,“,-”,号,并且符号放在最高有效位。一个,8,位的二进制数表示一个带符号数,最高有效位,D,7,位为符号位。因为计算机的数据位长度是固定的,如,4,位、,8,位、,16,位、,32,位、,64,位等。当最高有效位作为符号后,其数值的大小就减小一半。而且计算机在进行运算操作时,符号也作为数据参与运算。,53,第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,1.2,的补码表示法,带符号数采用上面的编码方法不可取。考虑到计算机的数据位长度一定,因而可用补数的编码形式表示带符号数。在进行运算时,丢弃进位,就可得到正确结果。,对一个正的二进制数的每位求反再加,1,,即可得在机器中表示的该数的负数,即,2,的补码表示法。在这种编码方式中,正数的补码就是该正数。,54,第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,2.,带符号数的移码表示,前面介绍的数据是整型的,那么,实型数的数据在机器中又是如何表示的呢,?,实型数在存储器内不是以,2,的补码形式存放的,而是以,IEEE,标准格式存放的。一般,一个任意二进制数,N,可以表示为:,N,2,e,*M,其中,,M,为有效数字,称为尾数,,E,为数,N,的阶码。当,E,变化时,尾数,M,中的有效小数点位置也随之向左或向右浮动,故称为浮点表示法。,55,第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,3.,带符号数的运算,若运算结果超出了结果单元所能表达的范围就产生溢出。,加减运算产生的溢出无法从结果中看出,必须用专门的信息位来表示。,值得指出的是:计算机在进行运算时,对参与运算的数并不知道是无符号数或带符号数,所以它在运算后对4个标志都会置位,只有程序员知道参与运算的数是符号数或无符号数。,在计算机中,,OF,置位是根据次高位和最高位的进位的异或判别的。即,OF=C,7,C,6,56,例,:X=FEH,Y=FFH,,求,X+Y=?,并判断标志位。,FEH CF=1 (,有进位),+.F.FH SF=1 (,为负数),OF=0 (,没溢出)(有进位不一定有溢出),FDH ZF=0 (,结果不为0),例,:X=70H,Y=50H,,求,X+Y=?,并判断标志位。,70,H CF=0 (,无进位),+50H SF=1 (,为负数),OF=1 (,有溢出)(有溢出不一定有进位),C0H ZF=0 (,结果不为0),第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,3.,带符号数的运算,57,例,:X=30H,Y=40H,,求,X+Y=?,并判断标志位。,30,H CF=0 (,无进位),+40H SF=0 (,为正数),OF=0 (,没溢出)(即无进位又无溢出),70,H ZF=0 (,结果不为0),例,:X=80H,Y=80H,,求,X+Y=?,并判断标志位。,80,H CF=1 (,有进位),+,.,80H SF=0 (,为正数),OF=1 (,有溢出)(即有溢出又有进位),0,0H ZF=1 (,结果为0),第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,3.,带符号数的运算,58,在计算机系统中,由于,CPU,的数据宽度有,8,位、,16,位、,32,位,甚至,64,位之分,而存储器的数据总是以,8,位(字节)宽度组织,所以在进行某些运算时需要将,8,位数据扩展成,16,位,或者将,16,位数据扩展成,32,位等。无符号数扩展,仅在其数据之前加上若干位,0,即可;而带符号数的扩展实际是扩展其符号,即正数前补,8,个(或,16,个),0,,负数前补,8,个(或,16,个),l,。,例如:,+5,的,16,位表示为,000000000000010lB,-5,的,16,位表示为,1111111111000010B,+3EH,的,16,位表示为,0000000000111110B,-3EH,的,16,位表示为,1111111111000010B,第,1,章 微型计算机的基础知识,1.2.4,带符号二进制数的表示和运算,4.,带符号数的符号扩展表示,1.3,几种进制之间的相互转换,60,第,1,章 微型计算机的基础知识,1.,十进制转换成二进制,例,1.18,:将,205,转换成二进制整数。,1,最低有效位,0,1,1,0,0,1,1,最高有效位,故:,205,11001101B,1.3.1,十进制整数到任意进制整数的转换,十进制整数转换成任意进制整数,可按进位制的基数照下面的“辗转相除法”进行。,61,第,1,章 微型计算机的基础知识,1.,十进制转换成二进制,例:将,0.125,转换成二进制整数。,故:,0.125,0.001B,0.125,2,0.25,整数为,0,(,最高有效位),0.25,2,0.5,整数为,0,0.5,2,1.0,整数为,1,(最低有效位),1.3.1,十进制整数到任意进制整数的转换,62,第,1,章 微型计算机的基础知识,2.,十进制转换成十六进制,例,1.19,:将,327,转换成十六进制数,1,最低有效位,0,1,1,0,0,1,1,最高有效位,故:,205,11001101B,1.3.1,十进制整数到任意进制整数的转换,63,第,1,章 微型计算机的基础知识,1.,二进制转换成十进制,例,1.21,:将二进制数,1110110B,转换成十进制数,。,1.3.2,任意进制整数间的相互转换,任意进制整数到十进制整数的转换,按基数位权展开可以实现。,1110110B,1,2,6,+1,2,5,+1,2,4,+0,2,3,+1,2,2,+1,2,1,+0,2,0,116,64,第,1,章 微型计算机的基础知识,2.,带符号二进制整数到十进制整数之间的转换,二进制数用基数,2,,按位权展开即可转换成十进制数。而带符号数的最高位为符号,而且带符号数在计算机中是用其补码表示的,如果符号位为,0,,则该数为正数,它可按位权展开;如果符号位为,1,,它不能按正常位权那样展开。所以,对带符号二进制负数除符号位外,对二进制数每位求反再加,1,后,再按位权展开并添上符号,才能将负的二进制数转换成十进制数。,1.3.2,任意进制整数间的相互转换,65,第,1,章 微型计算机的基础知识,2.,带符号二进制整数到十进制整数之间的转换,例,1.25,:将计算机中带符号二进制数,01011011B,转换成二进制整数。,+1011011B,+,(,26+24+23+21+1,),+91,例,1.26,:将计算机中带符号二进制数,10101101B,转换成 二进制整数,将,10101101B,除符号位外每位求反再加,1,-1010011B,-,(,26+24+21+1,),-128+45,-83,1.3.2,任意进制整数间的相互转换,66,第,1,章 微型计算机的基础知识,3.,十六进制转换成十进制,例,1.22,:将十六进制数,A2EH,转换成十进制数。,A2EH,10,16,2,+2,16,1,+14,16,0,2606,1.3.2,任意进制整数间的相互转换,67,第,1,章 微型计算机的基础知识,4.,二进制数和十六进制数之间的相互转换,例,1.23,:将二进制数,10111B,和,l10001110B,转换成十六进制数。,1.3.2,任意进制整数间的相互转换,l0l011B,00l0,,,l011B,2BH,110001110B,0001,,,1000,,,1110B,18EH,例,1.24,:将十六进制数,8BDH,和,0C5AFH,转换成二进制数。,8BDH,1000,,,1011,,,1101B,0C5AFH,1100,,,0101,,,1010,,,1111B,第,2,章 微处理器系统结构,68,本章主要介绍:,微处理器(,CPU),的内部结构及功能,;,Intel 8086,微处理器工作模式、引脚信号;,堆栈,。,重点是,8086 CPU,的内部结构、引脚信号以及堆栈,。,69,微处理器(,CPU),由下列主要部分组成:,算术逻辑单元,ALU,控制器,寄存器阵列,总线和总线缓冲器,高性能的,CPU,还有:指令预取部件,指令译码部件、,地址形成部件、存储器管理部件等。,70,第,2,章 微处理器系统结构,一、算术逻辑运算单元(,ALU),ALU,是对二进制数进行算术逻辑运算的基本部件。,数据加工处理可归纳为两种基本运算:,算术运算,逻辑运算。,71,第,2,章 微处理器系统结构,一、算术逻辑运算单元(,ALU)(,续),算术运算:可进行无符号数和带符号数的加、减、乘、除运算,符号数采用补码表示,减法通过求负数的补码而变成加法运算。还可进行,BCD,码运算。,乘、除可以通过多次重复加、减和移位实现。,72,第,2,章 微处理器系统结构,一、算术逻辑运算单元(,ALU)(,续),例如:13 11=143=8,FH,1 1 0 1,采用部分积左移和加法,1 0 1 1 可完成二进制乘法。,1 1 0 1,1 1 0 1,部分积左移,0 0 0 0,+.1.1.0.1,1 0 0 0 1 1 1 1,73,第,2,章 微处理器系统结构,一、算术逻辑运算单元(,ALU)(,续),逻辑运算:可完成逻辑“与”、“或”、“非”、“异或”、“移位”等基本的逻辑运算。,浮点运算:浮点数可以看作是由两个定点数组成,尾数与阶码。在对阶后可以对尾数进行运算。,浮点数运算可以用软件实现。也可以专门生产浮点运算部件和浮点微处理器,并设有专门的浮点运算指令,可进行32位或64位浮点加、减、乘、除运算。,Pentium,处理器已把浮点处理器与主处理器集成到一个芯片上。,早期的浮点处理器有:8087、80287、80387协处理器。,74,第,2,章 微处理器系统结构,一、算术逻辑运算单元(,ALU)(,续),ALU,框图:,75,DAA,部件,Flag R,第,2,章 微处理器系统结构,二、控制器,CTRL,是发布操作命令的部件,操作的顺序需要,精确的定时,其内部主要组成如下:,1、指令部件,包括程序计数器(,PC),,指令寄存器(,IR),,指,令译码器(,ID)。,2、,时序部件,包括时钟系统,脉冲分配器。,3、微操作控制部件,可采用组合逻辑控制,微程序控制和可编程逻辑阵列(,PLA),来实现。,76,第,2,章 微处理器系统结构,二、控制器(续),控制器的组成框图:,77,第,2,章 微处理器系统结构,二、控制器(续),时钟周期(,T state):,主时钟的两个脉冲前沿的时间间隔称为一个时钟周期,又称为,T,状态。它,CPU,操作的最小时间单位。,机器周期:由25个,T,状态组成一个机器周期(,Machine Cycle),,称为,M,周期,又叫做总线周期,用来完成一个基本操作,如,MEM,读/写,,I/O,读/写等。,指令周期:一条指令(的取出和)执行所需的时间称为指令周期(,Instruction Cycle),,一条指令执行需15个,M,周期。,78,第,2,章 微处理器系统结构,M,1,机器周期,79,M,2,M,5,CLK,T,4,T,3,T,1,T,2,指令周期,(包括15个机器周期),指令周期、机器周期与时钟周期的关系如下图:,第,2,章 微处理器系统结构,三、总线与总线(缓冲器)部件,所谓总线是指计算机中传送信息的一组通信线,,将多个部件连成一个整体。可以简单分为:,片内总线:在,CPU,内部或部件内部各单元之间传,送信息的总线(又可细分为单总线、双总线(输入/输,出,BUS)、,多总线结构);,片外总线:,CPU,与外部部件之间传送信息的总线。,片外总线又称为系统总线,通常系统总线分为地,址总线、数据总线、控制总线,即所谓三总线结构。,80,第,2,章 微处理器系统结构,三、总线与总线(缓冲器)部件(续),因为多个部件均挂在总线上,但各部件工作情况,并非完全一样(有的作为信源发,有的作为接收器,收)。,由于数据或信息代码是用,电位高低,来表示,若某,一时刻有几个部件同时向,BUS,发送数据,则,BUS,上的,情况就成为,不确定,的了,电路也可能被,烧毁,。,所以,同一时刻只允许一个部件向,BUS,发送信息,。,而接收数据就没有上述限制,同一时刻可允许多,个部件接收数据。,81,第,2,章 微处理器系统结构,三、总线与总线(缓冲器)部件(续),总线缓冲器:在工作过程中,常常要求挂在,BUS,上的某些部件在电气连接上与,BUS,“脱开,”,,使这些部,件对,BUS,上其它部件的工作不产生影响,为此,可在,部件内部设置三态缓冲器。,DATA3,态,BUFBUS;,三态缓冲器(3态,BUF),处于:,低阻(高低电平)挂,BUS,上;,高阻逻辑上脱开。,82,第,2,章 微处理器系统结构,三、总线与总线(缓冲器)部件(续),“脱开”状态:,处于高阻状态,开路状态,浮空状态;,逻辑上“脱开”,物理上仍连在一起。,总线缓冲器分为:,单向三态缓冲器,如地址总线缓冲器只发地址信息,,(地址,BUS,是单向的);,双向三态缓冲器,如数据总线缓冲器,既可发又可,收数据(数据,BUS,是双向的)。,83,第,2,章 微处理器系统结构,三、总线与总线(缓冲器)部件(续),采用总线结构的优点是:,减少信息传输线数目;,提高系统的可靠性;,增加系统灵活性;,便于实现系统标准化。,84,第,2,章 微处理器系统结构,四、寄存器阵列(,Register Array),在,CPU,内部,有一个临时存放地址和数据的寄存,器阵列。这个阵列因,CPU,的不同而不同,有的称寄存,器堆,寄存器多少有差别,但其功能相似。,寄存器阵列大致分为以下四组:,存放待处理数据的寄存器;,存放地址码的寄存器;,存放控制信息的寄存器;,起数据或地址缓冲器作用的寄存器,。,85,第,2,章 微处理器系统结构,四、寄存器阵列(,Register Array),(续),存放地址的寄存器,指令指针(,IP),或程序计数器(,PC:Program Counter);,堆栈指示器(,SP:Stack Pointer);,其它可存放地址的寄存器(,Register,),,,例如变址,REG,、基址,REG。,存放数据的,REG,累加器(,AC:Accumulator);,通用,REG,组,,A,B,C,D,等。,86,第,2,章 微处理器系统结构,四、寄存器阵列(,Register Array),(续),存放控制信息的,REG,指令寄存器(,IR:Instruction Register),指令代码;,标志寄存器(,FR:Flag Register),,通常设有,SF、ZF、AF、PF、CF、OF、IF、DF,等标志。,起数据缓冲作用的,REG,数据总线缓冲,REG(DBUF:Data BUS Buffer);,地址总线缓冲,REG,(ABUF:Address BUS Buffer)。,三态,单向,内外部地址,BUS,之间缓冲。,87,第,2,章 微处理器系统结构,88,2.1,8086/8088,的结构,1.,通用,REG,组,AX,主累加器,BX,累加器或基址,REG,CX,累加器或计数器,DX,累加器或,I/O,地址,REG,89,AH,AL,BH,BL,CH,CL,DH,DL,第,2,章 微处理器系统结构,2.1 8086,8088,的结构,2.,指针与变址,REG,组,堆栈指针,基址指针,源变址器,目的变址器,90,SP,BP,SI,DI,变址,REG,指针,REG,第,2,章 微处理器系统结构,3.,段,REG,组,代码段,数据段,堆栈段,附加段,段,REG,是存放内存地址的高位地址,地址形成是由段寄存器地址左移4位加上对应的偏移量。,91,CS,DS,SS,ES,第,2,章 微处理器系统结构,例如:被取指令的地址为,CS,左
展开阅读全文