CRC循环冗余校验(CCITT-16)

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CRC 循环冗余校验(CCITT-16)

START

MOVLW

DATAe

MOVWF ADDR

;将[e 00]余式表首地址DATAe 存入ADDR SWAPF BYTEa ,0ANDLW 0FH ;求e 和e 指定的[e 00]余式高字节的相对地址ADDWF

ADDR ,1

;取其绝对地址,存入ADDR MOVF

ADDR ,0

;把这一绝对地址再存入W

CALL TABLE ;查表,返回时h e 00放

W 中

MOVWF RESULTh ;把

h e 00

RESULTh

MOVLW 16ADDWF ADDR ,0;求e 指定的[e 00]

式低字节的绝对地址CALL TABLE ;查表,返回时l e 00放W 中

MOVWF RESULTl ;把l e 00存入RESUL MOVLW DATAf MOVWF ADDR ;将[f 00]余式表首

址DATAf 存入ADDR

MOVF BYTEa ,0ANDLW

0FH

;求f 和f 指定的[f 0

余式高字节的相对址

ADDWF ADDR ,1;取其绝对地址,存ADDR

MOVF ADDR ,0;把这一绝对地址再存W

CALL TABLE ;查表,返回时h f 00放

W 中

XORWF RESULTh ,0;h e

00与h f

00异或,

h a 00,存入W XORWF BYTEb ,0;h a 00与b 异或,h abc ,存入W

MOVF BYTEa ;h abc 存入BYTEa

MOVLW 16ADDWF ADDR ,0;求f 指定的[f 00]式低字节的绝对地址CALL

TABLE

;查表,返回时l f 00放W 中

相关文档
最新文档