如何从5字节数据中计算16位校验和? 例如:
Byte number: 1 2 3 4 5
Value: 12 00 01 00 A0
我将所有值都转换为二进制格式,并尝试进行计算,但不确定我的答案是否正确。
12 = 0001 0010
00 = 0000 0000
01 = 0000 0001
00 = 0000 0000
A0 = 1010 0000
计算:
0001 0010 0000 0000
0000 0001 0000 0000
1010 0000 0000 0000
-------------------
1011 0011 0000 0000 (sum)
0100 1100 1111 1111 (checksum)
4 C F F
我的答案正确吗?我不确定计算中的第三行,因为数据只有5个字节。
编辑:我正在尝试进行Internet校验和(用于TCP / UDP段)。