2024年4月27日发(作者:)

几种CRC16算法

一. CRC16算法

首先在源文件头文件加入表值:

[cpp] view plaincopy

1. ////////////////////////////////////////////////////////////////

//////////

2. // CRC16码表

3. static WORD const wCRC16Table[256] = {

4. 0x0000, 0xC0C1, 0xC181, 0x0140, 0xC301, 0x03C0, 0x028

0, 0xC241,

5. 0xC601, 0x06C0, 0x0780, 0xC741, 0x0500, 0xC5C1, 0xC48

1, 0x0440,

6. 0xCC01, 0x0CC0, 0x0D80, 0xCD41, 0x0F00, 0xCFC1, 0xCE8

1, 0x0E40,

7. 0x0A00, 0xCAC1, 0xCB81, 0x0B40, 0xC901, 0x09C0, 0x088

0, 0xC841,

8. 0xD801, 0x18C0, 0x1980, 0xD941, 0x1B00, 0xDBC1, 0xDA

81, 0x1A40,

9. 0x1E00, 0xDEC1, 0xDF81, 0x1F40, 0xDD01, 0x1DC0, 0x1C8

0, 0xDC41,

10. 0x1400, 0xD4C1, 0xD581, 0x1540, 0xD701, 0x17C0, 0x

1680, 0xD641,

11. 0xD201, 0x12C0, 0x1380, 0xD341, 0x1100, 0xD1C1, 0x

D081, 0x1040,

12. 0xF001, 0x30C0, 0x3180, 0xF141, 0x3300, 0xF3C1, 0xF2

81, 0x3240,

13. 0x3600, 0xF6C1, 0xF781, 0x3740, 0xF501, 0x35C0, 0x3

480, 0xF441,

14. 0x3C00, 0xFCC1, 0xFD81, 0x3D40, 0xFF01, 0x3FC0, 0x3

E80, 0xFE41,

15. 0xFA01, 0x3AC0, 0x3B80, 0xFB41, 0x3900, 0xF9C1, 0xF

881, 0x3840,

16. 0x2800, 0xE8C1, 0xE981, 0x2940, 0xEB01, 0x2BC0, 0x2

A80, 0xEA41,

17. 0xEE01, 0x2EC0, 0x2F80, 0xEF41, 0x2D00, 0xEDC1, 0xE

C81, 0x2C40,

18. 0xE401, 0x24C0, 0x2580, 0xE541, 0x2700, 0xE7C1, 0xE

681, 0x2640,

19. 0x2200, 0xE2C1, 0xE381, 0x2340, 0xE101, 0x21C0, 0x2

080, 0xE041,

20. 0xA001, 0x60C0, 0x6180, 0xA141, 0x6300, 0xA3C1, 0x

A281, 0x6240,

21. 0x6600, 0xA6C1, 0xA781, 0x6740, 0xA501, 0x65C0, 0x6

480, 0xA441,

22. 0x6C00, 0xACC1, 0xAD81, 0x6D40, 0xAF01, 0x6FC0, 0x

6E80, 0xAE41,

23. 0xAA01, 0x6AC0, 0x6B80, 0xAB41, 0x6900, 0xA9C1, 0x

A881, 0x6840,

24. 0x7800, 0xB8C1, 0xB981, 0x7940, 0xBB01, 0x7BC0, 0x7

A80, 0xBA41,

25. 0xBE01, 0x7EC0, 0x7F80, 0xBF41, 0x7D00, 0xBDC1, 0xB

C81, 0x7C40,

26. 0xB401, 0x74C0, 0x7580, 0xB541, 0x7700, 0xB7C1, 0xB

681, 0x7640,

27. 0x7200, 0xB2C1, 0xB381, 0x7340, 0xB101, 0x71C0, 0x7

080, 0xB041,

28. 0x5000, 0x90C1, 0x9181, 0x5140, 0x9301, 0x53C0, 0x5

280, 0x9241,