微机原理与接口技术第1章.ppt

上传人:牧羊曲112 文档编号:5975727 上传时间:2023-09-10 格式:PPT 页数:75 大小:797.50KB
返回 下载 相关 举报
微机原理与接口技术第1章.ppt_第1页
第1页 / 共75页
微机原理与接口技术第1章.ppt_第2页
第2页 / 共75页
微机原理与接口技术第1章.ppt_第3页
第3页 / 共75页
微机原理与接口技术第1章.ppt_第4页
第4页 / 共75页
微机原理与接口技术第1章.ppt_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《微机原理与接口技术第1章.ppt》由会员分享,可在线阅读,更多相关《微机原理与接口技术第1章.ppt(75页珍藏版)》请在三一办公上搜索。

1、微机原理与接口技术,本章主要的内容是介绍微型计算机基本知识(1)微型计算机的功能组成及工作原理(2)微处理器的内部组成以及指令执行过程(3)微型计算机系统中数据的编码方式(4)微型计算机系统中的数值运算。,第1章 微型计算机的基本知识,重点掌握和理解的知识(1)重点掌握微处理器的组成原理和工作过程(2)重点掌握计算机系统中数值的编码方式及相关的概念(3)掌握微型计算机的系统组成结构,掌握相关的技术指标(4)掌握字符的编码方法(5)掌握计算机系统中的数的运算方法(6)了解BCD码和溢出等基本概念,西安石油大学电子工程学院,冯诺依曼原理,采用二进制代码表示数据,程序存储,由运算器存储器控制器和输出

2、输入设备等功能单元组成,冯诺依曼原理,计算机的基本工作原理,西安石油大学电子工程学院,在计算机内部使用二进制数;即用二进制数码表示数据和指令、程序数据、指令都必须最终转换为二进制数码在物理上,必须使用有两个稳定物理状态的介质,存储记录二进制数码,程序存储是诺依曼原理的核心事先确定计算机应进行的操作和该操作所需要的有关数据 将数据和处理数据的程序(指令)共同存入计算机 计算机“获得了”运算所需要的“知识”和“方法”计算机将在该程序的控制下,“自动”地工作,冯氏体系结构的计算机基本组成,存储数据和程序,将二进制代码转换为相应的源信息形式;输出数据信息,识别并分析指令;向相关功能组件发送操作指令;实

3、现程序控制;协调各部分的工作;是计算机的控制中心,将原始数据和程序输入到计算机内部并转换成为二进制代码,算术运算、逻辑运算比较运算、字符运算等等,西安石油大学电子工程学院,微型计算机的结构特点,微型计算机是计算机家族中一个特殊成员;遵从计算机的组成原理;具有三个显著特点:微型计算机以主板作为硬件组件的“集成平台”微型计算机采用总线结构,连接各硬件组件,传送各种数据信号微型计算机将运算器和控制器集成在一个芯片上,称为微处理器,即CPU,西安石油大学电子工程学院,微型计算机的基本结构,西安石油大学电子工程学院,CPU的基本功能运算与控制,西安石油大学电子工程学院,数据运算根据程序要求,完成各种数据

4、运算(包括算数及逻辑运算)指令控制程序是一系列的指令的有序集合;指令控制即控制程序的执行顺序操作控制一条指令的功能往往由若干个操作组合实现;CPU负责分析指令,并产生相应的操作信号,把操作信号送往相应的组件,控制这些组件完成相应的操作时序控制对各组件的操作进行时间上的定时,控制各个操作按时序协调进行,微处理器内部结构示意,西安石油大学电子工程学院,微处理器工作原理示意图,西安石油大学电子工程学院,假设程序已存储在内存单元中;程序计数器中保存着将要执行的指令的地址;控制器将程序计数器中的地址送至地址寄存器MAR,并发出读命令;存储器根据此地址取出一条指令,经过数据总线送入指令寄存器IR指令译码器

5、对IR中的指令进行译码分析,确定该指令的操作功能控制逻辑阵列向存储器、运算器等等部件发出操作命令,执行指令操作码规定的操作修改程序计数器的内容,为取下一条指令做准备,微处理器基本工作过程,微处理器的基本工作过程包括 取指令 分析指令 发送操作信号,执行指令 为执行下一条指令做准备,西安石油大学电子工程学院,程序与指令的执行过程,西安石油大学电子工程学院,指令的执行过程,数据寄存器,累加器,运算器,000,001,002,003,004,005,006,007,008,A,A,B,A+B,C,A+B-C,A+B-C,A+B-C,西安石油大学电子工程学院,微型计算机系统,以微型计算机为主体,配上系

6、统 软件和外部设备以后,就构成完整 的微型计算机系统 微型计算机系统包括:,西安石油大学电子工程学院,微型计算机系统的主要性能指标,字与字长:计算机在同一时间内能够处理的一组二进制数称为一个计算机的“字”;这组二进制数的位数就称为“字长”;在其他指标相同时,字长越长计算机处理数据的速度就越快反映了CPU在一次操作中能够处理数据的最大能力,以人为例:若计算56,则立即可以得到答案是30;但对于5566,就不容易立即得到正确的答案,这就是说55或66已超出了人脑的“字长”这时为了得出结果,就必须把复杂的问题分解成易于处理的问题(将5566可分解为5060,506,560,56),然后再综合起来,得

7、出结果,西安石油大学电子工程学院,微型计算机系统的主要性能指标,主存容量:主存贮器所能存贮的信息总量为主存容量;一般表示存容量有两种方法:用字节数表示;如64KB;1MB用存储单元数字长表示:128K*8;256M*16,西安石油大学电子工程学院,微型计算机系统的主要性能指标,主频:主时钟信号的频率称为计算机主频,用于协调各硬件组件操作;决定着计算机的处理速度,频率越高,处理速度越快;一般用MHz或GHz来描述 运算速度(平均运算速度):指每秒钟所能执行的指令条数;一般用“百万条指令/秒”来描述,西安石油大学电子工程学院,计算机中的数制及其编码,内容介绍 计算机中的常用数制及特点 计算机中数据

8、的编码 计算机中数值型数据的表示方法,西安石油大学电子工程学院,数制的意义,按进位的原则进行计数,称为进位计数制,简称“数制”数制的三要素及意义进位基数R:逢R进一数码(或称为数符):使用那些字符表示数位权:一个数字在某个固定位置时的值,基数R的意义:数码有R种可能的取值“逢R进一”小数点右移一位相当于乘R 反之相当于除以R,西安石油大学电子工程学院,数的展开式,N:第i,j位上的数码 K:第i,j位上的数码的数权,重要约定:整数部分的最低为称为第0位,123456.123 1*105+2*104+3*103+4*102+5*101+6*100+1*101+2*102+3*103,西安石油大学

9、电子工程学院,计算机中常用进制数,1A4E2F.1C8H 1*165+A*164+4*163+E*162+2*161+F*160+1*161+C*162+8*163,西安石油大学电子工程学院,不同数制下数值转换,十进制数,二进制数,八进制数,十六进制数,整数:连续地除2取余小数:连续地乘2取整,按权展开相加,三位幷一位,一位拆三位,四位幷一位,一位拆四位,按权展开相加,按权展开相加,西安石油大学电子工程学院,数的书写问题,西安石油大学电子工程学院,二进制的运算规则,西安石油大学电子工程学院,二进制数算术运算举例,西安石油大学电子工程学院,二进制数逻辑运算举例,例如:a=1100,b=0110

10、进行运算:ab、ab、a、ab 1100 1100 1100 1100 0110 0110 逻辑非为 0110 1110 0100 0011 1010,逻辑运算按位进行,不同位之间不存在任何联系而算术运算中位之间可能有进位或借位,西安石油大学电子工程学院,数据在计算机中的表示,西安石油大学电子工程学院,按冯氏原理,在计算机中,非二进制形式的数据信息必须转换为二进制代码形式不同类型的数据信息的表示方法不同非数值型数据转换为-ASCII码其中的数字字符还可以转换为-BCD码数值型数据转换为-二进制数值,ASCII码的规则,西安石油大学电子工程学院,用8位二进制代码表示一个字符,即用一个字节存储一个

11、字符最高为取0;后7位为编码值余下的7位可给出128个二进制编码即0000 0000-0111 1111可以表示128个字符构成标准ASCII码字符集,128个字符包括:95个对应于键盘上能输入并可显示输出的95个字符;编码值为32126)33个(031 和 127)表示操作控制码,ASCII码的规则,控制字符的编码是0000 00000001 1111(31)和0111 1111(127)0010 0000(32)为空格键的编码数字09的编码是0011 0000(48)0011 1001(57),它们的高4位均是0011英文字母AZ的ASCII码从0100 0001(41H)开始顺序递增,字

12、母az的ASCII码从0110 0001(61H)开始顺序递增其他为标点及运算符号的编码,西安石油大学电子工程学院,记住0的ASCII码四48(30H)(0011 0000)记住A的ASCII码是65(41H)(0100 0001)记住a的ASCII码是 97(61H)(0110 0001)记住大小字母之间包含6个其他符号,西安石油大学电子工程学院,ASCII编码表,BCD码十进制数字字符编码,西安石油大学电子工程学院,十进制的数字字符可以表示为ASCII码,也可以特殊的表示为BCD码用4位二进制数表示一位十进制数;该4位二进制数码的值与所表示的十进制数的值相同 例:5-0101;9-1001

13、;2-0010根据4位二进制数码的位权值,又称为8421码,BCD码的特殊意义,西安石油大学电子工程学院,在计算机中,一组二进制的代码一般可分为两种意义一种是某字符的编码(称为码)一种是某个数的数值(称为值)值是可以进行运算的,而码则无此意义BCD码既是码表示阿拉伯数字字符BCD码也是值表示十进制的数值,可运算,BCD码运算例,23+22=450001 0111+0001 0110=0010 110117H+16H=2DHBCD码方式 0010 0011 23+0010 0010 22 0100 0101 45,西安石油大学电子工程学院,BCD码运算例,56+55=1110011 1000+0

14、011 0111=0110 111138H+37H=6FHBCD码方式0101 01100101 01011010 1011 这显然是错误,错误发生在:当计算结果大于9而需要低四位BCD码向高四位BCD码进位时原因:4位2进制数的进位规则是16进1;而BCD码要求是10进1修正:当有进位时(即大于9时),在实际结果中加6,西安石油大学电子工程学院,数值的二进制表示方法,在计算机中,数值的表示比较复杂数值有正数和负数之分将涉及如何表示正负号的问题原码、反码和补码数值有整数和实数之分将涉及小数点的表示问题定点数与浮点数,西安石油大学电子工程学院,数值的二进制表示问题,数值,真值,机器数,无符号数,

15、带符号数,原码,反码,补码,西安石油大学电子工程学院,数值在计算机中的表示形式称为“机器数”真值的符号位被符号化以后就成为“机器数”,数值本身的实际值称为“真数”,+52=+0110100=0 0110100 符号位数值位(绝对值)-52=-0110100=1 0110100,真值,机器数,真值与机器数的例子,西安石油大学电子工程学院,无符号数与带符号数,西安石油大学电子工程学院,一般用若干位二进制数的最高位表示符号,其余的表示数值的大小,则称为带符号数。如将全部有效位都用来表示数值的大小,则称为无符号数的表示方法,所表示的数就称为无符号数。,机器数 1100 1011无符号数,其真值为 20

16、3带符号数,则真值为-75,无符号数与带符号数的例子,西安石油大学电子工程学院,带符号数的表示形式,在计算机技术中,带符号数可具有三种不同的表示形式原码反码补码,西安石油大学电子工程学院,原码的意义,最高位为符号位,0表示正数,1表示负数;剩余位为数值位其数值位与其对应真值的绝对值数值位相同例:真值 x1=+1010100B x2=1010100B 机器数:x1原=01010100 x2原=11010100特点:表示简单、直观加减运算复杂,西安石油大学电子工程学院,原码运算的复杂化问题,西安石油大学电子工程学院,计算:(+19)+(+22)0001 0011+0001 0110 可以直接进行计

17、算!但是若计算:(-19)+(+22)1001 0011+0001 0110 不能直接计算!要保证计算的正确性,需要判断符号是否相同:如果相同,结果符号不变,并进行绝对值相加如果不同,结果取绝对值大的数的符号,并进行绝对值相减,原码运算的复杂化问题,西安石油大学电子工程学院,即对于两个带符号数进行减运算(异号相加)问题时,如果简单地直接相减,或处理不当,就可能出现计算错误;而加运算(同号相加)则一般不会出现类似的问题在计算机运算中,除原码之外,又引入了“补码”和“反码”补码的意义非同寻常通过补码运算,可以把减法运算变成加法运算;而乘法可以用加法来做,除法可以转变成减法可将符号位一起参与运算,反

18、码的意义,正数的反码与原码相同;符号位为0负数的反码的符号位为1,数值位为原码的数值位“按位取反”+4原=+4反=0000 0100-4原=1000 0100-4反=1111 1011,西安石油大学电子工程学院,补码的例子,假设一个计数系统可以表示的数的范围为100则 100-80=20我们就称:20和80关于100是互补的减运算就可转换为加运算100是数的最大范围(量程);称为“模”对于钟表而言,从4点起,逆时针拨动3个刻度与顺时针拨动9个刻度的效果是一样的,都到1点我们就称:3和9关于12是互补的,西安石油大学电子工程学院,补码的定义,数的补码与“模”有关;“模”:计数系统的量程X补=MX

19、(mod M)当X0,M丢掉,X补=X 当X0,X补=M+X=M-X8位二进制数的模为:28=256当X0,X补=28-X,一个数的补码等于其真值加模,对于正数,补码就等于其真值,对于负数,补码等于模减其真值的绝对值,西安石油大学电子工程学院,补码的计算,当X0,X补=X当X0,X补=28-X=256-X=255-X+1因为对于负数:X反=255-X 于是得到:正数的补码与其原码相同;负数的补码符号位为1,数值位为反码数值加1,西安石油大学电子工程学院,原码、反码和补码,西安石油大学电子工程学院,正数:原码、反码、补码相同符号位为0,数值为对应的二进制数 109=01101101原=01101

20、101反=01101101补负数:原码符号位为1,数值位为绝对值的二进制数 109=11101101原反码符号位为1,数值位为绝对值的二进制数各位变反 109=10010010反 补码符号位为1,数值位为绝对值的二进制数各位变反加1 109=10010011补,负数的补码的计算问题,方法1:已知原码,将表示数值绝对值的二进制数各位变反加1 方法2:从原码的最低位起,到第一个1(含)以前(指低位方向)的原码中的各位数字不变;之后(指高位方向)的各位数字取反;符号位不变例 已知原码 1111 0000;两种方法均可得到其补码为 1001 0000,西安石油大学电子工程学院,由补码求原码的计算问题,

21、对于已知的补码,按照求补计算过程的逆过程,可计算得到该补码的原码还可以证明 X补补=X原例已知补码为 1011 1101,两种方法都可以得到其原码为 1100 0011,西安石油大学电子工程学院,8位补码例,x=+4 x原=x反=x补=00000100 x=-4 x原=10000100 x反=11111011 x补=11111100,西安石油大学电子工程学院,8位补码例,x=+73 x原=x反=x补=0100 1001 x=-73 x原=1100 1001 x反=1011 0110 x补=1011 0111,西安石油大学电子工程学院,计算机中的数值运算,在计算机中,带符号数的运算均以补码形式进

22、行运算形式均为补码的加运算得到的结果当然也是补码需要输出时,将转换为原码,最后求出其真值,A+B补=A补+B补,西安石油大学电子工程学院,数值运算的例,西安石油大学电子工程学院,计算(-70+55)解:-70原=11000110-70补=10111010 55原=00110111 55补=00110111-70补+55补=10111010+00110111=11110001因符号位为“1”,需要对补码相加结果11110001的数值部分“求反加1”得计算结果的原码:10001111 所以:-70+5515,数值运算的例,西安石油大学电子工程学院,计算(-70)+(-55)解:-70原=11000

23、110-70补=10111010-55原=10110111-55补=11001001-70补+-55补=10111010+11001001=1(1000 0011)因符号位为“1”,需要对补码相加结果10000011的数值部分“求反加1”得原码:1111 1101 所以:-70+(-55)-125,数的表示范围,西安石油大学电子工程学院,无符号数 一个n位的无符号二进制数X,其表示范围为 0 X 2n-1 0 X 28-1=255带符号数 一个8位的带符号二进制数,其表示范围为原码:-127+127-(28-1-1)X+28-1-1反码:-127+127-(28-1-1)X+28-1-1补码:

24、-128+127-28-1 X+28-1-1,溢出的意义,计算机所能表示的数值的大小受表示数值的二进制数码的位数限制无论无符号数还是带符号数,只要数的绝对值超过机器数所能表示的最大值,就会产生“溢出”一旦出现“溢出”,就表示运算结果出错,必须处理,西安石油大学电子工程学院,带符号数运算的溢出问题,同号相减或异号相加不会溢出同号相加或异号相减可能溢出:对于8位机而言两个正数相加之和大于127,将溢出两个负数相加其绝对值之和大于128,将溢出,西安石油大学电子工程学院,计算机判断溢出的方法,两个8位带符号二进制数相加或相减时,若 C7C61,则结果产生溢出 C7 为最高位的有进(借)位 C为次高位

25、的有进(借)位如果是16位数据的运算,则判断 C15 和C14,西安石油大学电子工程学院,举例说明,90-107(转换为90+(-107)0101 1010+1001 0101 1110 1111C7=0 C6=0 则无溢出结果为(1110 1111)(1110 1110)(1001 0001)=-17,西安石油大学电子工程学院,举例说明,107-90(转换为107+(-90)0110 1011+1010 0110 1 0001 0001C7=1 C6=1 符号位有进位,是正确的,将被自然丢失,无溢出错误结果为(0001 0001)=17,西安石油大学电子工程学院,举例说明,90+107 01

26、01 1010+0110 1011 1100 0101C7=0 但 C6=1 则有溢出,(-110)+(-92)1001 0010+1010 0100 1 0011 0110C7=1 但 C6=0 则有溢出,西安石油大学电子工程学院,溢出问题的解决,扩充数的表示位数,即扩大数的表示范围但必须注意扩充的原则:数位的扩展不能改变数值的大小,只能改变数的表示位数正数扩展:高位全部加0负数扩展:补码和反码高位全部加1-70(10111010)补 补,西安石油大学电子工程学院,数的表示位数的扩充例,x=+73:x原=x反=x补=0100 1001扩充为16位后为:0000 0000 0100 1001x

27、=73:x原=1100 1001,扩充为16位后为:1000 0000 0100 1001x反=1011 0110,扩充为16位后为:1111 1111 1011 0110 x补=1011 0111,扩充为16位后为:1111 1111 1011 0111,西安石油大学电子工程学院,总结计算机中数的运算问题,将参加运算的操作数用补码表示 进行加法得到两数和的补码;符号位作为数的一部分也参加运算 判断是否溢出;若没有溢出,则可进一步求和的真值:和为正数,可直接求出和为负数,则再次求补,最后得到真值,西安石油大学电子工程学院,实数问题的讨论,以上的讨论都以整数为对象实数的问题将更加复杂数值的一般表

28、示形式 N=(-1)J*S*2P 当阶码P为固定值时,称为定点数当阶码P为非固定数值时,称为浮点数浮点数的表示方法和计算问题都将更加复杂,西安石油大学电子工程学院,定点数表示,参与运算的数的小数点位置固定不变 小数点位固定在最后一位之后称为定点整数 小数点固定在最高位之后称为定点小数 对于有符号数,小数点在符号位与有效位之间由于小数点位置固定,故运算中可不再考虑小数问题,西安石油大学电子工程学院,定点整数,小数点位固定在最后一位之后称为定点整数若机器字长为n+1位,对于有符号数,数值表示为:X=X0X1X2.Xn 其中Xi=0,1,0in 即(-1)X0*(X1*2(n-1)+X2*2(n-2

29、)+.+Xn-1*21+Xn*20)数值范围是-2(n-1)X2(n-1)例如:1111表示-7,西安石油大学电子工程学院,定点整数,若机器字长为n+1位,对于无符号数,数值表示为:X=X0X1X2.Xn 其中Xi=0,1,0=i=n即 X0*2n+X1*2(n-1)+X2*2(n-2)+.+Xn-1*2+Xn 数值范围是 0X2(n+1)-1 例如:1111表示15,西安石油大学电子工程学院,定点小数,小数点固定在最高位之后称为定点小数若机器字长为n+1位,对于有符号数,数值表示为:X=X0.X1X2.Xn,其中Xi=0,1,0in X0不表示数字,只表示符号X0=0,则代表 X=0.X1X

30、2.XnX0=1,则代表 X=-0.X1X2.Xn)即(-1)X0*(X1*2(-1)+X2*2(-2)+.+Xn-1*2(-n+1)+Xn*2(-n)数值范围是-(1-2(-n)X1-2(-n)例如:1111表示-0.875,西安石油大学电子工程学院,定点小数,若机器字长为n位,对于无符号数,数值表示为:X=0.X1X2.Xn Xi=0,1,1in 即 X1*2(-1)+X2*2(-2)+.+Xn-1*2(-n+1)+Xn*2(-n)数值范围是 0X1-2(-n)例如:111表示0.875,西安石油大学电子工程学院,浮点数表示,浮点数中小数点的位置是不固定的需要用数符、阶码和尾数共同表示一个

31、数尾数为定点小数,表示有效数字阶码为定点整数,表示小数点的位置数符表示数的正负性质 N=数符尾数2阶码尾数的位数决定数的精度阶码的位数决定数的范围,阶码,数符,尾数,定点整数,定点小数,西安石油大学电子工程学院,单精度与双精度浮点数,单精度浮点型(float)使用32位二进制数码表示数阶码8位;数符1位;尾数23位双精度浮点型(double)使用64位二进制数码表示数阶码11;数符1位;尾数52位,西安石油大学电子工程学院,单精度浮点数的例子,西安石油大学电子工程学院,计算机实际存储的数据为 0 01111110 1100110 01100110 01100110 符号位:(最左侧1位)S=0

32、,表示是个正数 指数:(左侧第2-9位)E=01111110=(126)10 所以 e=E-127=-1 尾数;(最后的23位)M=1100110 01100110 01100110 m=(1.M)210 实际值-1(实际是0.9),按照统一的规则标准(IEEE754)实际的幂指数e为阶码E减去127 实际的尾数默认有一个1,即m=(1.M),浮点数与定点数,西安石油大学电子工程学院,数值的表示范围:浮点表示法所能表示的数值范围将远远大于定点表示法 精度:对于字长相同的定点数与浮点数来说,浮点数虽然扩大了数的表示范围,但这是以降低精度为代价的,也就是数轴上各点的排列更稀疏了 数的运算:浮点运算要比定点运算复杂 溢出处理:定点运算时,当运算结果超出数的表示范围,就发生溢出;而在浮点运算时,运算结果超出尾数的表示范围却并不一定溢出,只有当阶码也超出所能表示的范围时,才发生溢出,作业,西安石油大学电子工程学院,习题 1(P17),

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号