JT/T808组包的最重要一个环节之一就是对整个包(除去包头包尾的0x7E)内容按字节异或求和。

C# 实现

        public int getXorCode(byte[] data){byte CheckCode = 0;int len = data.Length;for (int i = 0; i < len; i++){CheckCode ^= data[i];}return CheckCode;}

传入参数为byte[]

Java 实现

    public int getXorCode(ByteBuf buf) {int checksum = 0;while (buf.readableBytes() > 0) {checksum ^= buf.readUnsignedByte();}return checksum;}

传入的是ByteBuf,基于的是Netty框架

如果想传入的也是byte[],则如下:

    public static int getXorCode(byte[] bytes) {int checksum = 0;for (byte b : bytes) {checksum ^= b;}return checksum;}

JT/T808校验码计算(按字节异或求和)相关推荐

  1. QT ModbusCRC16 校验码计算(非查表法,直接计算)

    记录一下QT中如何实现 ModbusCRC16 校验码计算 #include <QCoreApplication> #include <QDebug>//CRC16计算函数 u ...

  2. C语言CRC校验码计算与校验

    循环冗余校验(cyclicredundancy check,CRC)对传输序列进行一次规定的除法操作,将除法操作的余数附加在传输信息的后面.在接收端,也对收到的数据做相同的除法.如果接收端除法得到的结 ...

  3. bcc校验位怎么算的_数据BCC校验码计算工具

    这是数据BCC校验码计算工具下载,获得数据BCC校验码工具,MFC开发,使用方便,输入数据16进制字符串,点击计算生成BCC码.. 软件介绍 数据BCC校验码计算工具,难免会发生错误.为了避免这种错误 ...

  4. 由13位数字组成的中国标准书号校验码计算实例

    由13位数字组成的中国标准书号校验码计算实例 EAN·UCC 前缀 组区号 出版者号 出版序号 校 验 码 1 取ISBN前12位数字 9 7 8 7 5 0 6 4 2 5 9 5 ? 2 取各位数 ...

  5. 文件完整性校验码计算工具

    文件完整性校验码计算工具 工具介绍 支持算法:CRC32,MD2,MD4,MD5,SHA1,SHA256,SHA512,RipeMD128,RIPEMD160,ED2K 多个哈希类型可以同时生成每个文 ...

  6. CRC校验码计算,以常用CRC-8为例

    CRC即循环冗余校验码:是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定. CRC校验原理:在要发送的帧后面附加一个数,生成一个新帧发送给接收端.它要使所生成的新帧 ...

  7. 16位CRC校验码计算,485MODBUS计算

    CRC计算方法是: 1. 加载一值为0XFFFF的16位寄存器,此寄存器为CRC寄存器. 2. 把第一个8位二进制数据(即通讯信息帧的第一个字节)与16位的CRC寄存器的相异或,异或的结果仍存放于该C ...

  8. bcc校验码计算_CRC校验你会吗?计算、校验、C语言实现,三步教你轻松搞定

    目录 前言 CRC算法简介 CRC计算 CRC校验 CRC计算的C语言实现 CRC计算工具 总结 前言 最近的工作中,要实现对通信数据的CRC计算,所以花了两天的时间好好研究了一下,周末有时间整理了一 ...

  9. 【交叉二五码及其校验码计算方式】

    一.交叉二五码: 交叉二五码是1972年美国Intermec公司发明的一种条.空均表示信息的连续型.非定长.具有自校验功能的双向条码.它的字符集为数字字符0~9. 交叉二五条码由左侧空白区.起始符.数 ...

  10. java实现冗余校验_循环冗余校验_循环冗余校验码计算_循环冗余校验 java实现(6)...

    接收端对收到的len 2字节执行do_crc,如果没有差错发生则结果应为0.循环冗余校验 在一些传输协议中,发送端并不指出消息长度,而是采用结束标志,考虑以下几种差错: 1)在消息之前,增加1个或多个 ...

最新文章

  1. python3 RSA加解密
  2. 卡方分布的期望和方差_T检验、F检验、卡方检验详细分析及应用场景总结
  3. Expression Blend实例动画-大坝水位升高演示
  4. 智能制作,是我们改变时代的机会——阿里云视频云的理想与未来
  5. php免登录接口,PHPWind 8.0 论坛免登陆发布接口发布
  6. 我的log4j与logback简易配置
  7. MS SQL JSON类型type
  8. 开启NLP新时代的BERT模型,真的好上手吗?
  9. 依存句法分析 oracle,spaCy 第三篇:依存分析
  10. Java join()原理分析
  11. C6748和音频ADC连接时候的TDM以及I2S格式问题
  12. 计算机学stata,stata(统计学软件)
  13. 身份证文字信息及人脸图片采集
  14. 扁平化设计-扁平化与拟物设计对比
  15. 9.后缀、前缀函数-suffix basename addsuffix addprefix
  16. dataframe新增一列的方法
  17. 好用的Mac视频下载软件--Downie 4
  18. 中考词汇测试软件,百词斩中考版
  19. 开发者 发展 5 热情
  20. 【工业互联网】工业互联网与工业大数据分析的应用

热门文章

  1. 危害极大的计算机病毒cih发作的日期是,计算机病毒防治(答案)
  2. 想安装win10需要等推送?简单一步就搞定了!
  3. 《21天学通Java(第7版)》—— 1.10 练习
  4. 啊哈算法——第一章第二节:冒泡排序
  5. vue-项目完成的项目报告
  6. 在Visual Studio里设置VA助手(VAssistX)的快捷键
  7. [NOIP2017 普及组] 成绩
  8. 程序批量将文本文件中的某字符替换
  9. 关于发那科机器人弧焊指令故障处理
  10. Git可视化工具GitKraKen基本使用