发表于:2004-01-02 15:49:00
楼主
问题:求00(16进制)的MODBUS-RTU-CRC码
1111,1111,1111,1111
0000,0000,0000,0000 异或00
1111,1111,1111,1110 结果
0111,1111,1111,1111 第一次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1101,1111,1111,1110 结果
0110,1111,1111,1111 第二次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,1111,1111,1110 结果
0110,0111,1111,1111 第三次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,0111,1111,1110 结果
0110,0011,1111,1111 第四次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,0011,1111,1110 结果
0110,0001,1111,1111 第五次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,0001,1111,1110 结果
0110,0000,1111,1111 第六次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,0000,1111,1110 结果
0110,0000,0111,1111 第七次右移后,高位补0,LSB=1
1010,0000,0000,0001 异或A001
1100,0000,0111,1110 结果
0110,0000,0011,1111 第八次右移后,高位补0,LSB=1
最后结果是603F,不是40BF,那么我到底错在哪里?各位大侠帮我请分析一下。
EMAIL:ZHTPP@126.com