5.1 设信源⎭
⎬⎫⎩⎨⎧=⎥⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X (1) 求信源熵H(X);
(2) 编二进制香农码;
(3) 计算平均码长和编码效率。
解: (1)
symbol
bit x p x p X H i i i /609.2)01.0log 01.01.0log 1.015.0log 15.017.0log 17.018.0log 18.019.0log 19.02.0log 2.0()
(log )()(22222227
1
2=⨯+⨯+⨯+⨯+⨯+⨯+⨯-=-=∑=
%1.8314.3609
.2)()(14
.301
.071.0415.0317.0318.0319.032.03)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
5.2 对信源⎭
⎬⎫⎩⎨⎧=⎥⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X 编二进制费诺码,计算编码效率。
%2.9574.2609
.2)()(74
.201
.041.0415.0317.0218.0319.032.02)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
5.3 对信源⎭⎬⎫⎩⎨⎧=⎥
⎦⎤⎢⎣⎡01.01.015.017.018.019.02.0)(765432
1x x x x x x x X P X 编二进制和三进制哈夫曼码,计算各自的平均码长和编码效率。
解:
%9.9572.2609
.2)()(72
.201
.041.0415.0317.0318.0319.022.02)(====
=⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
%4.913log 8.1609
.2log )()(8
.1)
01.01.015.017.018.019.0(22.01)(2
2=⨯===
=+++++⨯+⨯==∑m L
K X H R X H x p k K i
i i η
5.4 设信源⎪⎭
⎪
⎬⎫⎪⎩⎪⎨⎧=⎥
⎦⎤⎢⎣⎡12811281641321161814121)(87654321x x x x x x x x X P X (1) 求信源熵H(X);
(2) 编二进制香农码和二进制费诺码;
(3) 计算二进制香农码和二进制费诺码的平均码长和编码效率; (4) 编三进制费诺码;
(5) 计算三进制费诺码的平均码长和编码效率;
解: (1)
symbol
bit x p x p X H i i i /984.1log 1281128log 128164log 64132log 32116log 1618log 814log 412log 21)
(log )()(22222228
1
2=⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯=-=∑=(2)
二进制香农码:
二进制费诺码:
(3)
香农编码效率:
%
100984.1984.1)()(984
.17
1281
71281664153214161381241121)(=====⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
费诺编码效率:
%
100984.1984.1)()(984
.17
1281
71281664153214161381241121)(=====⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑K
X H R X H x p k K i
i i η
(5)
%
3.943
log 328.1984.1log )()(328.14
1281
41281364133212161281141121)(22=⨯=⋅===⨯+⨯+⨯+⨯+⨯+⨯+⨯+⨯==∑m K X H R X H x p k K i
i i η
5.5 设无记忆二进制信源⎭
⎬⎫⎩⎨⎧=⎥
⎦⎤⎢
⎣⎡1.09.010
)(X P X 先把信源序列编成数字0,1,2,……,8,再替换成二进制变长码字,如下表所示。
(1) 验证码字的可分离性;
(2) 求对应于一个数字的信源序列的平均长度1K ; (3) 求对应于一个码字的信源序列的平均长度2K ; (4) 计算
1
2
K K ,并计算编码效率; (5) 若用4位信源符号合起来编成二进制哈夫曼码,求它的平均码长K ,并计算编码效率。
5.6
制哈夫曼码,求新符号的平均码字长度和编码效率。
5.7 对题5.6的信源进行游程编码。
若“0”游程长度的截至值为16,“1”游程长度的截至值为8,求编码效率。
5.8 选择帧长N = 64
(1) 对0010000000000000000000000000000001000000000000000000000000000000遍L-D码;
(2) 对1000010000101100000000010010000101001000000001110000010000000010遍L-D码再译码;
(3) 对0000000000000000000000000000000000000000000000000000000000000000遍L-D码;
(4) 对10100011010111000110001110100110000111101100101000110101011010010遍L-D码;
(5) 对上述结果进行讨论。