на початковому інтервалі. А так само визначаємо довжину нового робочого інтервалу
? i = ui - di.
Далі кодуємо всі наступні повідомлення подібним чином.
Визначаємо середину кінцевого робочого інтервалу
В
де An - число архів, un, dn - верхня і нижня межі кінцевого робочого інтервалу відповідно.
Декодування:
. Перше закодоване повідомлення В«лежитьВ» на інтервалі, в який входить число архів. p align="justify">. Наступні числа архіви визначаються як:
В
де Aj - нове число архів, Aj-1 - попереднє число архів, Qj-1 - нижня межа декодованого повідомлення, P (ai) - імовірність цього повідомлення.
Графічно метод арифметичного кодування представлений на малюнку 3.2.4.
В
Рис. 3.2.4. Арифметичне кодування
.3 Циклічні коди
Циклічна перестановка елементів дозволених кодових комбінацій призводить до появи дозволеної кодової комбінації. якщо А1А2 ... аn - дозволена КК, то а2 ... аn а1 теж дозволена КК.
Всякая n-розрядна комбінація може бути представлена ​​поліномом ступеня (n-1)
== х5 + х3 + х2 +1
У загальному вигляді:
А (n) = an-1xn-1 + an-2xn-2 + ......... + a1x + a0
Властивість дозволених ЧК:
Всі дозволені кодові комбінації діляться на який утворює поліном без залишку.
Q (x) - поліном, відповідний вихідної інформаційної комбінації
Pr (x) - утворює поліном ступеня r, r-число перевірочних розрядів.
В
R (x) - залишок від ділення,
В
G (x) має ту ж розмірність, що і Q (x).
Два способи формування циклічного коду:
спосіб призводить до отримання нероздільного коду.
спосіб дозволяє отримати разделімого код, в якому вихідна кодова комбінація є частиною дозволеної.
крок. Вихідний поліном множимо на хr
крок. Отримуємо залишок R (x)
крок. Додаємо залишок до Q (x) * хr
Недоліком першого способу є те, що в результаті ми отримуємо нероздільний код (неможливо відокремити перевірочні елементи від інформаційних). Тому на практиці найчастіше застосовується другий спосіб формування кодових комбінацій. p> Для виявлення помилок у прийнятій кодовій комбінації досить поділити її на продукує поліном. Якщо прийнята кодова комбінація дозволена, то залишок від ділення буде нульовим. Ненульовий залишок свідчить про те, що прийнята кодова комбінація містить помилки. По виду залишку (синдрому) можна в деяких випадках також зробити висновок про характер помилки і виправити її. br/>
.4 Побудова кодера і декодера циклічного коду
Побудова кодера
На передавальній стороні необхідно на основі отриманої від джерела повідомлень і утворює полінома кодової комбінації і утворює полінома сформувати перевірочну групу. Для цього нам необхідний формувач пе...