首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用boost创建6位crc

使用boost创建6位crc
EN

Stack Overflow用户
提问于 2013-05-02 00:48:05
回答 2查看 976关注 0票数 2

我对CRCs,boost和更多的java开发人员来说是个新手。我正在尝试使用crc.hpp boost库来创建一个仅基于两位计算的6位CRC值。首先,这可能吗?

理论上的CRC计算机似乎可以用来处理特定数量的比特,但是我不清楚如何指定6比特的结果。请帮帮忙。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-02 01:01:29

假设你的输入是基于2个实际的比特,而不是两个字节,这应该是可行的:

代码语言:javascript
复制
const int initial_remainder = 0xBAADF00D;

unsigned char input = 0x3;

boost::crc_basic<6> checksum(initial_remainder);
checksum.process_bits(input, 2);

printf("%i", checksum.checksum());

不过,您仍然需要弄清楚初始余数应该是什么。

票数 3
EN

Stack Overflow用户

发布于 2013-05-02 02:51:55

这应该只是一个自定义代码,最大化四个字节值之间的汉明距离。它将是一个包含四个8位值的表,由这两个位作为0..3中的一个数字进行索引。

使四个值中的任何两个之间的最小汉明距离最大化的一组值(有280个这样的组)是:0x00, 0x4f, 0xb3, 0xfc。最小汉明距离为5。这些值的高两位是按顺序排列的两位索引。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16322554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档