📅  最后修改于: 2020-11-25 05:49:01             🧑  作者: Mango
由离散的无内存源产生的代码必须得到有效表示,这是通信中的一个重要问题。为此,有代码字代表这些源代码。
例如,在电报中,我们使用摩尔斯电码,其中字母用Marks and Spaces表示。如果考虑字母E (通常使用),则将其表示为“。”而很少使用的字母Q用“ –.-”表示
让我们看一下框图。
其中S k是离散无记忆源的输出, b k是源编码器的输出,由0s和1s表示。
编码后的序列可以方便地在接收器处解码。
让我们假设源具有一个字母,该字母具有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}} $$
此源编码定理被称为无噪声编码定理,因为它建立了无错误的编码。它也被称为香农的第一个定理。