此十六进制校验和如何计算?

问题描述 投票:1回答:1

我目前正在做一些与嵌入式系统接口的工作。在该系统中,有一系列十六进制配置值,最后是校验和。

这四个值如下:

  • 0A346149
  • 0A346169
  • 0A3460C4
  • 0A346189

所需的'校验和'为047A0000

我为此提供的非常有限的文档建议,校验和是四个值的字节加法,但是我不能复制它。

如何计算此校验和,您可以逐步进行检查吗?

hex checksum data-integrity
1个回答
2
投票

它是一次获取一个字节的所有单个字节的总和。

>>> (0x0A + 0x34 + 0x61 + 0x49 + 
     0x0A + 0x34 + 0x61 + 0x69 + 
     0x0A + 0x34 + 0x60 + 0xC4 + 
     0x0A + 0x34 + 0x61 + 0x89)
1146
>>> 0x047a
1146

((可能只是16位校验和,并且0000字节不属于其中。如果是,047A0000对于0x47a是不寻常的字节排列-它既不大也不小尾数。 )

© www.soinside.com 2019 - 2024. All rights reserved.