小数部分要跟整数部分开算..小数部分是乘16取余,整数部分是除16取余
整数部分:123/16=7.11那么整数部分就是7B(B是十进制的11)
小数部分:0.25*16=4(关键是4后面没有跟小数而是为0了)所以不用再乘了
那么小数部分就是0.4
合起来就是7B.4
小数部分计算法则:先用十进制小数*16之后看结果的小数部分
如果为0就可以停止了(第一次乘积结果的整数部分转化为十六进制存放在小数的第一位之后以此类推)
不然就是以结果的小数部分再次乘16直到乘积结果的小数部分为0终止
再举两个例子
循环的尽的小数转化
0.875转化成十六进制
0.875*16=14(14后面没有小数而是零14的十六进制是E所以等于0.E)
小数无限循环转化
0.8转化为十六进制
0.8*16=12.8
(12就是小数的第一位..转化为HEX为C...12.8的小数部分作为下次的乘数0.8[0.C.]
0.8*16=12.8(居然还是12..这个12就是小数的第二位)[0.CC.]
依次循环直到Number*16的结果的小数部分为0那么就可以终止..
这个将会是无限循环..
等于0.CCCCCCCCCCC...(无限C)