美文网首页
二进制反码求和

二进制反码求和

作者: 比萨u | 来源:发表于2018-05-13 00:23 被阅读29次

在看TCP/IP 时,看到IP 协议中有个 首部检验和 是用的 二进制反码求和。 不太理解,上网搜到了一个答案,记载下面。
以4bit(计算方便一点,和16bit是一样的)做检验和来验证。
假设原始数据为 1100 , 1010 , 0000(校验位)
那么把他们按照4bit一组进行按位取反相加。 1100 取反0011 , 1010 取反是0101,校验位的计算就是 0011加上0101 是1000,填入到校验位上
于是发送的数据就是
1100 , 1010 , 1000
收到数据后同样进行按位取反相加。0011+0101+0111 =1111;全为1表示正确 。 等于是 自己加上自己的取反, 那么 结果肯定应该是全1 。如果传输正确的话。

相关文章

  • 二进制反码求和

    在看TCP/IP 时,看到IP 协议中有个 首部检验和 是用的 二进制反码求和。 不太理解,上网搜到了一个答案,记...

  • 反码 补码

    正数的反码,补码都是正数的二进制本身 负数的二进制:负数的绝对值所对应的二进制最高位变成1 负数的反码:最高位不变...

  • 二进制原码、反码、补码运算及标志位

    一、二进制原码、反码、补码的转换 原码: 正整数的原码:这个数的二进制,符号位为0;正整数的原码=补码=反码 例1...

  • 位运算

    原码,反码,补码 原码 正数的原码就是其二进制本身 负数的原码是把对应的正数的原码最高位改为1 反码 正数的反码就...

  • byte类型最大值和最小值-128~127

    先了解二进制运算的几个概念 正数的反码和补码都是自己负数的反码:符号位除外,其他位取反负数的补码:其反码末位+1 ...

  • python中的原码反码和补码

    python中的原码反码和补码 原码反码和补码的概念 原码:原码是二进制数字的一种简单的表示法。二进制首位为符号位...

  • 原码、反码、补码

    正数 原码:一个数的二进制 反码:正数的反码就是其原码 补码:正数的补码就是其原码 例 负数 原码:一个数的二进制...

  • 原码、反码、补码

    原码:二进制前加一个符号位,正数为0,负数为1 反码:正数反码等于原码,负数反码为对原码数值位按位取反(即符号位仍...

  • 计算机的负数表达

    原码 原码是二进制数字的一种简单的表示法 二进制首位为符号位 1代表负0代表正 反码 反码可由原码得到 如果是正数...

  • 位操作符

    负数表示负数绝对值的二进制的反码加一 按位非 (~) ~num ---> 返回num的反码 本质:操作数的负...

网友评论

      本文标题:二进制反码求和

      本文链接:https://www.haomeiwen.com/subject/lidkdftx.html