《微机计算基础》PPT课件.ppt

上传人:小飞机 文档编号:5508320 上传时间:2023-07-15 格式:PPT 页数:45 大小:653.50KB
返回 下载 相关 举报
《微机计算基础》PPT课件.ppt_第1页
第1页 / 共45页
《微机计算基础》PPT课件.ppt_第2页
第2页 / 共45页
《微机计算基础》PPT课件.ppt_第3页
第3页 / 共45页
《微机计算基础》PPT课件.ppt_第4页
第4页 / 共45页
《微机计算基础》PPT课件.ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《《微机计算基础》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《微机计算基础》PPT课件.ppt(45页珍藏版)》请在三一办公上搜索。

1、1,计算机原理与接口技术,北京理工大学光电学院2013.9,2,微机系统导论,2.1 进位计数制2.2 进位数制之间的转换2.3 二进制编码(代码)2.4 二进制数的运算2.5 数的定点与浮点表示2.6 带符号数的表示法,3,2.1 进位计数制,所谓进位计数制是指按进位的方法来进行计数,简称进位制。在进位计数制中,常常要用“基数”(或称底数)来区别不同的数制,而某进位制的基数就是表示该进位制所用字符或数码的个数。如十进制数共用 09 十个数码表示数的大小,故其基数为10。为区分不同的数制,可在数的下标注明基数。,4,一、十进制数 一个十进制数中的每一位都具有其特定的权,称为位权或简称权。就是说

2、,对于同一个数码在不同的位它所代表的数值就不同。例如:999.99这个数可以写为:999.999102 9101 9100 910-110-2 其中,每个位权由基数的次幂来确定。在十进制中,整数的位权是100(个位)、101(十位)、102(百位)等等;小数的位权是10-1(十分位)、10-2(百分位)等等。上式称为按位权展开式。,5,二、二进制数 进位计数制中最简单的是二进制,它只包括“0”和“1”两个不同的数码,即基数为2,进位原则是“逢二进一”。例:二进制数1101.11相当于十进制数的12312202112012-112-284 10.50.2513.7510 二进制数各位的权分别为8

3、、4、2、1、0.5、0.25。将二进制数化为10进制数,是把二进制的每一位数字乘以该位的权然后相加得到。实际上只需要将为1的各位的权相加即可。,6,三、八进制数 八进位计制数也是微机中常用的一种进位制,其主要特点是:八进制的基数为8,用07八个不同的数码来表示数值计数时“逢八进一”,即上一位(左)的权是下一位(右)的权的8倍四、十六进制数 十六进位计数制是微机中最常用的一种进位制,它在数的结构上类似于八进制,易于与二进制数转换,且比八进制更能简化数据的输入和显示。十六进制的基数是16,即由16个不同的数码符号组成。除了09十个数字外,还用字母、D、分别表示数10、11、12、13、14、15

4、。,7,数制通常用三中书写方法:在数的右下角注明数制,如2116、4310、658、10102是在数的后面加上一些字母符号。通常十六进制用表示(如21),十进制用D表示或不加字母符号(如43D或43),八进制用表示(如65),二进制用表示(如1010)。在数的前面加上一些符号。如十六进制用表示如(21),二进制用表示(如1010)。,8,2.2 不同进制数之间的转换,一、二进制数转换为十进制数 进制数转换为十进制数分整数转换与小数转换两部分 整数部分:设N是5位的二进制整数,其表示式为:又由于二进制序列表示为:4 3 2 1 0(最高位)(最低位)故将上式改为:,N=K424K323 K2 2

5、2K121K020,(423)222120,9,二进制小数转换为十进制数:设是一个4位的二进制小数,其表示式为:121222323424将上式改写为:21121221(3421)由于二进制位权序列表示为:.12 34 小数点 第1位 第4位(最高位)(最低位),10,用“连续除以2”的方法,就能得到它的十进制转换。其步骤为:1.从最低位(右倒第1位)开始,把最低位除以2,加上右 倒第2位,令其结果为1;2.将1除以2,加上右倒第3位,令其结果为2;3.将2除以2,加上右倒第4位,令其结果为3;4.将3除以2,即得到所要求的结果。对既有整数又有小数的二进制数,用整数转换法则和小数转换法分别对其整

6、数和小数部分进行转换,然后合并,如:,0.1011B 0.6875D,1 0 1 1 2+2+2+2 0.6875 0.375 0.75 0.5,11,二、十进制数转换为二进制数 十进制整数转换成二进制整数采用“除以2取余”方法 规则为:1.将十进制数除以2,并记下余数;2.将所得的商再除以2,并记下余数,如此重复,直至商 为0;3.收集所得到的余数,以第一位余数作为整数的最低有效 位0,最后得到的余数为最高有效位n-1,中间的余 数顺次收集。十进制小数转换成二进制小数采用“乘2取整”方法。例:将十进制小数0.625 转换为二进制小数形式 0.625D=(0.-1-2-m)B,12,2 0.6

7、25 0.25 0.5 0 整数部分 1 0 1-1-2-3 所以转换结果为0.625D0.101B。可得到将十进制小数转换为二进制小数的方法是不断用2 去乘该十进制小数,每次所得的溢出数(即整数1或0)依次记为-1、-2、。若乘积的小数部分最后一次乘积能够为0,则最后一次乘积的整数部分记为-m,则有 0.-1-2-m对于既有整数又有小数的十进制数,可用“除以2取余”和“乘2取整”法则分别对其整数与小数部分进行转换,然后合并。,13,三、十六进制数与二进制数之间的转换 二进制数转换为十六进制数也很方便,因为4位二进制数的组合恰好等于015D这16个数值,所以,可用1位十六进制数表示4位二进制数

8、。1个二进制数的整数部分要转换为十六进制数时,可以从小数点开始向左按4位一组分成若干组,最高位一组不足4位时,在左边加0补足到4位。二进制数的小数部分可以从小数点开始向右按位一组分成若干组,最后一组(最低位一组)不足4位则在右边加0补足到4位.然后将每一组的4位二进制数用相应的十六进制数表示即转换为十六进制数。,14,四、十六进制数与十进制数之间的转换 十进制数与十六进制数之间的转换,和十进制数与二进制数或八进制数之间的转换方法相似,其差别只是前者的基数为16。十六进制数转换为十进制数,只要将它按权展开,然后相加即可。例如,十六进制数FFFFE.A3转换为十进制数的过程如下:163162161

9、16016-1+316-26534.63671875D 十进制转换为十六进制时,其方法与十进制转换为八进制和二进制的方法相同,其整数部分采用“除以16取余”法,其小数部分采用“乘16取整”法,然后以小数点为分界合并即可。,15,2.3 二进制编码(代码),一、二进制编码的十进制(二十进制或BCD码)8421 BCD码有10个不同的数字符号,由于它是逢“十”进位的,所以,它是十进制;同时,它的每一位是用4位二进制编码来表示的。BCD 码具有二进制和十进制两种数制的某些特征。BCD码分为压缩BCD码和非压缩BCD码压缩BCD码的每一位用4位二进制表示,00001001表示09,一个字节表示两位十进

10、制数非压缩BCD码用一个字节表示一位十进制数,高4位总是0000,低4位的00001001表示09 要用BCD码表示十进制数,只要把每个十进制数用适当的二进制4位码代替即可。例如,十进制整数256用BCD码表示,则为(0010 0101 0110)BCD,16,例:将二进制数1011.01转换成相应的BCD码。首先,将二进制数转换成十进制数:1011.01B(123)(022)(121)(120)(02-1)(12-2)802100.25 11.25D然后,将十进制结果转换成BCD码11.25D(0001 0001.0010 0101)BCD,17,二、字母与字符的编码 字母和各种字符在计算机

11、内是按特定的规则用二进制编码表示的。这些编码有各种不同的方式。目前在微机、通讯设备和仪器仪表中广泛使用的是ASCII(American Standard Code for Information Interchange)码-美国标准信息交换码。7位ASCII代码能表示27128种不同的字符,其中包括数码(09),英文大、小写字母,标点和控制的附加字符。7位ASCII码是由左3位一组和右4位一组组成的。左表表 示这两组的安排和号码的顺序,位6 是最高位,而位0是最低位。要注意 这些组在表2.4的行、列中的排列情 况。4位一组表示行,3位一组表示列。,18,ASCII码,美国标准信息交换代码,19

12、,数字09的编码是01100000111001,它们的高3位均是011,后4位正好与其对应的二进制代码(BCD码)相符 英文字母AZ的ASCII码从1000001(41H)开始顺序递增,字母az的ASCII码从1100001(61H)开始顺序递增,这样的排列对信息检索十分有利,ASCII码,20,汉字编码,汉字编码包括输入编码、内码和字模编码,分别用于输入、内部处理和输出。,汉字的输入编码是为了使用西文标准键盘把汉字输入到计算机中,其编码方法主要有数字编码、拼音码和字形编码三类。汉字内码是用于汉字信息的存储、交换、检索等操作的机内代码,它采用两个字节的二进制形式表示一个汉字。为与英文字符区别,

13、汉字机内代码中两个字节的最高位均规定为l例如:汉(BABA)字(D6D7)编(E0B1)码(EBC2),21,汉字字型编码是用来描述汉字字形的代码,它是汉字的输出形式。汉字库有点阵字库、TrueType字库、矢量字库等类型。,汉字编码,22,2.4 二进制数的运算,一、二进制数的算术运算 一种数制可进行两种基本的算术运算:加法和减法。利用加法和减法可以进行乘法、除法以及其它数值运算.(一)二进制加法二进制加法的运算规则是:(1)000(2)011(3)110 进位1(4)1111 进位1 两个二进制数相加时,每1列有3个数,即相加的两个数以及低位的进位,用二进制的加法规则相加后得到本位的和以及

14、向高位的进位。,23,(二)二进制减法 二进制减法的运算规则是:(1)000(2)110(3)101(4)011 借位1例如,把11011B 减去110B 借位后的被减数 0 1 0 1 0 1 1 被 减 数 1 1 0 1 1 减 数-1 1 0 1 差 1 1 1 0“借位后的被减数”现在是指产生借位以后每位被减数的值。,24,(三)二进制乘法 乘法是将被乘数本身多次相加而相加的次数为乘数所规定的次数的一种简便方法。二进制乘法所遵循的一般原则与十进制乘法相同,但由于只有1或0两种可能的乘数位,故二进制乘法更简单。二进制乘法的运算规则是:(1)000(2)010(3)100(4)111 可

15、见,只有当两个1相乘时,积才为1,否则积为0。例如:被乘数 1 1 1 1 乘 数 1 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1,25,(四)二进制除法除法是乘法的逆运算因此,它是确定一个数(除数)可以从另一个数(被除数)中连减多少次的过程。二进制除法与十进制除法类似,不过,由于基数是二而不是十,它更简单。例如,用100011除以101。,0 0 0 1 1 1 除数 101)1 0 0 0 1 1 被除数 1 0 1 1 1 1 余数 1 0 1 1 0 1 余数 1 0 1 0 余数,26,运用长除时,从被除数的最高位(MS

16、B)开始检查,并定出需要超过除数值的位数。找到这个位时,商记1,并把选定的被除数值减除数。然后把被除数的下一位移到余数上。如果新余数不够减除数,则商记0,把被除数的再下一位移到余数上;若余数够减则商记1,然后将余数减去除数,并把被除数的下一个低位再移到余数上。若此余数够减除数,则商记1,并把余数减去除数。继续这一过程直到全部被除数的位都下移完为止。然后把余数/除数作为商的分数,表示在商中。,27,二、二进制数的逻辑运算 在微机中,以0或1两种取值表示的变量叫逻辑变量;它们不是代表数学中的“零”和“壹”的数值大小,而是代表所要研究的问题的两种状态或可能性,如电压的高或低,脉冲的有或无等。我们把逻

17、辑变量之间的运算,称为逻辑运算。逻辑运算包括3种基本运算:逻辑加法(或运算)、逻辑乘法(与运算)和逻辑否定(非运算)。由这3种基本运算可以导出其它的逻辑运算,如异或运算、同或运算以及与或非运算等。(一)与运算与运算通常用符号“”或“”或“”表示。它的运算规则为:010或010或010 读成0与1等于0 100或100或100 读成1与0等于0 111或111或111 读成1与1等于1,28,(二)或运算 或运算通常用符号“”或“”表示。它的运算规则为 000或者000 读成0或0等于0 011或者011 读成0或1等于1 101或者101 读成1或0等于1 111或者111 读成1或1等于1

18、在给定的逻辑变量中,只要有一个为1,或运算的结果就为1;只有都为0时,或运算的结果才为0。(三)非运算 非运算又称逻辑否定。它是在逻辑变量上方加一横线表示非,其运算规则为 读成非0等于1 读成非1等于0,29,(四)异或运算异或运算通常用符号“”表示。它的运算规则为 0 00 读成0同0异或,结果为0 0 11 读成0同1异或,结果为1 1 01 读成1同0异或,结果为1 1 10 读成1同1异或,结果为0 在给定的两个逻辑变量中,只要两个逻辑变量相同,则异或运算的结果就为0;当两个逻辑变量不同时,异或运算的结果才为1。注意,当两个多位逻辑变量之间进行逻辑运算时,只在对应位之间按上述规则进行运

19、算,不同位之间不发生任何关系,没有算术运算中的进位或借位关系。,30,一、定点表示 通常,对于任意一个二进制数总可以表示为纯小数或纯整数与一个2的整数次幂的乘积。例如,二进制数可写成 其中,S称为数的尾数;称为数的阶码;2称为阶码的底。尾数S表示了数的全部有效数字,阶码确定了小数点位置。,2PS,2.5 数的定点与浮点表示,31,当阶码为固定值时,称这种方法为数的定点表示法。这种阶码为固定值的数称为定点数。如假定0,且尾数S为纯小数时,这时定点数只能表示小数。如假定0,且尾数S为纯整数时,这时定点数只能表示整数。定点数的两种表示法,在计算机中均有采用。究竟采用哪种方法,均是事先约定的。如用纯小

20、数进行计算时,其运算结果要用适当的比例因子来折算成真实值。,符号,尾数.S,符号,尾数S.,32,二、浮点表示 如果数的阶码可以取不同的数值,称这种表示方法为数的浮点表示法。这种阶码可以浮动的数,称为浮点数。这时,2S 其中,阶码P用二进制整数表示,可为正数和负数。用一位二进制数Pf表示阶码的符号位,当f0时,表示阶码为正;当f1时,表示阶码为负。尾数S,用Sf表示尾数的符号,Sf0表示尾数为正;Sf1表示尾数为负.,Pf,Sf,阶码符号,阶码,尾数符号,尾数,计算机中表示一个浮点数,分阶码和尾数两个部分来表示。,33,2.6 带符号数的表示法,一、机器数与真值 在计算机中,为了区别正数或负数

21、,是将数学上的“”“”符号数字化,规定1个字节中的D7位为符号位,D0D6位为数字位。在符号位中,用“0”表示正,“1”表示负,而数字位表示该数的数值部分。例如:0101101191D 1101101191D 1个数的数值和符号全都数码化了。我们把1个数(包括符号位)在机器中的一组二进制数表示形式,称为“机器数”,而把它所表示的值称为机器数的“真值”。,34,二、机器数的种类和表示方法 在机器中表示带符号的数有3种表示方法:原码、反码和补码。,(一)原码所谓数的原码表示,即符号位用0表示正数,而用1表示负数,其余数字位表示数值本身。,对于0,可以认为它是(0),也可以认为它是(0)。,0原0

22、0 0 0 0 0 0 0 0原1 0 0 0 0 0 0 0,35,(二)反码 正数的反码表示与其原码相同,即符号位用“0”表示正,数字位为数值本身。,负数的反码是将它的正数按位(包括符号位在内)取反而形成的。,0 反 0 0 0 0 0 0 0 0 4 反 0 0 0 0 0 1 0 0 31反 0 0 0 1 1 1 1 1 127反=0 1 1 1 1 1 1 1 符号位数值本身,0反 1 1 1 1 1 1 1 1 4反 1 1 1 1 1 0 1 1 31反 1 1 1 0 0 0 0 0 127反 1 0 0 0 0 0 0 0 符号位 数字位,36,37,8位二进制数的反码表示

23、如上表所示。它有如下特点:(1)“0”的反码有两种表示法:00000000表示0,11111111表示0。(2)8位二进制反码能表示的数值范围为127D127D。(3)当一个带符号数用反码表示时,最高位为符号位。若 符号位为0(即正数)时,后面的7位为数值部分;若 符号位为1(即负数)时,一定要注意后面7位表示的 并不是此负数的数值,而必须把它们按位取反以后,才得到表示这7位的二进制数值。例如:一个8位二进制反码表示的数10010100B。它是一个负数;但它并不等于20D,而应先将其数字位按位取反,然后才能得出此二进制数反码所表示的真值:1101011(1261251231211)(64328

24、3)107D,38,(三)补码微机中都是采用补码表示法,因为用补码法以后,同一加法电路既可以用于有符号数相加,也可以用于无符号数相加,而且减法可用加法来代替。,1.正数的补码正数的补码与其原码相同,即符号位用“0”表正,其余数字位表示数值本身。,4补 0 0000100 31补 0 0011111+127补 0 1111111 符号位数值本身,2.负数的补码负数的补码表示为它的反码加1(即在其低位加1)。,4补 1 1111100 31补 1 1100001 127补 1 0000001 符号位数字位,39,8位二进制数补码表示也列入上表中。它有如下特点:(1)0补0补00000000(2)8

25、位二进制补码所能表示的数值为127128。(3)当1个带符号数用8位二进制补码表示时,最高位为符 号位。若符号位为“0”(即正数)时,其余位即为 此数的数值本身;但当符号位为“1”(即负数)时,一 定要注意其余位不是此数的数值,而必须将它们按 位取反,且在最低位加1,才得到它的数值。例如,一个补码表示的数 补10011011B 它是一个负数。但它并不等于27D,它的数值为:将数字位0011011按位取反得到1100100,然后再加1,即为1100101。,=1100101(126125122120(643241)101D,故,40,三、补码的加减法运算 在微机中,凡是带符号数一律用补码表示,而

26、且,运算的结果自然也是补码。补码的加减运算是带符号数加减法运算的一种。其运算特点是:符号位与数字位一起参加运算,并且自动获得结果(包括符号位与数字位)。在进行加法时,按两数补码的和等于两数和的补码进行。因为 补补2n2n2n()而 2n()补(mod 2n)所以 补补补,41,例:已知1000000,0001000,求两数的补码之和.由补码表示法有:补01000000,补00001000 此和数为正,而正数的补码等于该数原码,即 补原=01001000其真值为72;又因64(8)72,故结果是正确的。补码减法时,两数补码的差等于两数差的补码。即求被减数的补码和减数相反数的补码,再进行补码运算。

27、,则 补01000000 64)补00001000)8 补补01001000 72所以 补01001000(mod 28),42,四、溢出及其判断方法(一)什么叫溢出 所谓溢出是指带符号数的补码运算溢出。例如,字长为位的带符号数,用最高位表示符号,其余1位用来表示数值。它能表示的补码运算的范围为2n-1+2n-11。如果运算结果超出此范围,就叫补码溢出,简称溢出。在溢出时,将造成运算错误。(二)判断溢出的方法 判断溢出的方法较多,例如以上两例根据参加运算的两个数的符号及运算结果的符号可以判断溢出;此外,利用双进位的状态也是常用的一种判断方法。这种方法是利用符号位相加和数值部分的最高位相加的进位

28、状态来判断。即利用 判别式来判断。当D7C与D6C“异或”结果为1,即1,表示有溢出,当“异或”结果为0,即0,表示无溢出.,43,(三)溢出与进位 进位是指运算结果的最高位向更高位的进位。如有进位,则1;无进位,则0。当1,即D7C1时,若D6C1,则D7C D6C=1 10,表示无溢出;若D6C0,则1 01,表示有溢出。当0,即D7C0时,若D6C1,则0 11,表示有溢出;若D6C0,则0 00,表示无溢出。可见,进位与溢出是两个不同性质的概念,不能混淆。对于字长为16位的二进制数用补码表示时,其范围为216121611即3276832767。判断溢出的双进位式为:VD15c D14c,44,作业:书P.40 2.4,2.7,2.10,45,谢谢大家,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号