点分十进制查看源代码讨论查看历史
点分十进制(Dotted Decimal Notation)全称为点分(点式)十进制表示法,是IPv4的IP地址标识方法。IPv4中用四个字节表示一个IP地址,每个字节按照十进制表示为0~255。点分十进制就是用4组从0~255的数字,来表示一个IP地址。如192.168.1.1。
- 中文名:点分十进制
- 外文名:Dotted Decimal Notation
- 全 称:点分(点式)十进制表示法
- 特 点:是IPv4的IP地址标识方法
计算机网络词汇
点分十进制,全称点分(点式)十进制表示法(英:Dotted decimal notation),是IPv4的IP地址标识方法,每一组数字都是十进制,组与组之间用“.(点)”分隔,因此称为“点分十进制”,例如IP地址123.123.123.123;此种表示法有区别于IPv6的冒分十六进制,即冒分十六进制(也叫冒号十六进制)是用冒号分隔每一组数,每组数用16进制表示,比如IP地址3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562。
IPv4为早期IP地址的解析方法,但地址数量太少,由于计算机网络的发展,更多的IP地址需求使得IPv6的使用成为必然。
转换方法
二进制数转换
二进制数转换成十进制数
由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为“按权相加”法。 例1105 把二进制数110.11转换成十进制数。
十进制数转换为二进制数
十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
1. 十进制整数转换为二进制整数 十进制整数转换为二进制整数采用“除2取余,逆序排列”法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
2.十进制小数转换为二进制小数
十进制小数转换成二进制小数采用“乘2取整,顺序排列”法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。
然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。[1]
转换实例
把点分十进制的ip地址转换为二进制的方法为:
四段,每段0到255,8位二进制,0就是00000000,255就是11111111。
8位二进制最高位128,接着是64,接着32,接着是16,一直到最后一位是2的0次方,也就是1。
0到255的任意一个数要化成8位二进制,只要找出最大的包含的位,这个位上置1,减去这个位后的数再同理找最大包含的位。
比如100,它包含的最大位是64,那么128位置0,64位置1,减去64后剩下36,36包含32,所以32的位置1,剩下4,所以16和8的位置0,4包含4,所以4的位置1,剩下已经是0了,2和1的位置0。
所以结果就是01100100
这种方法对IP地址的转换速度提高很大,前提是8个2的幂次方位你要熟练,当然有些小技巧是要自己总结的,比如某位的后面全是1,前面全是0,那么这个数就是这个位的值减去1。再比如有7位都是1,只有1位上是0,那么这个数就是255减去0位的值,等等等等小技巧是在熟练的前提下。
常规的十进制转二进制是除二取余数。
IPv4的表示方法
以四段三位十进制数表示,并用“.”(圆点)分隔。但每段三位的十进制数实际上是0至255之间的整数,由此可见每段地址有256种不同,四段地址就可以表示出4294967296,既约43亿的地址。 [2]
IPv6的表示方法
以八段四位十六进制数表示,并用“:”(冒号)分隔。每段四位的十六进制数是0至FFFF之间的整数,由此可预见每段地址有65536种不同,六段地址就可以表示出相当大数量级的IP地址。
视频
HCNA之点分十进制