0
点赞
收藏
分享

微信扫一扫

可怕,鸡的这些部位千万不能吃?多数人都不知道……

吴wuwu 2023-10-07 阅读 46

1、简单实现

下面代码是Adler-32算法的简单实现,我们来整理一下这段代码的逻辑:

A = 1 + D1 + D2 + ... + Dn (mod 65521)

B = (1 + D1) + (1 + D1 + D2) + ... + (1 + D1 + D2 + ... + Dn) (mod 65521)
  = nxD1 + (n-1) x D2 + (n-2) x D3 + ... + Dn + n (mod 65521)

Adler-32(D) = (B x 65536) + A

看到这个公式相信大家已经有了思路,对于A的计算很简单简单的相加,对于B的相加需要一个系数

const uint32_t MOD_ADLER = 65521;

uint32_t adler32(unsigned char *data
举报

相关推荐

99%人都不知道

0 条评论