查看: 157|回复: 0

[教程] TCP/IP 中的二进制反码求和算法

[复制链接]

3

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-6-13
发表于 2012-4-3 13:08:20 | 显示全部楼层 |阅读模式
以4bit(计算方便一点,和16bit是一样的)做检验和来验证。

建设原始数据为 1100 , 1010 , 0000(校验位)

那么把他们按照4bit一组进行按位取反相加。 1100取反0011 , 1010取反是0101,0011加上0101 是1000,填入到校验位后

1100 , 1010 , 1000

那么这个就是要发送的数据。收到数据后同样进行按位取反相加。0011+0101+0111 =1111;全为1表示正确


另外注意,当地一步计算校验和的时候,有可能相加后最高位会有进位,那么不能舍弃,一定要加到低位,才能是结果正确。
您可能感兴趣的文章:
  • TCP关闭问题详细介绍
  • 常用类之TCP连接类-socket编程
  • 基于TCP异步Socket模型的介绍
  • 使用批处理重置TCP_IP协议
  • TCP Wrappers防火墙介绍与封锁IP地址的方法
  • tcp socket客户端和服务端示例分享
  • TCPIP是什么
  • TCP版backshell的VBS脚本代码
  • TCP三次握手及原理
  • tcp、udp、ip协议分析_动力节点Java学院整理
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部