Сформировать циклический код для десятиразрядного числа

Условие:

сформировать циклический код для деситиразрядного числа A=1010100101 если порожадющий полином P(x)=x^4+x+1 сделай это без программирования

Решение:

Предмет: Теория информации и кодирования
Раздел: Циклические коды (полиномиальное кодирование)


Задание:
Сформировать циклический код для десятиразрядного числа
A = 1010100101,
если порождающий полином
P(x) = x^4 + x + 1


Шаг 1: Представим данные в виде полинома

Двоичное число A = 1010100101 соответствует полиному:  A(x) = x^9 + x^7 + x^5 + x^3 + 1 
(Пояснение: коэффициенты при степенях x соответствуют битам числа, начиная с самого старшего разряда: 1 — при x^9, 0 — при x^8 и т.д.)


Шаг 2: Умножение на x^r, где r — степень порождающего полинома

Порождающий полином:  P(x) = x^4 + x + 1 
имеет степень r = 4.

Значит, мы умножаем A(x) на x^4:

 A(x) \cdot x^4 = x^{13} + x^{11} + x^9 + x^7 + x^4 


Шаг 3: Выполняем деление A(x) \cdot x^4 на P(x)

Найдем остаток от деления (в двоичной арифметике по модулю 2, то есть сложение и вычитание — это операция XOR):

Делим:  T(x) = A(x) \cdot x^4 = x^{13} + x^{11} + x^9 + x^7 + x^4 

на  P(x) = x^4 + x + 1 

Выполняем деление "в столбик" по модулю 2. Это довольно длинная операция, но мы сделаем её вручную, поэтапно (сокращённо).


Этапы деления:

  1. Первый шаг:
    Старший член делимого: x^{13}
    Старший член делителя: x^4
    Значит, частное начинается с x^9
    Умножаем P(x) на x^9:  x^9 \cdot (x^4 + x + 1) = x^{13} + x^{10} + x^9 

Выполняем вычитание (XOR) из T(x):  (x^{13} + x^{11} + x^9 + x^7 + x^4) \oplus (x^{13} + x^{10} + x^9) = x^{11} + x^{10} + x^7 + x^4 

  1. Второй шаг:
    Старший член: x^{11}
    Делим на x^4: получаем x^7
    Умножаем P(x) на x^7:  x^7 \cdot (x^4 + x + 1) = x^{11} + x^8 + x^7 

Вычитаем:  (x^{11} + x^{10} + x^7 + x^4) \oplus (x^{11} + x^8 + x^7) = x^{10} + x^8 + x^4 

  1. Третий шаг:
    Старший член: x^{10}
    Частное: x^6
     x^6 \cdot (x^4 + x + 1) = x^{10} + x^7 + x^6 

Вычитаем:  (x^{10} + x^8 + x^4) \oplus (x^{10} + x^7 + x^6) = x^8 + x^7 + x^6 + x^4 

  1. Четвёртый шаг:
    Старший член: x^8
    Частное: x^4
     x^4 \cdot (x^4 + x + 1) = x^8 + x^5 + x^4 

Вычитаем:  (x^8 + x^7 + x^6 + x^4) \oplus (x^8 + x^5 + x^4) = x^7 + x^6 + x^5 

  1. Пятый шаг:
    Старший член: x^7
    Частное: x^3
     x^3 \cdot (x^4 + x + 1) = x^7 + x^4 + x^3 

Вычитаем:  (x^7 + x^6 + x^5) \oplus (x^7 + x^4 + x^3) = x^6 + x^5 + x^4 + x^3 

  1. Шестой шаг:
    Старший член: x^6
    Частное: x^2
     x^2 \cdot (x^4 + x + 1) = x^6 + x^3 + x^2 

Вычитаем:  (x^6 + x^5 + x^4 + x^3) \oplus (x^6 + x^3 + x^2) = x^5 + x^4 + x^2 

  1. Седьмой шаг:
    Старший член: x^5
    Частное: x
     x \cdot (x^4 + x + 1) = x^5 + x^2 + x 

Вычитаем:  (x^5 + x^4 + x^2) \oplus (x^5 + x^2 + x) = x^4 + x 

  1. Восьмой шаг:
    Старший член: x^4
    Частное: 1
     1 \cdot (x^4 + x + 1) = x^4 + x + 1 

Вычитаем:  (x^4 + x) \oplus (x^4 + x + 1) = 1 


Остаток от деления: 1

Это и есть синдром или контрольная сумма.


Шаг 4: Формируем кодовое слово

Кодовое слово получается добавлением остатка к A(x) \cdot x^4:

Изначальное сообщение: A = 1010100101
Дописываем 4 нуля (так как степень порождающего полинома — 4):
10101001010000

Теперь заменяем последние 4 нуля на остаток (в двоичной форме — это 0001):

Итоговое кодовое слово: 10101001010001


Ответ:

Кодовое слово, соответствующее сообщению A = 1010100101 и порождающему полиному P(x) = x^4 + x + 1:

10101001010001


Если остались вопросы — с радостью поясню!

Не нашли нужного вам решения? Оставьте заявку и наши авторы быстро и качественно помогут вам с решением.
Оставить заявку
Работа вам нужна срочно. Не волнуйтесь, уложимся!
  • 22423 авторов готовы помочь тебе.
  • 2402 онлайн