Читайте также: |
|
Циклические коды (ЦК) являются подклассом в классе линейных блочных кодов, удовлетворяющим дополнительному свойству цикличности. Циклические коды вместе с каждым кодовым словом (а1а2…а n) содержат также и его циклическую перестановку (а2а3…аnа1). Для построения кода достаточно задать всего лишь одно кодовое слово. Остальные кодовые слова образуются из исходного путем циклического сдвига влево или вправо на один, два, …, (k-1) символов. При этом упрощаются процедуры кодирования и декодирования. Например, если в ЦК (7;4) входит кодовое слово А1=0001011, то кодовые слова А2=0010110 и А3=0101100 также относятся к данному ЦК. Кодовые слова ЦК имеют длину n двоичных кодовых символов и описываются полиномами степени (n-1), в которых коэффициентами при соответствующих степенях формальной переменной, обозначаемой через х, являются двоичные символы кодовой последовательности. В общем виде кодовую последовательность ЦК можно записать так:
, (19)
где х - формальная переменная;
n-1, n-2,…,1,0 - показатели степеней формальной переменной и одновременно порядковые номера, которые занимают двоичные символы (разряды) кодовой последовательности, начиная со старшего и заканчивая нулевым;
Коэффициенты аi формальной переменной, могут быть равными логической " 1 " (ненулевой член) или логическому " 0 " (нулевой член). Обычно запись полинома упрощают, опуская сомножители аi = 1 и вычеркивая слагаемые, в которые входит аi=0. Например,
а(х)=1∙х4+0 ∙х3+1∙х2+0 ∙х1+1∙х0=х4+х2+1 (20)
В двоичном коде полиному (6.2) соответствует кодовая последовательность А1=10101. В приведенном примере кодовое слово имеет длину n=5. Если кодовая комбинация должна иметь большую длину, например, n=7, необходимо дописать в старшие разряды недостающие нулевые символы. Тогда 7-ми разрядная кодовая комбинация, соответствующая полиному (20), примет вид: А2=0010101. Арифметические действия над полиномами выполняются по обычным правилам, только вычитание заменяется суммированием, а коэффициенты членов полинома с одинаковыми степенями " х " (подобные члены) суммируют по модулю два.
Пример 10 Необходимо выполнить операцию вычитания и операцию умножения с полиномами а1(х)=х5+х3+х2 и а2(х)=х4+х2+х. Учитывая особенности арифметических правил при работе с полиномами, получаем:
а1(х) - а2(х)=а1(х)+а2(х)= х5+х3+х2+ х4+х2+х= х5+х4+х3+х,
поскольку х2+х2= х2(1 ;
а1(х)∙а2(х)=(х5+х3+х2)∙(х4+х2+х)= х9+х7+х6+ х7+х5+х4+ х6+х4+х3= х9+х5+х3.
Формирование новых разрешенных кодовых последовательностей по одной заданной комбинации а(х) (10) можно рассматривать, как умножение а(х) на " х " при первом сдвиге, на х2 при втором сдвиге и т.д. Чтобы степень новой кодовой последовательности не превышала (n-1), член полинома необходимо заменить единицей. Это допустимо, поскольку при сложении по модулю два двучлен (х n-1) можно записать как хn=1=х0. Поэтому, в результате первого сдвига с учетом (10), получаем:
В результате второго сдвига а(х) умножается на х2, то есть полученное при первом сдвиге произведение а(х)∙х вновь умножается на х и т.д.
Дата добавления: 2015-08-13; просмотров: 83 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Расширенные коды Хэмминга | | | Порождающий полином циклического кода |