对于0.6来说,二进制无法精确表示,因此需要给定转换后的位数,现假定要转换成的二进制精确到小数点后5位
先将27转换成二进制数:
32 16 8 4 2 1 用这组数凑出27
0 1 1 0 1 1 27中包含1个16,1个8,1个2和1个1
取小数部分乘以2,得到结果的整数部分当作二进制小数点后第1位:0.6*2=1.2[11011.1]
继续上边步骤:0.2*2=0.4[11011.10]
0.4*2=0.8[11011.100],0.8*2=1.6[11011.1001],0.6*2=1.2[11011.10011]
计算到达到指定位数或结果的小数部分为0时停止
因此:27.6D=11011.10011B
八进制每位相当于二进制3位,十六进制每位相当于4位
27.6D=11011.10011B=[011][011].[100][110]B=[3][3].[4][6]o=33.46o
27.6D=11011.10011B=[0001][1011].[1001][1000]B=[1][b].[9][8]H=1b.98H