Crc
description
Transcript of Crc
This sheet requires the Analysis Toolpak to be loaded. Select the Tools Menu > Add-Ins... > check Analysis Toolpack
input hex string #bytesF70302640008 6
1 2 3 4 5 6 7 8 9 ### 11 ###############xor constant 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1
byte# Hex Start with 16 trues 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 F7 0000000011110111 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1
xor the 2 lines above 1 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0shift xor 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 0 0shift xor 2 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 0shift xor 3 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1shift xor 4 1 0 1 0 1 1 1 1 1 1 1 1 0 0 0 1shift xor 5 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1shift xor 6 1 1 0 1 1 0 1 1 1 1 1 1 1 1 0 1shift xor 7 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1shift xor 8 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 0###
2 03 0000000000000011 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1xor the 2 lines above 1 1 0 0 0 1 1 0 1 1 1 1 1 1 0 1shift xor 1 1 1 0 0 0 0 1 1 0 1 1 1 1 1 1 1shift xor 2 1 1 0 0 0 0 0 1 1 0 1 1 1 1 1 0shift xor 3 0 1 1 0 0 0 0 0 1 1 0 1 1 1 1 1shift xor 4 1 0 0 1 0 0 0 0 0 1 1 0 1 1 1 0shift xor 5 0 1 0 0 1 0 0 0 0 0 1 1 0 1 1 1shift xor 6 1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0shift xor 7 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 1shift xor 8 1 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1###
3 02 0000000000000010 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0xor the 2 lines above 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1shift xor 1 1 1 1 0 0 0 0 0 1 0 0 0 0 0 1 1shift xor 2 1 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0shift xor 3 0 1 1 0 1 0 0 0 0 0 1 0 0 0 0 0shift xor 4 0 0 1 1 0 1 0 0 0 0 0 1 0 0 0 0shift xor 5 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 0shift xor 6 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0shift xor 7 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0shift xor 8 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1###
4 64 0000000001100100 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0xor the 2 lines above 0 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1shift xor 1 1 0 1 0 0 0 0 1 1 0 0 1 0 0 1 1shift xor 2 1 1 1 1 0 0 0 0 1 1 0 0 1 0 0 0shift xor 3 0 1 1 1 1 0 0 0 0 1 1 0 0 1 0 0shift xor 4 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 0shift xor 5 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1shift xor 6 1 0 1 0 1 1 1 1 0 0 0 0 1 1 0 1shift xor 7 1 1 1 1 0 1 1 1 1 0 0 0 0 1 1 1
shift xor 8 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1 0###5 00 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
xor the 2 lines above 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1 0shift xor 1 0 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1shift xor 2 1 0 0 1 0 1 1 0 1 1 1 1 0 0 0 1shift xor 3 1 1 1 0 1 0 1 1 0 1 1 1 1 0 0 1shift xor 4 1 1 0 1 0 1 0 1 1 0 1 1 1 1 0 1shift xor 5 1 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1shift xor 6 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 0shift xor 7 0 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1shift xor 8 1 0 0 1 0 0 0 1 0 1 0 1 1 0 1 0###
6 08 0000000000001000 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0xor the 2 lines above 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1 0shift xor 1 0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1shift xor 2 1 0 0 0 0 1 0 0 0 1 0 1 0 1 0 1shift xor 3 1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 1shift xor 4 1 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0shift xor 5 0 1 1 0 1 0 0 0 1 0 0 0 1 0 1 0shift xor 6 0 0 1 1 0 1 0 0 0 1 0 0 0 1 0 1shift xor 7 1 0 1 1 1 0 1 0 0 0 1 0 0 0 1 1shift xor 8 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 0###
7 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 0shift xor 1 0 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0shift xor 2 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 0shift xor 3 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0shift xor 4 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1shift xor 5 1 0 1 0 0 1 1 1 1 1 1 0 1 0 0 1shift xor 6 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1shift xor 7 1 1 0 1 1 0 0 1 1 1 1 1 1 0 1 1shift xor 8 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0###
8 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0shift xor 1 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0shift xor 2 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1shift xor 3 1 0 1 1 1 0 0 1 1 0 0 1 1 1 1 0shift xor 4 0 1 0 1 1 1 0 0 1 1 0 0 1 1 1 1shift xor 5 1 0 0 0 1 1 1 0 0 1 1 0 0 1 1 0shift xor 6 0 1 0 0 0 1 1 1 0 0 1 1 0 0 1 1shift xor 7 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0shift xor 8 0 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0###
9 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0shift xor 1 0 0 1 0 0 0 0 0 1 1 1 0 0 1 1 0shift xor 2 0 0 0 1 0 0 0 0 0 1 1 1 0 0 1 1shift xor 3 1 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0shift xor 4 0 1 0 1 0 1 0 0 0 0 0 1 1 1 0 0shift xor 5 0 0 1 0 1 0 1 0 0 0 0 0 1 1 1 0shift xor 6 0 0 0 1 0 1 0 1 0 0 0 0 0 1 1 1shift xor 7 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1 0
shift xor 8 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1###10 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
xor the 2 lines above 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1shift xor 1 1 0 0 0 1 0 1 0 1 0 1 0 0 0 0 1shift xor 2 1 1 1 0 0 1 0 1 0 1 0 1 0 0 0 1shift xor 3 1 1 0 1 0 0 1 0 1 0 1 0 1 0 0 1shift xor 4 1 1 0 0 1 0 0 1 0 1 0 1 0 1 0 1shift xor 5 1 1 0 0 0 1 0 0 1 0 1 0 1 0 1 1shift xor 6 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0shift xor 7 0 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0shift xor 8 0 0 1 1 0 0 0 0 1 0 0 1 0 1 0 1###
11 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 0 1 1 0 0 0 0 1 0 0 1 0 1 0 1shift xor 1 1 0 1 1 1 0 0 0 0 1 0 0 1 0 1 1shift xor 2 1 1 1 1 1 1 0 0 0 0 1 0 0 1 0 0shift xor 3 0 1 1 1 1 1 1 0 0 0 0 1 0 0 1 0shift xor 4 0 0 1 1 1 1 1 1 0 0 0 0 1 0 0 1shift xor 5 1 0 1 1 1 1 1 1 1 0 0 0 0 1 0 1shift xor 6 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1shift xor 7 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 0shift xor 8 0 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0###
12 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0shift xor 1 0 0 1 1 0 1 1 1 1 1 1 1 1 0 0 0shift xor 2 0 0 0 1 1 0 1 1 1 1 1 1 1 1 0 0shift xor 3 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 0shift xor 4 0 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1shift xor 5 1 0 1 0 0 0 1 1 0 1 1 1 1 1 1 0shift xor 6 0 1 0 1 0 0 0 1 1 0 1 1 1 1 1 1shift xor 7 1 0 0 0 1 0 0 0 1 1 0 1 1 1 1 0shift xor 8 0 1 0 0 0 1 0 0 0 1 1 0 1 1 1 1###
13 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 1 0 0 0 1 0 0 0 1 1 0 1 1 1 1shift xor 1 1 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0shift xor 2 0 1 0 0 0 0 0 1 0 0 0 1 1 0 1 1shift xor 3 1 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0shift xor 4 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1 0shift xor 5 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1shift xor 6 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0shift xor 7 0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0shift xor 8 0 0 1 0 1 1 0 0 0 0 0 0 0 1 0 0###
14 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 0 1 0 1 1 0 0 0 0 0 0 0 1 0 0shift xor 1 0 0 0 1 0 1 1 0 0 0 0 0 0 0 1 0shift xor 2 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 1shift xor 3 1 0 1 0 0 1 0 1 1 0 0 0 0 0 0 1shift xor 4 1 1 1 1 0 0 1 0 1 1 0 0 0 0 0 1shift xor 5 1 1 0 1 1 0 0 1 0 1 1 0 0 0 0 1shift xor 6 1 1 0 0 1 1 0 0 1 0 1 1 0 0 0 1shift xor 7 1 1 0 0 0 1 1 0 0 1 0 1 1 0 0 1
shift xor 8 1 1 0 0 0 0 1 1 0 0 1 0 1 1 0 1###15 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
xor the 2 lines above 1 1 0 0 0 0 1 1 0 0 1 0 1 1 0 1shift xor 1 1 1 0 0 0 0 0 1 1 0 0 1 0 1 1 1shift xor 2 1 1 0 0 0 0 0 0 1 1 0 0 1 0 1 0shift xor 3 0 1 1 0 0 0 0 0 0 1 1 0 0 1 0 1shift xor 4 1 0 0 1 0 0 0 0 0 0 1 1 0 0 1 1shift xor 5 1 1 1 0 1 0 0 0 0 0 0 1 1 0 0 0shift xor 6 0 1 1 1 0 1 0 0 0 0 0 0 1 1 0 0shift xor 7 0 0 1 1 1 0 1 0 0 0 0 0 0 1 1 0shift xor 8 0 0 0 1 1 1 0 1 0 0 0 0 0 0 1 1###
16 0000000000000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xor the 2 lines above 0 0 0 1 1 1 0 1 0 0 0 0 0 0 1 1shift xor 1 1 0 1 0 1 1 1 0 1 0 0 0 0 0 0 0shift xor 2 0 1 0 1 0 1 1 1 0 1 0 0 0 0 0 0shift xor 3 0 0 1 0 1 0 1 1 1 0 1 0 0 0 0 0shift xor 4 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 0shift xor 5 0 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0shift xor 6 0 0 0 0 0 1 0 1 0 1 1 1 0 1 0 0shift xor 7 0 0 0 0 0 0 1 0 1 0 1 1 1 0 1 0shift xor 8 0 0 0 0 0 0 0 1 0 1 0 1 1 1 0 1###
###
Courtesy of
This sheet requires the Analysis Toolpak to be loaded. Select the Tools Menu > Add-Ins... > check Analysis Toolpack
crc10FD
Rev03 - Jan. 08, 2010
xor with this constant if the shifted bit was 1
xor means "are they different?"if the two input bits are different the result is 1 (true).if the two input bits are the same the result is 0 (false).
shift xor: shift all bits to the right one space. add a 0 at the far left.If bit16 was 1, xor the result with the xor constant.
FE C6FEC6 crc for a 1 byte string FE C6
07 810781 crc for a 2 byte string 07 81
41 034103 crc for a 3 byte string 41 03
C2 DB
www.simplymodbus.ca
C2DB crc for a 4 byte string C2 DB
5A 915A91 crc for a 5 byte string 5A 91
10 FD10FD crc for a 6 byte string 10 FD
FC CCFCCC crc for a 7 byte string FC CC
CC 41CC41 crc for a 8 byte string CC 41
41 55
4155 crc for a 9 byte string 41 55
95 309530 crc for a 10 byte string 95 30
F0 6FF06F crc for a 11 byte string F0 6F
6F 446F44 crc for a 12 byte string 6F 44
04 2C042C crc for a 13 byte string 04 2C
2D C3
2DC3 crc for a 14 byte string 2D C3
03 1D031D crc for a 15 byte string 03 1D
5D 015D01 crc for a 16 byte string 5D 01
16 bytes max