我正在制作网络应用程序,它每次都不会发送良好的数据(大多数时候它们都被破坏了),所以我很难控制总和。在数据结束时,我将添加控制总和以检查它们是否有效。所以我不确定将每个数据(它们从 1 到 100)乘以 100、100^2、100^3... 并将它们相加是一个好主意。你有什么建议吗,不要做很大的数字(每个数据包中有很多数据)。示例:数据:1,4,2,77,12,32,5,52,23 我的解决方案:1,4,2,77,12,32,5,52,23, 100+40000+2000000+ 77* 10^4 ...当客户端收到数据包时,他将检查最后一个数据是否等于其他数据的总和。有没有更好的解决方案?
问问题
181 次
3 回答
0
将数据相乘会导致要传输的数字非常大,并且对数字正确的信心不足。加法会遇到潜在的溢出问题。这就是习惯使用异或的原因。
或者,您可以阅读http://en.wikipedia.org/wiki/Error-correcting_code以获得更出色的解决方案,这些解决方案可以检测,有时是纠正少量错误。
于 2012-05-07T17:45:42.690 回答
0
因为 128 是二进制的 10000000,所以只有 1 位用于子网划分,而有 7 位用于主机。我们将对 C 类网络地址 192.168.10.0 进行子网划分。
192.168.10.0 = Network address
255.255.255.128= Subnet mask
于 2013-08-14T06:35:18.473 回答
0
于 2012-05-11T16:27:08.367 回答