- yby学会了子网掩码!使用子网掩码是为了更灵活地划分子网,其二进制形式为前缀为一串1,后缀为一串0的32位二进制字串,用某主机的IP地址与子网掩码相与就可以得出该主机所在的子网,我们可以容易发现网络号所占的位数就是前缀的长度,因为这部分相与后不变,后缀部分变全0。
- 在学习子网掩码之前,ABC类网络都可以从十进制点分式的形式上轻易看出网络号和主机号的划分,即前1\2\3个十进制数代表网络号,后面的则是主机号。但是学习完子网掩码之后,我们就应当从二进制的角度上去看网络号与主机号划分的问题了,因为进行子网划分之后,我们可能并无法直接从十进制点分式中看出该划分下的下一个网络号是多少,比如子网掩码为11111111 11111111 11000000 00000000的网络划分,某网络的下一个网络应当是在二进制的高18位加一,这种操作转化到十进制上是非常反直觉的,这种反直觉来自于这种划分下我们是将二进制的前18位看成一部分(网络号),后14位看成另一部分(主机号),但是我们的点分式却是8 8 8 8的划分,所以点分式在我们将网络号划成8的整数倍位时看起来很自然,因为这样我们可以轻易从十进制点分式中看出下一个网络号是多少,但是当网络号位数不是8的倍数时,这种自然感就消失了。最后再举个例子:子网掩码为11111111 11111111 11110000 00000000的情况下,当我们的网络号是10000000 00001110 00100000 00000000(128.14.32.0)时,该网络的最大地址是10000000 00001110 00101111 11111111(128.14.47.255),点分式的第三位变了,这就是不自然感的所在。
- 再说一下前天牛客挑战赛的B,其实只需要提一嘴\(|x_1 - x_2| + |y_1 - y_2| = max(x_1 - x_2 + y_1 - y_2, x_1 - x_2 + y_2 - y_1, x_2 - x_1 + y_1 - y_2, x_2 - x_1 + y_2 - y_1)\)是怎么来的。这个问题可以简化成\(|x_1 - x_2| = max(x_1 - x_2, x_2 - x_1)\),前者只是两个这种形式的等式结合起来而已。不过写到这里其实发现继续也没有什么必要了,一个正一个负,最后取正的,不就是max么。不过上面那个式子还是很有意义的,表示了曼哈顿距离。
- 昨晚回寝时在路上闻到了合欢花香味,想想已经大概有至少五年没闻到过这种味道了,恍惚了一下,或许这就是意象形式的重现,但场景无法重构,也就绝无可能回到记忆中那个意象感受产生的时刻。人类对自然感受的寄托,相当一部分是出于对过去的遗憾和缅怀,“春风得意马蹄疾,一日看尽长安花”之流终究是少数。