这里主要介绍二进制、十进制、十六进制的转换
一.基本概念:
①数码:用来表示进制数的元素
- binary二进制数码:0,1
- decimal十进制数码:0,1,2,3,4,5,6,7,8,9
- hexadecimal十六进制数码:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
②基数:数码的个数,三种进制分别为2,10,16
③位权:数制中每一个固定位置对应的单位值为位权;每个数码表示的数值=该数码值*所处位置的位权,例十位,个位,百位等
总结:(N)R=an-1Rn-1+an-2Rn-2+……+a-mR-m ,其中R位基数,Rn 为位权。
二.进制转换
①二进制转换成十进制Binary——>decimal
按权相加法:小数点前的部分,整数从最后一位从右向左开始,从0开始依次为第n位,依次乘以2的n次方相加;小数部分从左往右算,依次算为第1,2,3……n位,将第n位的数乘以2的-n次方,相加即可得到小数位的十进制数。
②二进制转换成十六进制
每四位二进制数对应一个十六进制数位,以小数点为界,整数部分从右向左每4位隔开,不足4位左边补0即可;小数部分将二进制数从左往右每4位隔开,不足4位的右边补0,即可得到16进制数
③十进制转换成二进制
以小数点为界限,整数部分用除2取余发,小数部分用乘2取整法:先乘2,将获得于运算结果的整数部分,将结果中的小数部分再次乘以2,直到小数部分为0为止,将第一次得到的整数部分作为二进制小数的最高位,后续的整数部分依次排开,即得到二进制的小数部分。
计算机的浮点数运算不准确:有些十进制的小数无法准确的用二进制表示,符合一定的精度后,即可舍去尾部
④十进制转换成十六进制
和转化成二进制类似,整数部分采用除16取余法,小数部分采用乘16取整法
⑤十六进制转换成二进制
与二进制转换成十六进制相反的过程,每一位十六进制对应4为二进制,逐位展开即可
⑥十六进制转换成十进制
与二进制转换成十进制类似,按权相加法,整数部分依次乘以16的N次方,小数部分乘以16的-n次方,相加即可
三.总结
1.其他进制转十进制:按权相加法
2.十进制转其他进制:除基取余法+乘基取整法
3.二进制和十六进制互相转化:整数部分前后分别4位4位的转换
来源:https://www.cnblogs.com/yuanerduo/p/12633698.html