转:http://ks.cn.yahoo.com/question/1406020600544.html
十进制转换为二进制 除二取余(整数部分),乘二取整(小数部分) 除二取余:把十进制整数除以2得到商和余数,在将所得到的商除以2,又得到新的商和余数,这样不断的用二去除商,直到商为0为止. 每次除的的余数便是相应的二进制数码.最先得到的是最的有效位,最后得到的是最高有效位. 如:11的二进制 11/2=5--1 5/2=2--1 2/2=1--0 1/2=0--1 //是整除,即二进制位 1011(从后面开始往上读,高位低位的问题) 乘二取整: 对十进制小数乘2得到的整数部分和小数部分,整数部分既是相应的二进制数码,再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分. 如此不断重复,直到小数部分为0或达到精度要求为止.第一次所得到为最高位,最后一次得到为最低位 如:0.25的二进制 0.25*2=0.5 0.5*2=1 即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)
---------------------------------------------------
二进制转十进制:http://zhidao.baidu.com/question/37804425.html?fr=qrl&cid=197&index=5
用权,比如 1011.101
1 x pow(2,3) + 0 x pow(2,2) + 1 x pow(2,1) + 1 x pow(2,0) + 1 x pow(2,-1) + 0 x pow(2,-2) + 1 x pow(2,-3)
加权可得,二进制的权值分别为2的0次,2的1次……2的-1次,2的-2次……,比如: 111.11=1*4+1*2+1*1+1*1/2+1*1/4=7.75