在网络中经常会遇到IP地址化分子网等操作,我们经常要将IP地址进行二进制与十进制相互转换。如按照原先的严密的数学算法来计算非常麻烦。但在IP转换中我们可以找到一些规律,下面我来简单说明一下经常使用的一个IP二进制转换成十进制的规律。
我们知道IP由32位二进制位组成,每八位一组分成了四组。如果每一组中八位全是1转换成十进制则为255。我们可以取出其中的一组来看。
在一组8位的二进制数中,从右到左依次排位,最右边位我们假设十进制位数为1、第二位假设十进制位数为2、第三位假设十进制位数为4、以次类推第四位为8、第五位16、第六位32、第七位为64、第八位为128,然后在来核对二进制位与十进制位。把二进制位上为1的相应十进制位上的数相加就可以得到这组二进制数的十进制数。如:
11010010.11100101.00101110.00011011为32位IP地址转换为十进制可以这样来做:
则11010010.11100101.00101110.00011011转换为十进制为:210.229.46.27
在实际转换过程中一般都是十进制的IP转换为二进制的情况最多,同样我们可以例用这个对应关第反过来得到二进制数。如:
192.168.100.5转换成二进制我们可以这样来做:首先确定我们只有128、64、32、16、8、4、2、1这几个数,然后在来确定要转换的十进制数由哪几个数相加能得到:
则192.168.100.5转换成二进制为:11000000.10101000.01100100.00000101
熟练应用这个规律能大大加快IP二进制与十进制的转换速度。