第一次接触的时候感觉一脸懵逼,文化水平不高,要我玩这个,就很伤了,
不过,不过,学到了一个好方法,而且很快的方法。我常和IP地址打交道,
所以是八位。
让我先架上八大金刚:
128 64 32 16 8 4 2 1
首先,十进制转二进制,192.168.123.213,从左到右算吧。
一、(192)
192-128=64 所以记:1
64-64=0 所以记:1
后面还用算么,都0了,怎么减。所以都记0, 换算结果是:
11000000
二、(168)
168-128=40 记:1
40-64的时候减不动啊,所以记:0
40-32=8 记:1
8-16 又减不动了 记:0
8-8=0 好,减完了 记:1
后面都是0了 换算结果是:
10101000
三、(123)
123-128 0
123-64=59 1
59-32=27 1
27-16=11 1
11-8=3 1
3-4 0
3-2=1 1
1-1=0 1
换算结果:01111011
四,(213)
213-128=85 1
85-64=21 1
21-32 0
21-16=5 1
5-8 0
5-4=1 1
1-2 0
1-1=0 1
结果是:11010101
再来,二进制转十进制。
仔细看是不是摸到点什么了。好吧继续,拿到上面的结果来换算会十进制去:
继续架上八大金刚:
128 64 32 16 8 4 2 1
11000000.10101000.01111011.11010100
我们得到了四段,每段是八位,咱八大金刚也是8位,换算回去很简单了,
11000000 = 128+64+0+0+0+0+0+0= 192
10101000 = 128+0+32+0+8+0+0+0= 168
01110111 = 0+64+32+16+8+0+2+1= 123
11010101 = 128+64+0+16+0+4+0+1= 213
其实,转成十进制就是去减上面8位数,能减就是1,不能减就是0,拿到结果,再去减,直到减完。
二进制就是去加,看1的位数在哪,按照对应的位数,去相加即可。
对于IP地址的进制转换就很方便,
不过你也许也发现了,超过了255这八位就不好用了,你只需把值*2即可。
Thanks to my enlightenment teacher