资源描述:
《单片机的预备知识(数制与码制)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单片机原理及应用主讲:刘春梅单片机的预备知识(数制与码制)进位计数制及各计数制间的转换二进制数的运算带符号数的表示方法——原码、反码、补码BCD码和ASCII码进位计数制及各计数制间的转换按进位原则进行计数的方法,称为进位计数制。十进制数有两个主要特点:(1)有10个不同的数字符号:0、1、2、…、9;(2)低位向高位进位的规律是“逢十进一”。因此,同一个数字符号在不同的数位所代表的数值是不同的。如555.5中4个5分别代表500、50、5和0.5,这个数可以写成:式中的10称为十进制的基数,102、101、100、10-1称为各数位的权。
2、进位计数制任意一个十进制数N都可以表示成按权展开的多项式:其中,di是0~9共10个数字中的任意一个,m是小数点右边的位数,n是小数点左边的位数,i是数位的序数。例如,543.21可表示为:543.21=5×102+4×101+3×100+2×10-1+1×10-2一般而言,对于用R进制表示的数N,可以按权展开为式中,ai是0、1、…、(R-1)中的任一个,m、n是正整数,R是基数。在R进制中,每个数字所表示的值是该数字与它相应的权Ri的乘积,计数原则是“逢R进一”。二进制数当R=2时,称为二进位计数制,简称二进制。在二进制数中,只有两个不同
3、数码:0和1,进位规律为“逢二进一”。任何一个数N,可用二进制表示为例如,二进制数1011.01可表示为(1011.01)2=1×23+0×22+1×21+1×20+0×2-1+1×2-2八进制数当R=8时,称为八进制。在八进制中,有0、1、2、…、7共8个不同的数码,采用“逢八进一”的原则进行计数。如(503)8可表示为:(503)8=5×82+0×81+3×80十六进制当R=16时,称为十六进制。在十六进制中,有0、1、2、…、9、A、B、C、D、E、F共16个不同的数码,进位方法是“逢十六进一”。例如,(3A8.0D)16可表示
4、为:(3A8.0D)16=3×162+10×161+8×160+0×16-1+13×16-2各种进位制的对应关系十进制二进制八进制十六进制十进制二进制八进制十六进制000091001119111110101012A2102211101113B3113312110014C41004413110115D51015514111016E61106615111117F7111771610000201081000108不同进制间的相互转换二、八、十六进制转换成十进制例1:将数(10.101)2,(46.12)8,(2D.A4)16转换为十进制。(10.1
5、01)2=1×21+0×20+1×2-1+0×2-2+1×2-3=2.625(46.12)8=4×81+6×80+1×8-1+2×8-2=38.15625(2D.A4)16=2×161+13×160+10×16-1+4×16-2=45.64062十进制数转换成二、八、十六进制数任意十进制数N转换成R进制数,需将整数部分和小数部分分开,采用不同方法分别进行转换,然后用小数点将这两部分连接起来。(1)整数部分:除基取余法。分别用基数R不断地去除N的整数,直到商为零为止,每次所得的余数依次排列即为相应进制的数码。最初得到的为最低有效数字,最后
6、得到的为最高有效数字。例2:将(168)10转换成二、八、十六进制数。(2)小数部分:乘基取整法。分别用基数R(R=2、8或16)不断地去乘N的小数,直到积的小数部分为零(或直到所要求的位数)为止,每次乘得的整数依次排列即为相应进制的数码。最初得到的为最高有效数字,最后得到的为最低有效数字。例3:将0.686转换成二、八、十六进制数(用小数点后5位表示)。例4:将168.686转换为二、八、十六进制数。根据例2、例3可得:二进制与八进制之间的相互转换由于23=8,故可采用“合三为一”的原则,即从小数点开始分别向左、右两边各以3位为一组进行二
7、——八换算:若不足3位的以0补足,便可将二进制数转换为八进制数。反之,采用“一分为三”的原则,每位八进制数用三位二进制数表示,就可将八进制数转换为二进制数。例6:将(123.45)8转换成二进制数。123.45001010011.100101即(123.45)8=(1010011.100101)2即(101011.01101)2=(53.32)8101011.01101053.32例5:将(101011.01101)2转换为八进制数。二进制与十六进制之间的相互转换由于24=16,故可采用“合四为一”的原则,即从小数点开始分别向左、右两边各以4
8、位为一组进行二——十六换算:若不足4位的以0补足,便可将二进制数转换为十六进制数。反之,采用“一分为四”的原则,每位十六进制数用四位二进制数表示,就可