第1章微机原理与应用.ppt

上传人:本田雅阁 文档编号:2519821 上传时间:2019-04-05 格式:PPT 页数:51 大小:1.61MB
返回 下载 相关 举报
第1章微机原理与应用.ppt_第1页
第1页 / 共51页
第1章微机原理与应用.ppt_第2页
第2页 / 共51页
第1章微机原理与应用.ppt_第3页
第3页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第1章微机原理与应用.ppt》由会员分享,可在线阅读,更多相关《第1章微机原理与应用.ppt(51页珍藏版)》请在三一文库上搜索。

1、第一章、微型计算机基础,主要内容 微型计算机的发展概况 微型计算机系统简介 微型计算机的数制 原码、补码、反码及其运算法则 数的定点与浮点表示 算术运算与逻辑运算,1.1 微型计算机的发展概况,计算机的诞生,它装有 18800个电子管、7万个电阻器,1500个继电器,重达30吨,占地面积150多平方米,耗电150千瓦 。,1943-1946年,第一台电子计算机 ENIAC(Electronic Numerical Integrator and Calculator) 在美国 宾夕法尼亚大学 诞生。,1.1.1 微型计算机的发展简史,第一代:电子管计算机 (1946-1957年) 以电子管为逻辑

2、元件 速度低、内存容量小、体积庞大、造价昂贵,计算机发展经历四代:,第二代:晶体管计算机 (1957-1964年) 以晶体管为逻辑元件 降低了成本和体积,提高了运算速度;,1.1.1 微型计算机的发展简史,第三代:集成电路计算机 (1964-1972年) 以集成电路为逻辑元件 体积进一步缩小;配有各类操作系统,性能极大提高;,计算机发展经历四代:,第四代:大规模集成电路计算机 (1972年至今) 以超大规模集成电路为逻辑元件 以微型机为典型代表; 1971年,第一台微型计算机诞生,目前又提出第五代计算机:智能 计算机(非冯 诺依曼机) 人工智能、神经网络;运算理论及系统结构的变革;,1.1.1

3、 微型计算机的发展简史,第一代微处理器:1971-1973年 (4位和8位微处理器),微处理器是微型计算机的重要部件,其发展经历五代:,第三代微处理器:1978-1981年 (16位微处理器),第四代微处理器:1981-1992年 (32位微处理器),第五代微处理器:1992年以后 (64位微处理器),第二代微处理器:1973-1978年 (8位微处理器),1.1.2 微型计算机的应用,科学计算 数据处理与信息管理 CAD/CAM/CAA/CAl中的应用 过程控制和仪器仪表智能化 军事领域中的应用 多媒体系统和信息高速公路 家用电器和家庭自动化,1.微处理器只是一个中央处理器(CPU),由以下

4、几部分组成:运算器,寄存器,控制器,内部总线。,注意:微处理器不能构成独立的工作系统,也不能独立执行程序。需配有存储器、输入/输出接口。,1.2 微型计算机系统简介,2.微型计算机的组成:CPU、存储器(RAM,ROM)、输入输出接口电路、系统总线,注意:微型计算机具有运算功能,可独立执行程序。但若没有输入/输出设备,则数据无法输入,结果亦无法显示或输出,还是不能正常工作。,1.2 微型计算机系统简介,微型计算机,3. 微型计算机系统的构成:微型计算机外部输入输出设备软件,1.2 微型计算机系统简介,微型计算机系统,1.3 微型计算机的数制,规定:以字符打头的十六进制数前面必须加0,例如:0F

5、789H,1.3.1 进位计数制,进位计数制是指用数字符号排列成数位,按由低位到高位的进位方法进行计数,它涉及到数码、位权与基数。,数码:是各数位中允许选用的数字符号;如十进制为:0,1,2,9,二进制为:0,1。同一个数码在不同数位上所代表的数值不同,表示的数值等于该数码本身乘以一个与所在数位有关的常数(即:位权)。,位权:对每个数位赋予一定的位值,该数称为位权,简称权。它与数制及在数中的位置有关。如二进制中的20、 21、22;十进制的100、101、102等。,基数:是指计数制中所允许选用的数码个数。如十进制的基数为10(0,1,2,9),二进制的基数为2(0,1),十六进制的基数为16

6、(0,1,2,9,A,F)。,1.3.1 进位计数制,Di为0R-1中的任一个数; R为基数;Ri为权值,一进位计数制数,可展开为:,例1.1,例1.1,例1.1 八进制数(127.4)8中的2代表的数值是什么?整个数代表什么数值?,分析: 2处于整数部分D1 位置,因此它代表的数值为281=16。,于是,按前面的公式展开得:,(127.4)8=182+281+780+48-1=(87.5)10,1.3.2 数制间的相互转换(1),二、八、十六进制数十进制数:按权展开,例如:,= 123+122+021+120 +02-1+12-2+12-3,= 8+4+0+1+0+0.25+0.125 =

7、(13.375) 10,= 282+781+680 = (190)10,= 10162+3161+15160 = (2623)10,(1101.011)2,(276)8,(A3F)16,数制间的相互转换(2),整数部分的转换采用辗转相除法 小数部分的转换采用乘基取整法,辗转相除法,就是用基数不断去除要转换的十进制数,直至商 为0,将各次计算所得的余数,按最后的余数为最高位,第一 次余数为最低位,依次排列,即得转换结果。,十进制数二、八、十六进制数:,乘基取整法,就是用基数不断去乘要转换的十进制数,直至满 足要求的精度或小数部分为0,取每次乘积结果的整数部分, 以第一次取整为最高位,依次排列,即

8、得转换结果。,事例,辗转相除法示例(1),例1.2 将(226)10转换为二进制数。,226,113,56,28,14,7,3,1,0,余0,余1,余0,余0,余0,余1,余1,余1,(最高位),(最低位),按箭头方向 依次排列,11100010,所以(226)10=(11100010)2,商为0,转 换结束。,除基取余,辗转相除法示例(2),例1.3 将(226)10转换为八进制数。,226,28,3,0,余2,余4,余3,(最高位),(最低位),按箭头方向 依次排列,342,所以,(226)10=(342)8,商为0,转换结束。,除基取余,辗转相除法示例(3),例1.4 将(226)10转

9、换为十六进制数。,226,14,0,余2,余14,(最高位),(最低位),按箭头方向 依次排列,E2,所以,(226)10=(E2)16,商为0,转换结束。,除基取余,乘基取整法示例(1),例1.5 将(0.625)10转换为二进制数。,0.625, 2,1.250, 2,0.250, 2,0.50,1.0,取整1,取整0,(最高位),(最低位),按箭头方向 依次排列,0.101,取整1,小数部分为0,转换结束。,所以,(0.625)10=(0.101)2,乘基取整,乘基取整法示例(2),例1.6 将(0.625)10转换为八进制数和十六进制数。,0.625, 8,5.000, 16,0.62

10、5,10.000,取整5,小数部分为0,转换结束。,取整10,小数部分为0,转换结束。,所以,(0.625)10=(0.5)8,乘基取整,所以,(0.625)10=(0.A)16,例1.7,例1.7 求对应于(226.625)10的二进制数。,分析:本题中十进制数既有整数部分又有小数部分,应先分别加以转换,然后再合并在一起得到最后结果。,因为,(226)10=(11100010)2 (0.625)10=(0.101)2 所以(226.625)10=(11100010.101)2,数制间的相互转换(3),二进制数八进制数:,整数向左,小数向右 三位合一,不足补 0,二进制数十六进制数:,整数向左

11、,小数向右 四位合一,不足补 0,例: (11010111.0111101)2 =,11010111.0111101,(,)2,0,00,= (327.364)8,例: (11010111.0111101)2 =,11010111.0111101,(,0,)2,= (D7.7A)16,数制间的相互转换(4),八进制数二进制数:一扩三,(264.57)8 = (,十六进制数二进制数:一扩四,(7F.C4)16 = (,提示: 整数高位0和 小数低位0可 省去不写,010,111,)2,= (10110100.101111)2,101,100.,110,= (1111111.110001)2,)

12、2,0100,1100,1111.,0111,1.3.3 数的表示 机器数与真值,机器数就是一个数在计算机中的表示形式,即二进制代码。如10010、11001100等。 一个机器数所表示的数值称为真值。如+10、-29H、+1011B等。可以是各种进制数。 一个数可以是有符号数,也可以是无符号数。 对于一个二进制无符号数来说,机器数与真值相同,此时计算机的全部有效位都用来存放数据。对于n位字长的计算机来说,整数范围为02n-1。,机器数与真值 (续),对于一个二进制有符号数来说,数的最高位是符号位:0表示正数,1表示负数。 在有符号数中,符号数字化后的数称为机器数,而用+或-表示的数值称为真值

13、,真值可以用二进制数或十进制数表示。 对于n位字长的计算机来说,有符号数的整数范围为-(2n-1-1) (+2n-1-1)。 有符号数与无符号数在计算机中的表示形式相同,须预先约定或由指令决定。,有符号数的表示 原码,有符号二进制数可以采用原码、补码和反码三种不同的编码形式表示。进行算术运算的有符号数通常以补码形式表示。 将数真值形式中的+/-号用0/1表示,而数据本身不变的机器数叫做数的原码形式,简称原码。 当字长为n时,其数据范围为-(2n-1-1) +(2n-1-1)。数-2n-1的原码不存在。数0有两种表示形式,即+0和-0。,看几个例子吧!,原码举例,如:00000000B=+0;1

14、0000000B=0 11111111B=127;01111111B=+127,又如:10010 表示真值 2;0101 表示真值 +5等。,例1.10:设字长为8,X的十进制数为+85,Y的十进制数 为-85,求X、Y的原码。 解:十进制数85转换成二进制数1010101,所以 X原 = 01010101 Y原 = 11010101,原码的概念掌握了吧?,有符号数的表示 反码,对负数的原码除符号位外,其余位按位求反,得到的另一种表示形式,即反码形式。 正数的反码与原码具有相同的形式。 当字长为n时,其数据范围为(2n-1-1) +(2n-1-1)。数-2n-1的反码不存在。数0有两种反码形式

15、。,看几个例子吧!,反码举例,例1.11:有反码00000000B和10000000B,求其真值。 解:根据反码的定义,最高位为符号位,后面即为数据的绝对值数据的反码。 00000000B = +(0000000)2 = +0; 10000000B = -(1111111)2 = -127 = -(28-1-1)。,例1.12:有8位字长反码11111111B和01111111B,求其真值。 解: 11111111B = -(0000000) = -0 01111111B = +(1111111)2 = +127 = +(28-1-1),求例1.10中的两个数的反码形式。 +85反 = +85

16、原 = 01010101 -85反 = 10101010,反码的概念掌握了吧?,有符号数的表示 补码,负数的补码等于其反码加1(求反加一),也等于0减去其真值的绝对值。 正数的补码与原码具有相同的形式。 在补码中,数0只有一种表示形式,数-2n-1的补码存在。当字长为n时,数据范围为-2n-1 +(2n-1-1)。 使用补码可以用加法代替减法,消除加减法运算的区别,简化了运算器;而且运算时符号位和数值部分一起参加运算,简化了处理过程,故在计算机运算中广泛使用。,看几个例子吧!,补码举例,例1.13:有补码00000000B和10000000B,求其真值。 解:根据补码的定义,最高位为符号位,后

17、面即为数据的绝对值或数据的求反加一 。 00000000B = +(0000000)2 = +0; 10000000B = -(10000000)2 = -128 = -28-1。,例1.14:有8位字长补码11111111B和01111111B,求其真值。 解: 11111111B = -(0000001) = -1 01111111B = +(1111111)2 = +127 = +(28-1-1),求例1.10中的两个数的补码形式。 +85补 = +85原 = 01010101 85补 = -85反 + 1 = 10101011,补码的概念一定要掌握!,= 0 - +85原,原码、反码、

18、补码小结,符号位+数据位。正数的三种码形式相同。,定点数与浮点数,定点数就是小数点在数中的位置固定不变;浮点数是指小数点在数中的位置是浮动的,可以发生变化。 小数点固定位置的两种简单约定:(1)在最高数位之前,符号位之后是纯小数;(2)在最低位之后是纯整数。,任何一个数N的二进制浮点形式可表示为N=2jS,其中S称为尾数,j称为阶码。这种表示格式由阶符(1位,表示阶码的正负号 )、阶码(一般为纯整数,决定数的范围)、数符(1位,表示尾数的正负号)、尾数(一般为纯小数,决定有效数字的精度 )四个部分组成。,为充分利用其有效位,常对其规格化,使0.5|S|1,看个例子,看几个例子吧!,定点数示例,

19、例1.15:有二进制码1101B,试求小数点在最低位和最高位时的值。,解:小数点在最低位时,即为纯整数,所以 1101B = (1101)2 = 23+22+20 = (13)10 小数点在最高位时,即为纯小数,所以 1101B = (0.1101)2 = 2-1+2-2+2-4 = (0.8125)10,定点数好理解的啦!,浮点数示例,例如,二进制数1011.101可以写成如下的浮点形式: 0.00101110126, 0.0101110125, 0.101110124,1.01110123,10.1110122 ,101.110121 ,10111.012-1 ,101110.12-2等等

20、。,规格化数,以上几种浮点形式中,只有前三种的尾数为纯小数。如果用8位来表示此二进制数,其中阶符阶码为4位,尾符及尾数为4位,均用原码表示,则这三种形式对应的浮点数分别为: 01100001,01010010,01000101,可以看出,最后一种的精度最高。,1.4 计算机中常用编码,计算机中数、字母、符号等均用二进制数表示,用若干位二进制数的组合表示字符的编码称为二进制编码。常用的二进制编码有BCD码和ASCII码。 BCD码(Binary Coded Decimal),即二十进制编码方式,用四位二进制数表示一位十进制数。 ASCII码(American Standard Code for

21、Information Interchange)是一种美国标准,称为“信息交换标准代码”,用7位二进制数编码,可以表示128个字符。 GB2312-80汉字编码,即国标码,用两个字节表示一个汉字,两字节最高位均置“1”后形成机内码。,BCD码,8421BCD码(简称BCD码),即将1位十进制数09分别用4位二进制编码来表示,而这四位的权从高位到低位依次是8,4,2,1。,1.5 计算机运算基础,算术运算,包括加减乘除。其中,加减法运算是基本运算,利用加减法运算可以实现乘除法运算。 逻辑运算主要包括“与”() 、“或”() 、“非”和“异或”()等。,1.5.1 无符号数的算术运算,例1.19,

22、例1.19:计算10011010+00110111= ?,因此,10011010+00110111=11010001,1,1,1,1,1,0,1,0,0,1,0,1,1,要加进位,例1.20,例1.20:计算10011010-00110111= ?,因此,10011010-00110111=01100011,1,1,1,1,1,1,1,0,0,0,1,1,0,要减借位,例1.21,例1.21:二进制数1101.1与101.1相乘。,1 1 0 1 1,1 1 0 1 1,1 1 0 1 1,1,0 0 0 0 0,+,1,1,1,1,1,1,进位,积,(74.25),1,0,0,1,0,1,0

23、,0,.,例1.22,例1.22:求二进制数100111除以110的商。,1,1 1 0,1 1,1,1,1 1 0,1,1,0,.,0,1 1 0,0,1,(6.5),1.5.2 有符号数的运算(补码运算),在计算机中,凡是有符号数一律用补码形式存放和运算,其运算结果也用补码表示。 采用补码运算可以将减法变成补码加法运算,在微处理器中只需加法电路就可以实现加减法运算。 规则: X+Y补=X补+Y补 X-Y补=X补+-Y补 两个同符号数相加,可能产生溢出。,什么是溢出?,溢出,所谓溢出,就是两个数相加,结果超出了微处理器所能表示的数值范围。 判断规则:两个正数相加结果变成了负数;或两个负数相加

24、结果变成了正数。 两个不同符号数相加,不会产生溢出。,来看个例子!,溢出示例,例1.23:判断下列补码运算是否发生溢出。 (1) 11111101+00000011 (2) 10001000+11101110 (3) 01000001+01000011 (4) 11001000+11000000,解: 可以看出CPU为8位: (1)两个不同符号的数相加,不可能发生溢出。 (2)10001000+11101110=101110110=01110110(有进位) 两个负数相加,结果为正数01110110,因此发生了溢出。 (3)01000001+01000011=10000100 两个正数相加,结

25、果为负数10000100,因此发生了溢出。 (4)11001000+11000000=110001000 =10001000(有进位) 两个负数相加,结果仍为负数10001000,因此没有发生溢出。,在后面的有关指令中还会给大家进一步讲解。,1.5.3 逻辑运算,主要包括“与”()、“或”()、“非”和“异或”()等。 有关运算规则在数字电路中学过。 在两个多位逻辑变量之间进行逻辑运算时,在对应位之间按上述规则进行运算,不同位之间不发生任何关系,没有算术运算中的进位或借位问题。,来看个例子!,逻辑运算示例,例1.24: 11010101 11010101 11010101 01100011 01100011 01100011 结果 11110111 01000001 10110110,后面学习相关指令时,再进一步体会。,第1章教学要求,1. 了解微机发展概况、了解和区分微处理器、微型计算机和微型计算机系统; 2. 掌握数制的相互转换、有符号数的表示,常用编码和算术、逻辑运算。,作业: (P41) 1-5, 1-6, 1-11, 1-14,

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1