Файл: Технологии программирования (Теоретические аспекты кодирования информации).pdf
Добавлен: 01.04.2023
Просмотров: 343
Скачиваний: 2
СОДЕРЖАНИЕ
1.Теоретические аспекты кодирования информации
1.1. История возникновения и использования кодирования информации
1.2. Основные понятия кодирования данных, классификация кодов
2. Структура и особенности способов кодирования данных в настоящее время
2.1. Основная характеристика методов кодирования
2.2. Кодирование текстовой информации
2.3. Кодирование числовой информации
2.4. Кодирование звуковой информации
2.5. Кодирование графической информации.
3. Способы представления кодов
3.1 Матричное представление кодов
3.2 Представление кодов в виде кодовых деревьев
3.3 Представление кодов в виде многочленов
ВВДЕНИЕ
Важнейшей частью информатики как науки является теория информации, которая занимается изучением информации, ее появлением, развитием и уничтожением. К этой науке близко примыкает теория кодирования, в задачу которой входит изучение форм представления информации при ее передаче по различным каналам связи, а также при хранении и обработке.
Рассматриваемая тема в курсовой является актуальной, так как кодирование данных - одна из первых тем, раскрываемых в информатике. Вычислительная техника первоначально возникла как средство автоматизации вычислений. Следующим видом обрабатываемой информации стала текстовая. Сначала тексты просто поясняли труднообозримые столбики цифр, но затем машины все более существенным образом стали преобразовывать текстовую информацию. Оформление текстов достаточно быстро вызвали у людей стремление дополнить их графиками и рисунками. Делались попытки частично решить эти проблемы в рамках символьного подхода: вводились специальные символы для рисования таблиц и диаграммам. Но практические потребности людей в графике делали ее появление среди видов компьютерной информации неизбежной. Числа, тексты и графика образовали некоторый относительно замкнутый набор, которого было достаточно для многих решаемых на компьютере задачи.
Постоянный рост быстродействия вычислительной техники создал широкие технические возможности для обработки звуковой информации, а также для быстро сменяющихся изображений. Все это обусловило и развитие способов представления и кодирования различных видов информации в компьютере.
Цель работы – рассмотреть форматы данных и их способы представления кодированием в компьютере.
Для достижения цели необходимо решить следующие задачи:
1) Рассмотреть основные понятия теоретической основы кодирования информации;
2) Рассмотреть представление различных типов, данных в компьютере;
3) Описать способы кодирования информации.
Объектом изучения, представленным в теоретической части являются данные в компьютере.
Предмет изучения - основные методы кодирования информации на данный момент. Методы исследования: • теоретический анализ научной и учебно-методической литературы; •методы презентации данных: схемы, рисунки. Курсовая работа состоит из введения, двух глав, заключения и списка литературы.
1.Теоретические аспекты кодирования информации
1.1. История возникновения и использования кодирования информации
Кодировка данных:
Прежде чем рассмотреть задачу кодирования, необходимо рассмотреть ряд определений, использующихся в теории кодирования:
Код – правило, описывающее соответствие знаков или их сочетаний одного алфавита знакам или их сочетаниям другого алфавита; - знаки вторичного алфавита, используемые для представления знаков или их сочетаний первичного алфавита.
Кодирование – это процесс использования различных комбинаций уровней напряжения или тока для представления единиц и нулей цифровых сигналов в линии передачи.
Декодирование - операция, обратная кодированию, т.е. восстановление информации в первичном алфавите по полученной последовательности кодов.
Операции кодирования и декодирования - называются обратимыми, если их последовательное применение обеспечивает возврат к исходной информации без каких-либо ее потерь.
Информационная энтропия - в теории связи энтропия используется как мера неопределенности ожидаемого сообщения, т.е. энтропия источника информации с независимыми сообщениями есть среднее арифметическое количеств информации сообщений
Распространенными типами кодирования линий являются униполярный, полярный, биполярный и манчестерский.
Человечество использует шифрование (кодировку) текста с того самого момента, когда появилась первая секретная информация. Перед вами несколько приёмов кодирования текста, которые были изобретены на различных этапах развития человеческой мысли.
Теория кодирования — это раздел теории информации, изучающий способы отображения дискретных сообщений сигналами в виде определенных сочетаний символов.
С глубокой древности люди искали эффективные способы передачи информации:
• Движение факелов использовал древнегреческий историк Полибий (II в. до н.э.};см. Рис. 1
• Оптический телеграф – семафор – впервые использовал Клод Шапп в 1791 г.; см. Рис. 2
Движение электромагнитной стрелки в электромагнитных телеграфных аппаратах впервые применили русский физик П.Л.Шиллинг (1832г.) и профессора Геттингёнского университета Вебер и Гаусс (1833г.); см. Рис. 3
• Азбука и телеграфный аппарат Самюэла Морзе (1837); Рис.4
• Международный флажковый код для передачи информации оптическими сигналами впервые ввел капитан Фредерик Марьят в 1861г. На основе свода корабельных сигналов; Рис.5
Беспроволочный телеграф (радиопередатчик) был изобретен А.С.Поповым в 1895 г. И Маркони в 1897 г. независимо друг от друга; Рис.66
Беспроволочный телефон, телевидение (1935), затем и ЭВМ – новые средства связи, появившиеся в XX в., с которыми связана новая эпоха в информатизации общества.
Одновременно с потребностью передавать информацию люди искали способы скрыть смысл передаваемых сообщений от посторонних любопытных глаз. Императоры, торговцы, политики и шпионы искали способы шифрования своих посланий. Образцы тайнописи можно встретить еще у Геродота (V в. до н. э.). К тайнописи – криптографии прибегал Гай Юлий Цезарь, заменяя в своих тайных записях одни буквы другими. Использовали шифрование не только древнегреческие жрецы, но и ученые Средневековья: математики итальянец Джироламо Кардана и француз Франсуа Виет, нидерландский гуманист, историк, юрист Гроций, выдающийся английский философ Фрэнсис Бэкон. Отцом криптографии считается архитектор Леон Баттиста Альберти (1404-1472), который ввел шифрующие коды и многоалфавитные подстановки.
Сэр Фрэнсис Бэкон (1561 – 1626), автор двух литерного кода, доказал в 1580 г., что для передачи информации достаточно двух знаков. Также Ф.Бэкон сформулировал требования к шифру:
1. Шифр должен быть несложен, прост в работе;
2. Шифр должен быть надежен, труден для дешифровки 10 посторонним;
3. Шифр должен быть скрытен, по возможности не должен вызывать подозрений.
Шифры Бэкона – сочетание шифрованного текста с дезинформацией в виде нулей. Таким образом, двузначные коды и шифры использовались задолго до появления ЭВМ. Новый толчок развитию теории кодирования дало создание в 1948 году Клодом Эльвудом Шенноном (1916 — 2001) теории информации. Идеи, изложенные Шенноном в статье «Математическая теория связи», легли в основу современных теорий и техник обработки, передачи и хранения информации. Результаты его научных исследований способствовали развитию помехоустойчивого кодирования и простых методов декодирования сообщений.
1.2. Основные понятия кодирования данных, классификация кодов
Рассмотрим основные понятия, связанные с кодированием информации. Для передачи в канал связи сообщения преобразуются в сигналы. Символы, при помощи которых создаются сообщения, образуют первичный алфавит, при этом каждый символ характеризуется вероятностью его появления в сообщении. Каждому сообщению однозначно соответствует сигнал, представляющий определенную последовательность элементарных дискретных символов, называемых кодовыми комбинациями. Кодирование - это преобразование сообщений в сигнал, т.е. преобразование сообщений в кодовые комбинации. Код - система соответствия между элементами сообщений и кодовыми комбинациями. Кодер - устройство, осуществляющее кодирование
Декодер - устройство, осуществляющее обратную операцию, т.е. преобразование кодовой комбинации в сообщение. Алфавит - множество возможных элементов кода, т.е. элементарных символов (кодовых символов) X = {xi}, где i = 1, 2,..., m. Количество элементов кода - m называется его основанием. Для двоичного кода xi = {0, 1} и m = 2. Конечная последовательность символов данного алфавита называется кодовой комбинацией (кодовым словом). Число элементов в кодовой комбинации - n называется значностью (длиной комбинации). Число различных кодовых комбинаций (N = mn) называется объемом или мощностью кода.
Если N0 - число сообщений источника, то N N0. Множество состояний кода должно покрывать множество состояний объекта. Полный равномерный n - значный код с основанием m содержит N = mn кодовых комбинаций. Такой код называется примитивным.
Классификация – это «разделение множества объектов на подмножества по их сходству или различию в соответствии с принятыми методами». Классификация фиксирует закономерные связи между классами объектов с целью определения места объекта в системе, которое указывает на его свойства. Под объектом понимается любой предмет, процесс, явление материального или нематериального свойства.
Система классификации позволяет сгруппировать объекты и выделить определенные классы, которые будут характеризоваться рядом общих свойств. Классификация объектов – та процедура группировки на качественном уровне, направленная на выделение однородных свойств.
Применительно к информации как к объекту классификации выделенные классы называют информационными объектами. С этой точки зрения классификация информации является важнейшим средством создания систем хранения и поиска информации, без которых сегодня невозможно эффективное функционирование информационного обеспечения управления.
Классификатор – систематизированный свод однородных наименований, т.е. классифицируемых объектов и их кодовых обозначений.
Классификатор (классификационная схема) – систематизированный перечень наименований объектов, каждому из которых в соответствии дан уникальный код.
Систематизация объектов производится согласно правилам распределения, заданного множества объектов на подмножества (классификационные группировки) в соответствии с установленными признаками их различия и сходства. Применяется в автоматизированных системах управления и обработки информации. Классификатор является стандартным кодовым языком документов, финансовых отчетов и автоматизированных систем.
Структура классификатора, как правило, должна иметь три блока: блок идентификации, включающий коды объектов классификации и классификационных группировок, блок наименований объектов и классификационных группировок на естественном языке и блоке дополнительных признаков объектов, включающий наименования и коды дополнительных признаков объектов классификации.
Коды можно классифицировать по различным признакам:
1. По основанию (количеству символов в алфавите): бинарные (двоичные m=2) и не бинарные (m ¹2).
2. По длине кодовых комбинаций (слов):
равномерные — если все кодовые комбинации имеют одинаковую длину;
неравномерные — если длина кодовой комбинации не постоянна.
3. По способу передачи:
последовательные и параллельные;
блочные — данные сначала помещаются в буфер, а потом передаются в канал и бинарные непрерывные.
4. По помехоустойчивости:
простые (примитивные, полные) — для передачи информации используют все возможные кодовые комбинации (без избыточности);
корректирующие (помехозащищенные) — для передачи сообщений используют не все, а только часть (разрешенных) кодовых комбинаций.
5. В зависимости от назначения и применения условно можно выделить следующие типы кодов:
Внутренние коды — это коды, используемые внутри устройств. Это машинные коды, а также коды, базирующиеся на использовании позиционных систем счисления (двоичный, десятичный, двоично-десятичный, восьмеричный, шестнадцатеричный и др.). Наиболее распространённым кодом в ЭВМ является двоичный код, который позволяет просто реализовать аппаратное устройство для хранения, обработки и передачи данных в двоичном коде. Он обеспечивает высокую надежность устройств и простоту выполнения операций над данными в двоичном коде. Двоичные данные, объединенные в группы по 4, образуют шестнадцатеричный код, который хорошо согласуется с архитектурой ЭВМ, работающей с данными кратными байту (8 бит).