Сразу прошу не «выгонять меня», я попробовал, и это может быть полезно для таких школьников, как я.
Коды исправления ошибок.
Существует множество кодов, исправляющих ошибки в двоичном коде.
Это очень полезно, поскольку при хранении или передаче информации большая часть информации повреждается.
Одним из примеров таких кодов является «код Хэмминга» (о нем уже подробно писал другой автор).
http://habrahabr.ru/post/140611/ ).
Они добавляют к двоичному тексту дополнительные биты кода, с помощью которых мы можем исправить полученные ошибки.
Каждый такой код имеет две характеристики – k и n. Такой код называется (n,k)-кодом.
Здесь «n» обозначает общее количество символов в закодированном текстовом блоке, а «k» обозначает количество значащих символов.
Например, самый простой код — это код с повторениями.
В этом коде к каждому символу двоичного кода добавляются n-1 бит кода, которые дублируют значащий символ и впоследствии мы можем исправить ошибку.
Например, код (3,1) к каждому символу в двоичной системе добавляет по два одинаковых, и при шуме, если меняется один символ из блока, то остаются 2 одинаковых и по ним мы возвращаем исходный символ.
Описание Проекта
В моей программе мы использовали 2 типа таких кодов, это (3,1) код с повторением и (7,4) код, который является одним из так называемых «кодов Хэмминга».Однако моя программа написана таким образом, что в нее можно без особых усилий и времени добавить любой другой код типа (n,k).
Чтобы достичь своей цели, мне нужно было преобразовать обычный текст в двоичную форму, а затем добавить биты кода, которые помогут мне восстановить текст. А чтобы выдавать ошибки в двоичном коде, я написал процедуру, которая зашумляет текст (делает ошибки в двоичном коде).
Затем я перевел «шумный» код в обычный текст, чтобы продемонстрировать пользователю эффективность «шумного» кода.
Следующим шагом было исправить оставшийся зашумленный код и преобразовать его в обычный текст.
Для создания своей программы я использовал помощь Pascal, собственные знания и «великий» Google.com.
Выводы и перспективы.
Я создал программу, реализующую два кода, исправляющих ошибки в тексте, возникшие в результате передачи или длительного хранения файла с информацией.
Я также улучшил свои навыки программирования на языке Паскаль.
Исходные коды
Прошу прощения за "еврейский код" и за турбопаскаль тоже (обычный компьютер сломался, я писал на втором Пентиуме).Код может помочь школьникам на уроках информатики и участникам олимпиад. Теги: #n/k-коды #коды Хэмминга #шифрование данных #хранение информации #информационная безопасность #разработка веб-сайтов #программирование
-
Форматирование Флешки Через Командную Строку
19 Oct, 24 -
Краткая История Проекта Opencv
19 Oct, 24 -
Компианино
19 Oct, 24