📜  源代码定理

📅  最后修改于: 2020-11-25 05:49:01             🧑  作者: Mango


由离散的无内存源产生的代码必须得到有效表示,这是通信中的一个重要问题。为此,有代码字代表这些源代码。

例如,在电报中,我们使用摩尔斯电码,其中字母用Marks and Spaces表示。如果考虑字母E (通常使用),则将其表示为“。”而很少使用的字母Q“ –.-”表示

让我们看一下框图。

框图

其中S k是离散无记忆源的输出, b k是源编码器的输出,由0s1s表示。

编码后的序列可以方便地在接收器处解码。

让我们假设源具有一个字母,该字母具有k个不同的符号,并且第k符号S k以概率P k出现,其中k = 0,1…k-1

假设由长度为l k的编码器分配给符号S k的二进制代码字以比特为单位。

因此,我们将源编码器的平均代码字长L定义为

$$ \ overline {L} = \ displaystyle \ sum \ limits_ {k = 0} ^ {k-1} p_kl_k $$

L表示每个源符号的平均位数

如果$ L_ {min} = \:最小\:可能的\:值\:of \:\ overline {L} $

那么编码效率可以定义为

$$ \ eta = \ frac {L {min}} {\ overline {L}} $$

使用$ \ overline {L} \ geq L_ {min} $,我们将获得$ \ eta \ leq 1 $

但是,当$ \ eta = 1 $时,源编码器被认为是有效的

为此,必须确定值$ L_ {min} $。

让我们参考定义“给定一个离散的无记忆熵源$ H(\ delta)$,任何源编码的平均代码字长L都以$ \ overline {L} \ geq H(\ delta)为界$。”

用简单的词来说,代码词(例如:单词QUEUE的摩尔斯电码为-.- ..- …-。)始终大于或等于源代码(例如QUEUE)。这意味着代码字中的符号大于或等于源代码中的字母。

因此,在$ L_ {min} = H(\ delta)$的情况下,根据熵$ H(\ delta)$的源编码器效率可以写为

$$ \ eta = \ frac {H(\ delta)} {\ overline {L}} $$

此源编码定理被称为无噪声编码定理,因为它建立了无错误的编码。它也被称为香农的第一个定理