(6,3)線形符号の行列演算


3ビットの符号(111)を次の生成行列で符号化する場合、
$$
G = \left(
\begin{array}{ccc}
1 & 0 & 0 & 1 & 1 & 0 \\
0 & 1 & 0 & 0 & 1 & 1 \\
0 & 0 & 1 & 1 & 0 & 1
\end{array}
\right)
$$
具体的な計算手順は次のようになります。
1. 生成行列が組織符号かどうか確認する
2. 行列演算を行う

1. 生成行列が組織符号かどうか確認する

生成行列Gは3行6列です。この場合、生成行列の左側の3行3列が単位行列であれば、生成される符号は組織符号になります。組織符号では、符号語の中に元の情報が含まれます。この生成行列Gは左側の3行3列が単位行列なので、生成される符号語は組織符号になります。

2. 行列演算を行う

符号語uは次の計算で求まります。
$$ u = (1 1 1)G $$
$$ u =
\left(
\begin{array}{ccc}
1 & 1 & 1
\end{array}
\right)
\left(
\begin{array}{ccc}
1 & 0 & 0 & 1 & 1 & 0 \\
0 & 1 & 0 & 0 & 1 & 1 \\
0 & 0 & 1 & 1 & 0 & 1
\end{array}
\right)
$$

この行列演算の結果、uは1行6列の行列になります。組織符号から、uの最初の3列は111です。
4,5,6列目の具体的な計算は次のようになります。
4列目:
$$
\left(
\begin{array}{ccc}
1 & 1 & 1
\end{array}
\right)
\left(
\begin{array}{ccc}
1 \\
0 \\
1
\end{array}
\right) = 1 \times 1 + 1 \times 0 + 1 \times 1 = 1 + 0 + 1 = 0
$$
5列目:
$$
\left(
\begin{array}{ccc}
1 & 1 & 1
\end{array}
\right)
\left(
\begin{array}{ccc}
1 \\
1 \\
0
\end{array}
\right) = 1 \times 1 + 1 \times 1 + 1 \times 0 = 1 + 1 + 0 = 0
$$
6列目:
$$
\left(
\begin{array}{ccc}
1 & 1 & 1
\end{array}
\right)
\left(
\begin{array}{ccc}
0 \\
1 \\
1
\end{array}
\right) = 1 \times 0 + 1 \times 1 + 1 \times 1 = 0 + 1 + 1 = 0
$$
よって、
$$ u =
\left(
\begin{array}{ccc}
1 & 1 & 1 & 0 & 0 & 0
\end{array}
\right)
$$
2進数の演算なので、各列の行列演算に注意が必要です。足し算は排他的論理和(XOR)になります。具体的には、\( 1 + 1 = 1\)ではなく、\( 1 \oplus 1 = 0\)になります。

スポンサーリンク
スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク