《第1章数制与编码2ppt课件.ppt》由会员分享,可在线阅读,更多相关《第1章数制与编码2ppt课件.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、在此输入您的封面副标题第1章数制与编码2第第1章章 数制与编码数制与编码1.1 不同进位计数制及其转换 1.1.1 进位计数制进位计数制计算机其实就是一种由数字电路演变而来的能进行逻辑运算的机器,其处理的信息就是数字电路所提到的二进制数,而人们常使用的是十进制数,这样,为了能顺利地在人与计算机之间进行信息交换,一定要进行不同进制数之间的转换操作,因此我们有必要掌握数制及数制转换的原理。进位计数制:按进位的原则进行计数的一种方法。n1、十进制、十进制n十进制的基数为十进制的基数为10,它所使用的数码为,它所使用的数码为09,共共l0个数字。十进制各位的权是以个数字。十进制各位的权是以10为底的幂
2、,为底的幂,即每个数所处的位置不同,它的值是不同的,即每个数所处的位置不同,它的值是不同的,每一位数是其右边相邻那位数的每一位数是其右边相邻那位数的10倍。倍。n例如,数例如,数555.55就是下列多项式的缩写:就是下列多项式的缩写:n555.55D5*102+5*101+5*100+5*10-1+5*10-2n上式中的后缀上式中的后缀D(Decimal)表示该数为十进)表示该数为十进制数,通常对十进制数可不加后缀。制数,通常对十进制数可不加后缀。n2、二进制、二进制n二进制的基数为二进制的基数为2,它所使用的数码为,它所使用的数码为0、1,共共2个。二进制各位的权是以个。二进制各位的权是以2
3、为底的幂,即为底的幂,即,22,21,20,2-1,2-2,。n例如,二进制数例如,二进制数1011.101相当于十进制数:相当于十进制数:n1011.101B1*23+0*22+1*21+1*20+1*2-1+0*2-2+1*2-3 =11.625n3、十六进制、十六进制n十六进制的基数为十六进制的基数为16,它所使用的数码共有,它所使用的数码共有16个:个:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,其中其中AF相当于十进制数的相当于十进制数的l015。十六进制的权是。十六进制的权是以以16为底的幂,即:为底的幂,即:,162,161,160,16-1,16-2,。n例
4、如,十六进制数例如,十六进制数A3E.8F相当于十进制数:相当于十进制数:nA3E.8FH10*162+3*161+14*160+8*161+15*16-2=2622.5059n上式中的后缀上式中的后缀H(Hexadecimal)表示该数为十六进)表示该数为十六进制数。十六进制数如是字母打头,则在使用汇编指令制数。十六进制数如是字母打头,则在使用汇编指令时前面需加一个时前面需加一个0。例如:。例如:0FFFFH(65535)1.1.2 数制的转换数制的转换n1、二进制数、十六进制数转换成十进制数、二进制数、十六进制数转换成十进制数n根据定义,只需将二、十六进制数按权展开后根据定义,只需将二、十
5、六进制数按权展开后相加即可转换成相应的十进制数。相加即可转换成相应的十进制数。n例如:例如:n1011B1*23+0*22+1*21+1*2011n0A4H10*161+4*1601642、十进制数转换成二进制数、十六进制数、十进制数转换成二进制数、十六进制数 n一个十进制整数转换成二进制数(或十六进制数)时,一个十进制整数转换成二进制数(或十六进制数)时,通常采用通常采用“除二取余除二取余”(或除十六取余)法,即用(或除十六取余)法,即用“2”(或(或16)连续除十进制数至商为)连续除十进制数至商为0,逆序排列余数即可,逆序排列余数即可得到。得到。n十进制小数部分转换成二进制数(或十六进制数
6、)时,十进制小数部分转换成二进制数(或十六进制数)时,通常采用通常采用“乘乘2取整取整”(或乘十六取整)的方法得到。(或乘十六取整)的方法得到。即:将小数部分十进制数一次一次地纯小数部分乘即:将小数部分十进制数一次一次地纯小数部分乘“2”(或(或16),把每次得到的整数按顺序排列,就得到用二),把每次得到的整数按顺序排列,就得到用二进制数(或十六进制数)表示的小数值。进制数(或十六进制数)表示的小数值。1.2 计算机中数的表示方法及运算计算机中数的表示方法及运算 n1.2.1 机器数的特点机器数的特点 n机器数所能表示的数的范围受到计算机字长的限制,如对于8位字长的计算机来说,机器数的范围为(
7、0000 0000)2(1111 1111)2,即对应于十进制数为0255。n为了扩大机器数表示的范围,有时可以用两个字甚至多个字表示一个数,例如对于8位机来说,若用两个字来表示一个正数,其数值范围为065535。 2、机器数的符号、机器数的符号n机器数只用来表示正数,这时称为无符号数。当用来既表示正数也可以表示负数时,这时称为带符号数。此时,数的符号在机器中就数码化了,即将一个字的最高位定为符号位,其余各位为数值位。最高位为0表示正数,最高位为1表示负数。n例如:nN1=(+101 1001)2的机器数可表示为:N1=(0101 1001)2nN2=(-110 1011)2的机器数可表示为N
8、2=(1110 101l)21.2.2 原码、反码和补码原码、反码和补码 n1、原码、原码n正数的符号位用“0”表示,负数的符号位用“1”表示,其余各位表示数值,这种表示法称为原码。例如:nXl+100 00012= +65 X1原0100 0001nX2-100 00012= -65 X2原1100 0001n2、反码、反码n一个数的反码可由原码求得。如果是正数,则其反码与原码相同;如果是负数,则其反码除符号位为1外,其它各数位均按位取反,即1转换为0,0转换为1。例如:nXl+100 000l X1反0100 0001nX2-100 0001 X2反1011 1110n3、补码、补码n一个
9、数的补码一般由反码求得。如果是正数,则其补码与原码相同;如果是负数,则其补码为反码加1,即“取反后再加1”。例如:nXl+100 0001 X1补0100 0001nX2-100 0001 X2补X2反+11011 1110 +1=1011 11111.3 BCD码及文字符号代码码及文字符号代码 n1.3.1 8421BCD编码编码nBCD(Binary Coded Decimal)编码就是用二进制代码表示的十进制数,即计算机眼中的十进制数。在8421BCD码中,是用四位二进制数00001001给09这10个数字编码。 8421BCD码00000001001000110100010101100
10、11110001001十进制01234567891.3.2 ASCII编码编码n字母与字符用二进制编码的方法很多。目前计算机字母与字符用二进制编码的方法很多。目前计算机中用得最广泛的字符编码,是由美国国家标准局制中用得最广泛的字符编码,是由美国国家标准局制定的定的ASCII码(码(American Standard Code for Information Interchange,美国标准信息交换码),美国标准信息交换码),它已被国际标准化组织(它已被国际标准化组织(ISO)定为国际标准,称为)定为国际标准,称为ISO 646标准。适用于所有西文字母,标准。适用于所有西文字母,ASCII码的二码的二进制位数共有进制位数共有8位,也就是所说的一个字节,但参与位,也就是所说的一个字节,但参与编码的位数一般只有编码的位数一般只有7位,在西文编码中,最高位恒位,在西文编码中,最高位恒为为“0”。 1.3.3 【实训一】【实训一】Keil C51的使用方法的使用方法n一、实训目的n学习Keil C51软件的使用方法,主要是针对C语言及汇编语言的软件开发及程序调试方法,为后续单片机课程的学习打下良好的基础。n二、实训内容n围绕一个案例,围绕工程建立文件建立文件添加参数设置程序输入程序编译程序调试程序运行(包括单步执行及连续执行)其它设置等过程全面学习Keil C51软件的使用方法。