十进制小数与八、十六进制小数互转方法

以下都是转小数:十直接转八 八转十 十转十六 十六转十

十进制整数转换R进制(R可以是任何整数,比如3、5、7)整数,方法就是除R取余,十进制转八或十六进制方法类似转二进制,除以基数取余就行了,比如转八进制就除8,转十六进制就除16。
二进制和八进制、十六进制之间转换采用的是分组转换法,因为2、8、16之间是存在幂的关系的。所以,二级制转八进制,以小数点为中心向两边(二进制小数也可以转为八进制小数)分组,每3位为一组,因为2的3次方=8,然后将各组直接写成相应的八进制数就可以了(3位二进制数最大是7,不会超过8)。转十六进制类似,只是这时候需要每4位分一组。反过来,八进制、十六进制转二进制就简单了,只要把每一位都写成二进制数就行了。八进制和十六进制之间一般借助二进制来转换,不容易出错。
十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可。需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值。
二进制(包括小数)转为十进制数时,采用乘权相加法,每一位数乘以相应位的权制然后相加就ok。比如1101.101这个数,以小数点为中心,向左每位权值分别为1、2、4、8,向右每位为0.5、0.25、0.125(也就是二分之一、四分之一、八分之一)。正数1101.101B=1*1+0*2+1*4+1*8(整数部分)+1*0.5+0*0.25+1*0.125(小数部分)=13.625D。八进制、十六进制转十进制方法类似,只要你搞清楚每位的权值就行了。
如此详细,得分当之无愧。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-16
十进制整数转换R进制(R可以是任何整数,比如3、5、7)整数,方法就是除R取余,十进制转八或十六进制方法类似转二进制,除以基数取余就行了,比如转八进制就除8,转十六进制就除16。
二进制和八进制、十六进制之间转换采用的是分组转换法,因为2、8、16之间是存在幂的关系的。所以,二级制转八进制,以小数点为中心向两边(二进制小数也可以转为八进制小数)分组,每3位为一组,因为2的3次方=8,然后将各组直接写成相应的八进制数就可以了(3位二进制数最大是7,不会超过8)。转十六进制类似,只是这时候需要每4位分一组。反过来,八进制、十六进制转二进制就简单了,只要把每一位都写成二进制数就行了。八进制和十六进制之间一般借助二进制来转换,不容易出错。
十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可。需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值。
二进制(包括小数)转为十进制数时,采用乘权相加法,每一位数乘以相应位的权制然后相加就ok。比如1101.101这个数,以小数点为中心,向左每位权值分别为1、2、4、8,向右每位为0.5、0.25、0.125(也就是二分之一、四分之一、八分之一)。正数1101.101B=1*1+0*2+1*4+1*8(整数部分)+1*0.5+0*0.25+1*0.125(小数部分)=13.625D。八进制、十六进制转十进制方法类似,只要你搞清楚每位的权值就行了。
如此详细,得分当之无愧。
相似回答