电工知识|CRC校验计算子程序

   更新日期:2017-03-25     来源:建材之家    作者:水电之家    浏览:19    评论:0    
核心提示:TITLE=子程序注释// CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB),移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码(16#A001)进行 异或,否则如果LSB为零,则无需进行异或。重复上述的由高至低的移位8次,第一个

显微镜下的黄龙玉

推荐简介:近些年黄龙玉的价格逐渐攀升,有越来越多的人都开始纷纷收藏黄龙玉,随着求购者需求的增多,市面上也出现了不少假的黄龙玉,那有什么仪器可以对黄龙玉的玉色是自然色,还是增强色进行鉴别呢?严格上来说,颜色没有真假,但是玉皮却有真假,用辅助仪器来判断玉色的手段常见的有三种:1.查尔斯滤色镜,又称祖母绿滤色镜,其分辨颜色有专门的颜色对照表可供参考。2.显微镜,一般用于观察玉石的表面特征,玉石内部接近表面的结构......
水电之家讯:TITLE=子程序注释

// CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB),移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码(16#A001)进行 异或,否则如果LSB为零,则无需进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处理完毕,用此时CRC寄存器的值与下一个8-bit数据异或并进行如前一个数据似的8次移位。所有的字符处理完成后CRC寄存器内的值即为最终的CRC值。

// 下面为CRC的计算过程:

// 1.设置CRC寄存器,并给其赋值FFFF(hex)。

// 2.将数据的第一个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果存入CRC寄存器。

// 3.CRC寄存器向右移一位,MSB补零,移出并检查LSB。

// 4.如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多项式码相异或。

// 5.重复第3与第4步直到8次移位全部完成。此时一个8-bit数据处理完毕。

// 6.重复第2至第5步直到所有数据全部处理完成。

// 7.最终CRC寄存器的内容即为CRC值。

//

// 输入参数:

// 待校验数据区指针,第一个字节为数据长度

// LD0 DataBuff IN DWORD

Network 1

LD SM0.0

MOVW 16#FFFF, AC0 //初始化CRC寄存器

BTI *LD0, LW4 //数据缓冲区第一个字节为数据长度

MOVD LD0, LD6

INCD LD6 //指针指向第一个待处理字节

Network 2

LD SM0.0

FOR AC2, +1, LW4 //开始循环处理每一个字节

Network 3

LD SM0.0

XORB *LD6, AC0 //字节首先与CRC寄存器低位进行异或

Network 4

LD SM0.0

FOR AC1, +1, +8 //移位处理循环,处理一个字节的8位

Network 5

LD SM0.0

SRW AC0, 1 //CRC寄存器右移一位

Network 6

LD SM1.1 //如果移出位为0,则进入下一次循环

XORW 16#A001, AC0 //如果移出位为1,CRC寄存器与多项式16#A001异或

Network 7

NEXT

Network 8

LD SM0.0

INCD LD6 //指针加1指向下一个字节

Network 9

NEXT

Network 10

LD SM0.0

SWAP AC0 //交换CRC寄存器高低字节

MOVW AC0, *LD6 //CRC校验值写入数据区结尾水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/
小程序码
 
打赏
 
更多>文章标签:电工
更多>同类水电电工资讯
0相关评论

推荐图文更多...
点击排行更多...
最新视频更多...
推荐产品更多...
老姚之家 | 全景头条 | 照明之家 | 防水之家 | 防盗之家 | 区快洞察 | 潜江建材 | 仙桃建材 | 恩施建材 | 随州建材 | 咸宁建材 | 黄冈建材 | 荆州建材 | 孝感建材 | 荆门建材 | 鄂州建材 | 襄樊建材 | 宜昌建材 | 十堰建材 | 黄石建材 | 长沙建材 | 湘西建材 | 娄底建材 | 怀化建材 | 永州建材 | 郴州建材 |
建材 | 720全景 | 企业之家 | 移动社区 | 关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图 | 排名推广 | 广告服务 | 积分换礼 | RSS订阅 | sitemap | 粤ICP备14017808号-1
(c)2015-2017 BYBC.CN SYSTEM All Rights Reserved
Powered by 电工之家