(11010100111.010100)2=(011 010 100 111.010 100)2=(3247.24)8
原理:三位二进制数相当于八进制一位
另外稍复杂的手算过程:
按照位数写出二进制各位上的基数值,并将这个二进制各位对齐写在它们下面:
1024 512 256 128 64 32 16 8 4 2 1 . 1/2 1/4 1/8 1/16
1 1 0 1 0 1 0 0 1 1 1 . 0 1 0 1
把上表中两行上下做乘法,结果相加,小数点前面的求和,小数点后面的也求和:
1024*1+512*1+256*0+128*1+64*0+32*1+16*0+8*0+4*1+2*1+1*1+0*1/2+1*1/4+0*1/8+1*1/16
=1024+512+128+32+4+2+1+0.25+0.0625=1703.3125
按照位写出八进制各位上的基数值,左边写到大于1703的位,右边写出几位即可
4096 512 64 8 1 . 1/8 1/64 1/512
开始笔算八进制数整数部分:
1703小于4096,所以4096位上对应数为0;
下一位1703大于512,计算1703/512商3余167,512位上对应数为3;
下一位用上边的余数继续算,167大于64,计算167/64商2余39,64位上对应数2;
39>8,39/8商4余7,8位对应4
7>1,7/1=7,1位对应7
由上面可计算出得到八进制数整数为3247
下面算小数部分:
1/8=0.125,0.3125>0.125,0.3125/0.125商【2】余0.0625
1/64=0.015625,0.0625>0.015625,0.0625/0.015625商【4】余0
上面计算出小数部分为0.24。上面这步也可以这么算:1/4+1/16=?/8+?/64=2/8+4/64
每位上的基数:小数点前面一位以1开始,向左每位乘以进制数,向右除以进制数。