資源簡介
HDLC協議概述及c++實現

代碼片段和文件信息
//?Download.cpp?:?Defines?the?class?behaviors?for?the?application.
//
//#include?“stdafx.h“
#include?“crc.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
unsigned?short?crc_16_l_table[CRC_TAB_SIZE]?=
{
0x0000?0x1189?0x2312?0x329b?0x4624?0x57ad?0x6536?0x74bf
0x8c48?0x9dc1?0xaf5a?0xbed3?0xca6c?0xdbe5?0xe97e?0xf8f7
0x1081?0x0108?0x3393?0x221a?0x56a5?0x472c?0x75b7?0x643e
0x9cc9?0x8d40?0xbfdb?0xae52?0xdaed?0xcb64?0xf9ff?0xe876
0x2102?0x308b?0x0210?0x1399?0x6726?0x76af?0x4434?0x55bd
0xad4a?0xbcc3?0x8e58?0x9fd1?0xeb6e?0xfae7?0xc87c?0xd9f5
0x3183?0x200a?0x1291?0x0318?0x77a7?0x662e?0x54b5?0x453c
0xbdcb?0xac42?0x9ed9?0x8f50?0xfbef?0xea66?0xd8fd?0xc974
0x4204?0x538d?0x6116?0x709f?0x0420?0x15a9?0x2732?0x36bb
0xce4c?0xdfc5?0xed5e?0xfcd7?0x8868?0x99e1?0xab7a?0xbaf3
0x5285?0x430c?0x7197?0x601e?0x14a1?0x0528?0x37b3?0x263a
0xdecd?0xcf44?0xfddf?0xec56?0x98e9?0x8960?0xbbfb?0xaa72
0x6306?0x728f?0x4014?0x519d?0x2522?0x34ab?0x0630?0x17b9
0xef4e?0xfec7?0xcc5c?0xddd5?0xa96a?0xb8e3?0x8a78?0x9bf1
0x7387?0x620e?0x5095?0x411c?0x35a3?0x242a?0x16b1?0x0738
0xffcf?0xee46?0xdcdd?0xcd54?0xb9eb?0xa862?0x9af9?0x8b70
0x8408?0x9581?0xa71a?0xb693?0xc22c?0xd3a5?0xe13e?0xf0b7
0x0840?0x19c9?0x2b52?0x3adb?0x4e64?0x5fed?0x6d76?0x7cff
0x9489?0x8500?0xb79b?0xa612?0xd2ad?0xc324?0xf1bf?0xe036
0x18c1?0x0948?0x3bd3?0x2a5a?0x5ee5?0x4f6c?0x7df7?0x6c7e
0xa50a?0xb483?0x8618?0x9791?0xe32e?0xf2a7?0xc03c?0xd1b5
0x2942?0x38cb?0x0a50?0x1bd9?0x6f66?0x7eef?0x4c74?0x5dfd
0xb58b?0xa402?0x9699?0x8710?0xf3af?0xe226?0xd0bd?0xc134
0x39c3?0x284a?0x1ad1?0x0b58?0x7fe7?0x6e6e?0x5cf5?0x4d7c
0xc60c?0xd785?0xe51e?0xf497?0x8028?0x91a1?0xa33a?0xb2b3
0x4a44?0x5bcd?0x6956?0x78df?0x0c60?0x1de9?0x2f72?0x3efb
0xd68d?0xc704?0xf59f?0xe416?0x90a9?0x8120?0xb3bb?0xa232
0x5ac5?0x4b4c?0x79d7?0x685e?0x1ce1?0x0d68?0x3ff3?0x2e7a
0xe70e?0xf687?0xc41c?0xd595?0xa12a?0xb0a3?0x8238?0x93b1
0x6b46?0x7acf?0x4854?0x59dd?0x2d62?0x3ceb?0x0e70?0x1ff9
0xf78f?0xe606?0xd49d?0xc514?0xb1ab?0xa022?0x92b9?0x8330
0x7bc7?0x6a4e?0x58d5?0x495c?0x3de3?0x2c6a?0x1ef1?0x0f78
};
//計算CRC校驗碼的函數
void?GetCrc(byte?pBuf[]?byte?crc[]?int?numberofpbuf)
{
typedef??unsigned?short????word;
typedef??unsigned?char?????byte;
????byte?*buf_ptr=pBuf;
????/*?Pointer?to?bytes?containing?the?data?to?CRC.??The?bit?stream?starts
????**?in?the?MS?bit?of?the?first?byte.
????*/
word?len=numberofpbuf*8;
????/*?Number?of?data?bits?to?calculate?the?CRC?over?*/
word?data?crc_16;
/*?Generate?a?CRC-16?by?looking?up?the?transformation?in?a?table?and
**?XOR-ing?it?into?the?CRC?one?byte?at?a?time.
*/
for?(crc_16?=?CRC_16_L_SEED?;?len?>=?8;?len?-=?8?buf_ptr++)?{
crc_16?=
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????358107??2018-08-18?09:29??hdlc協議\協議描述\HDLC1.jpg
?????文件?????313441??2018-08-18?09:30??hdlc協議\協議描述\HDLC2.jpg
?????文件???????3935??2009-12-25?17:37??hdlc協議\源碼\Crc.cpp
?????文件???????1493??2010-01-13?08:29??hdlc協議\源碼\Crc.h
?????文件???????4832??2018-08-18?09:05??hdlc協議\源碼\HDLC.cpp
?????文件???????1562??2018-08-18?09:33??hdlc協議\源碼\HDLC.h
?????目錄??????????0??2018-08-18?09:33??hdlc協議\協議描述
?????目錄??????????0??2018-08-18?09:33??hdlc協議\源碼
?????目錄??????????0??2018-08-18?09:33??hdlc協議
-----------?---------??----------?-----??----
???????????????683370????????????????????9
評論
共有 條評論