1.进位计数制的概念
使用有限个基本数码来表示数据,按进位的方法进行计数称为进位计数制。包含两大要素:基数和位权。
基数:用来表示数制基本数码的个数,大于此数后必须进位。
位权:数码在表示数据时所处的数位所具有的单位常数,简称“权”。
任意一个J进制数的表示方法为
其中,Ki=0,1,…,J-1,为第i位的数码;m为小数部分位数;n为整数部分位数。
2.单片机中常用的数制
(1)十进制(Decimal)数
特点:①基数为10,有0,1,…,9共10个数码,逢10进1;②各位的权为10i。
任意一个十进制数的表示方法为
其中,Ki=0,1,2,3,4,5,6,7,8,9。
例如:(273.45)10=2×102+7×101+3×100+4×10-1+5×10-2。
(2)二进制(Binary)数
特点:①基数为2,有0,1两个数码,逢2进1;②各位的权为2i。
任意一个二进制数的表示方法为
其中,Ki=0,1。
例如:(1 011.101)2=1×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-3。
(3)十六进制(Hexadecimal)数
特点:①基数为16,有0~9和A,B,C,D,E,F(对应十进制10~15)共16个数码,逢16进1;②各位的权为16i。
任意一个十六进制数的表示方法为(www.xing528.com)
其中,Ki=0~9,A~F。
例如:(A87.E79)16=A×162+8×161+7×160+E×16-1+7×16-2+9×16-3。
为了区别这几种数制,可在数的后面加上数字下标2、10、16,也可以加一字母。用B表示二进制数;D表示十进制数;H表示十六进制数。如果后面的数字或字母被省略,则表示该数为十进制数。
3.各种数制间的转换
(1)J进制转换为十进制
方法:只需按权展开相加即可。
例如:
(2)十进制转换为J进制
十进制转换为J进制时,必须将整数部分和小数部分分开转换。
①整数部分的转换:把十进制的整数不断地除以所需要的基数J,直至商为零,所得余数依倒序排列,就能转换成以J进制数的整数部分,这种方法称为除基取余法。
②小数部分的转换:要将一个十进制小数转换成J进制小数时,可不断地将十进制小数部分乘以J,并取整数部分,直至小数部分为零或达到一定精度时,将所得整数依顺序排列,就可以得到J进制数的小数部分,这种方法称为乘基取整法。
例如:
115.375D=1110011.011B
(3)二进制与十六进制数的相互转换
由于二进制的基数是2,而十六进制的基数为16=24,即4位二进制数正好对应一位十六进制数,因此二者之间的转换十分方便。方法如下:
以小数点为中心,整数部分从右向左,每4位二进制数对应为一位16进制数,整数部分不足4位高位加0;小数部分从左向右,每4位二进制数对应一位16进制数,小数部分不足4位低位加0。
例如:
B6.8H=1011 0110.1000B=10110110.1B
11011.011B=0001 1011.0110B=1B.6H
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。