android十进制转十六进制算法,十进制转十六进制计算器

十进制转十六进制计算器

十进制:

十六进制:

进制:

进制:

转换说明:上面第一行可将十进制转换为十六进制,第二行可以将任意进制转换为任意进制。

64个基数为:

"[email protected]"

注意:本工具只是各种进制计数法的数之间的转换,计算机表示数的方法是进行编码表示,整数有整数的表示方法,浮点数有浮点数的表示方法,所以本工具不能对计算机数的编码进行转换。

十进制与十六进制互转算法

1、十六进制转换为十进制,方法是各位置上的数乘以其权值之和,比如十六进制数72.45转换为十进制数算法如图1。十六进制数各位置数上的权值为整数部分从右到左分别为16^0,16^1...16^n,小数部分从左到右分别为16^-1,16^-2....16^-m。

2、  再来看看十进制转十六进制,有两种方法:直接法与间接法,先看直接的方法,与十进制转成二进制相同,咱们还是分整数部分转换和小数部分转换。

整数部分,除16取余法,每次将整数部分除以16,余数为该位权上的数,商继续除以16,余数又为上一个位权上的数,然后以此类推一直下去,直到商为零,最后从最后一个余数向前排列就可以了,如图2所示。

再看小数部分,与转二进制相同,这里是乘16取整法,也就是说小数部分乘以16,然后取整数部分,再让剩下的小数部分再乘以16,再取整数部分,……以此类推,一直乘到小数部分为零为止。如果一果得不到0,那就根据精度要求计算一定位数,如图3所示,取红线前6位。

上面的方法是直接计算法,也可以用间接的方法!就是先把十进制转换为二进制,然后再由二进制转换为16进制例如将十进制268.255转为十六进制。 先转为二进制为(转换方法这里就不再累述了哦,不知道的看教程介绍吧):

然后再将二进制转换为十六进制,先温习一下二进制数与十六进制数的对照表吧,如下图2所示。

对照图表将二进制转换为十六进制后的结果如图4所示。

你可能感兴趣的:(android十进制转十六进制算法,十进制转十六进制计算器)