# CRC error detection

I know that to find an error in signal we have to divide given signal with given polynomial and if 0 remains there is no error. But if I have received signal: 0000 0101 0101 0000 1010 0101 and polynomial 10001000000100001(CRC-CCITT) how do I Xor them:

1010101000010100101 (signal without zeroes)

XOR

10001000000100001

Or

000001010101000010100101 (original signal)

XOR

10001000000100001

Also do I remove beginning 0 from signal or leave them ? Thanks in advance

Signal with zeroes is same as signal without zeros, just pruning thoese zeroes out gives the original data.

Those zeroes doesn't contribute anything to the data(sometimes called as dummy bits).

1010101000010100101
10001000000100001 $\hspace{0.7cm}$XOR
$-----------$
0010001000010100001
$\hspace{0.15cm}$ 10001000000100001 $\hspace{0.35cm}$ XOR
$-----------$
0110011000010100011
$\hspace{0.36cm}$ 10001000000100001 $\hspace{0.15cm}$ XOR
$-----------$
0100010000010000010 $\hspace{0.15cm}$ ERROR
$-----------$