CRC冗余码校验编程实验.doc
《CRC冗余码校验编程实验.doc》由会员分享,可在线阅读,更多相关《CRC冗余码校验编程实验.doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、 实验目的:掌握CRC冗余码校验编程二、 实验原理:1设置CRC寄存器,并给其赋值FFFF(hex)。 2将数据的第一个8-bit字符与16位CRC寄存器的低8位进行 异或,并把结果存入CRC寄存器。 3CRC寄存器向右移一位,MSB(最高位)补零,移出并检 查LSB(最低位)。 4如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多 项式码相异或。 5重复第3与第4步直到8次移位全部完成。此时一个8-bit数 据处理完毕。 6重复第2至第5步直到所有数据全部处理完成。 7最终CRC寄存器的内容即为CRC值。 常用的CRC循环冗余校验标准多项式如下: CRC(12位) =X12+X1
2、1+X3+X2+X+1 CRC(16位) = X16+X15+X2+1 CRC(CCITT) = X16+X12 +X5+1 CRC(32位) = X32+X26+X23+X16+X12+X11+X10+ X8+X7+ X5+X4+X2+X+1 以CRC(16位)多项式为例,其对应校验二进制位列为1 1000 0000 0000 0101。 注意:这儿列出的标准校验多项式都含有(X+1)的多项式因子;各多项式的系数均为二进制数,所涉及的四则运算仍遵循对二取模的运算规则。 (注:对二取模的四则运算指参与运算的两个二进制数各位之间凡涉及加减运算时均进行XOR异或运算,即:1 XOR 1=0,0 X
3、OR 0=0,1 XOR 0=1,0 XOR 1=1,即相同为0,不同为1) 三、 实验内容及步骤: 打开VC选择新建点击“完成”,出现编辑添加控件在对话框上单击右键,选择建立类向导,出现如下对话框,添加成员变量返回最初的对话框单击“开始编码”按钮,选择建立类向导,如下图所示,添加功能函数单击Edit Code 添加如下函数void CGuoshuminDlg:OnButton1() / TODO: Add your control notification handler code hereUpdateData(true);int n,p,k,q,i,j=0;LPCSTRhead,g,beg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CRC 冗余 校验 编程 实验
限制150内