[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ethmac] A question on crc32




 The algorithm is adopted in IEEE Std 802.3-2000:

Mathematically,the CRC value corresponding to a given frame is defined by the following procedure:
a)The first 32 bits of the frame are complemented.
b)The n bits of the frame are then considered to be the coef cients of a polynomial M(x)of degree n ¨C1.
(The first bit of the Destination Address field corresponds to the x^(n ¨C1)term and the last bit of the
data field corresponds to the x^0 term.)
c)M(x)is multiplied by x^32 and divided by G(x),producing a remainder R(x)of degree 31.
d)The coefficients of R(x)are considered to be a 32-bit sequence.
e)The bit sequence is complemented and the result is the CRC.

My question is :why should the first 32 bits  be complemented? And the same quetion in step e).