Gerling码与其他码的比较

首先普及一下知识:检错算法是用来干什么的?

错误检测算法是通信领域最重要的基础技术之一,在很多标准中都有这样的算法。它的作用是当数据传输时,如何判断这个数据传输正确?如果传输不正确,要不要提醒对方重新传输?以前不管正确与否,每个数据包都要重复传输几次。根据概率,一次是正确的,然后由应用层来判断。但是有了检错算法,我们就可以在第一时间知道数据是否传输错误。错误检测算法的优点在于,它可以用非常小的错误检测成本(成本)来检测,这与错误校正算法相比是非常低的。因此,在一些相对稳定的信道中,一般采用检错算法。目前市面上有CRC,奇偶校验,汉明校验。

根据行业特点,新算法一般以发明者的名字命名,所以称之为jelling code。例如香农费诺码、霍夫曼码、索罗门码和RS码。

jelling代码的检错算法很简单,具体来说,有两步。

1,给序列添加规则,比如二进制序列中“每1后加1个零”。这种方法有多种组合,每种方法加入的符号数不同,得到的概率系数r也不同。告诉你一个公式:

在几乎相等的二进制序列中,如果在C个符号1之后加一个符号0,实际增加符号0的比例(概率)为:

p(c)=1/((2^(c+1))-2)

感兴趣的朋友不妨用这个公式验证一下伪随机数。当c=1时,p(c)= 1/2;当c=2时,p(c)=1/6。现在一个知识点免费赠送,一个序列编码后是否达到了最混沌(等熵)状态,可以通过上面的公式来判断(这个方法也已经申请了专利)。

2.基于非归一化概率模型的编码,因为这种理论上的编码不仅可以大大消除添加的符号(编码后的比特长度与添加符号前的比特长度非常接近),而且在解码时还保持了人工添加的规律。理论和实践都证明,当编码结果等于原序列长度时,添加的规律无效。

检查错误的判断:

顺序解码时,如果连续解码两个符号1,说明数据传输有错误。

优势:

1,码率可以无限接近1,比如支持(0,1)的任意码率,大大降低了通信检错开销;

2、没有码长限制,最小支持1比特,最长支持无限;

3.当二进制序列中的概率不相等时可以实现无损压缩,即算法具有检错和压缩双重功能,当然也可以限制压缩功能;

4.从理论上证明了当码长为无穷大时,检错概率等于1,即检错可以达到100%;以解码32bit为例,误判概率为0.00164126,位数越长,误判概率越小。

5.逻辑非常简单,只需要一个int类型的缓存空间。

6.在不增加代码量的情况下,功能可以任意组合,如加密检错、压缩检错、压缩加密、压缩加密、检错组合等等。

7.知识产权受到保护,所有专利和知识产权归湖南瑞立德信息技术有限公司所有..

有的专家可能会问,这样的话,其他熵编码都能做到,你不妨试试!我相信直到我尝试了,我才知道我的理论的独创性。有一个前提,编码结果要尽可能接近熵极限,同时保持规律性。

同时,任何一个专家都可以针对以上任何一个优点,找出是否有类似的理论和方法!