Кодирование текстовой информации

Кодирование текстовой информации

Кодирование текстовой информации

Введение

Если у вас имеются какие-либо непонимания с такой темой, как «Кодирование текстовой информации», то записывайтесь ко мне на индивидуальный урок по информатике. На репетиторском уроке мы с вами детально разберем абсолютно все возникшие у вас вопросы и прорешаем колоссальное количество тематических упражнений.

Общие сведения о текстовой информации

На текущий момент времени большая часть всей информации, находящейся в сети Интернет, представлена в виде текста на различных национальных языках. Персональные компьютеры еще со времен 60-х годов научились правильно распознавать, обрабатывать, хранить и передавать текстовую информацию. Сложно себе представить современный и актуальный вебсайт, который не содержит ни одного символа. Ежедневно глобальная паутина пополняется десятками миллионов текстовых публикаций различного объема. Все поисковые системы в основном «заточены» на релевантный поиск веб-страниц в соответствии с текстовым запросом пользователей.

Не стоит забывать о том, что процессор любого компьютера, любой марки, любого бренда способен обрабатывать информацию, выраженную комбинацией только из 0 и 1. Следовательно, текстовая информация также должна быть преобразована в двоичный набор кодов. Значит, существует некий алгоритм, позволяющий кодировать текстовую информацию в вид, понятный процессору компьютера.

Свойства текстовой информации

Давайте выделим ключевые свойства, которыми должны обладать текстовые материалы:

  • Ценность

  • Новизна

  • Полезность

  • Адекватность

  • Истинность

Что можно понимать под ценностью текстовой информации? Ценность информации – пожалуй, одно из основных свойств любой информации. Если информация для пользователя не является ценной, аксиологически значимой, то она для него не является информативной. Разные читали по-разному воспринимают ценность информации. Для одного – новая, самая свежая информация, для другого – полная, детально разобранная информация о каком-либо объекте или событии. Лично для меня ценна та текстовая информация, которая написана понятным мне языком и глубоко освещает проблематику, на которую она ориентирована. Думаю, что всем знаком такой ресурс, как Википедия. На мой взгляд, авторы данного популярнейшего ресурса очень структурированно и полно описывают события в текстовых публикациях.

Что можно понимать под новизной информации? Думаю, здесь всем понятно, что означает данное свойство из самого названия. Любой текстовый материал должен содержать в своем контексте какую-то новизну, описание проблемы, которую раньше никто еще пристально не рассматривал. Как правило, новая текстовая информация является актуальной, но далеко не факт, что она является полной или достоверной, истинной.

Что можно понимать под полезностью информации? Свойство полезности и ценности очень сильно коррелируют между собой. Как правило ценная текстовая информация одновременно является и полезной. Для меня полезной является та информация, которая помогает решить спонтанно возникшую у меня проблему. Данная информация может быть неновой, неполной, недостоверной и даже неактуальной. Например, если вам требуется написать реферат на тему «Что такое текстовая информация?», и вы, прочитав данный материал, какие-то мысли позаимствовали отсюда, это означает, что данная статья для вас является полезной. Хотя с другой стороны, это информация не новая и давно хорошо изученная различными экспертами.

Что можно понимать под адекватностью информацию? Под адекватностью следует понимать то, насколько текстовое описание объекта или события соответствует в реальности описываемому объекту или событию. Если, например, в какой-либо статье говорится про задачи по программированию, а в решении приводятся стереометрические математические построения, то данная информация не является адекватной, так как упражнения по программированию в первую очередь связаны с написание программного кода. Информация в такой статье не будет являться адекватной.

Что можно понимать под истинностью информации? Под истинностью текстовой информации следует понимать то, насколько описываемые характеристики какого-либо объекта соответствуют его реальным характеристикам. Например, если мы будем утверждать следующее: для того, чтобы получить на экзамене ГИА или ЕГЭ по информатике 100 баллов, нам не нужно уметь программировать. Данная информация не является истинной. И не умея программировать, не удастся решить все упражнения на экзамене. С другой стороны, нельзя эту информацию считать неадекватной, но, не зная ни одного языка программирования, какое-то количество баллов все-таки можно получить. Или еще пример, если мы скажем, что текущий президент Российской Федерации Борис Николаевич Ельцин, это тоже ложная информация. Да, он был когда-то президентом, но в данный момент таковым не является. Это уже неактуальная информация, она устарела.

В данном примере наш тезис про президента является:

  • Не ценным, так как информация устаревшая и недостоверная.

  • Новым для нас, так как раньше нам об этом никто не писал.

  • Не полезным, так как никакого профита мы не получили, прочитав данное утверждение.

  • Адекватным, так как Ельцин Б.Н. когда-то был президентом.

  • Ложным, так как в настоящий момент времени президентом РФ является другой человек.

Что такое кодировочная таблица

Для кодирования текстовой информации в двоичные коды, понятные процессору персонального компьютера, необходимо прибегать к специальным кодировочным таблицам. Давайте представим, что мы напечатали какое-то предложение в текстовом редакторе, например, «Подготовка к ГИА и ЕГЭ» и решили сохранить документ на жесткий диск нашего ПК. Информация любого формата перед тем, как записаться на жесткий диск проходит этап кодирования. В результате наше предложение «Подготовка к ГИА и ЕГЭ» после кодирования преобразуется в двоичный набор, состоящий из цепочек 0 и 1. Но каков алгоритм этого кодирования? Все очень просто!

Существует специальная таблица, в которой представлены абсолютно все символы компьютерного алфавита, и каждому такому символу соответствует некий, строго заданный двоичный код. Для разных типов электронно-вычислительных машин применяются различные кодировки.

Самой распространенной кодировочной таблицей в начале 2000-го года являлась таблица кодировки ASCII. ASCII – American Standard Code for Information Interchange, или американская стандартная кодировочная таблица для печатных символов и некоторых специальных кодов. Первая половина этой таблицы (это 128 двоичных кодов) является стандартной, так как в нее входит буквы латинского алфавита, цифры, знаки препинания, скобки, а также так называемые непечатаемые символы. Вторая половина (это 128 двоичных кодов), как правило, содержит символы национального алфавита.

Кстати, в настоящее время существует пять различных кодировочных таблиц для русских букв:

  • КОИ-8

  • CP1251

  • CP866

  • ISO

  • Mac

С одной стороны, кажется, что удобно иметь столько вариантов кодирования текстовой информации, записанной на русском языке, а с другой – имеется большая проблема с совместимостью и соответствию двоичных кодов в разных кодировочных таблицах.

Ассоциация символа и кода символа

Давайте более детально поговорим об анатомии кодировочных таблиц и непосредственно о самом алгоритме кодирования текстовой информации. В качестве примера возьмем на рассмотрение кодировочную таблицу ASCII. Как мы раньше поняли, первая половина этой таблицы является строго стандартной и не содержит кодов ни одного русского символа. Рассмотрим вторую половину таблицы ASCII. Сразу хочу заметить, что двоичных кодов для букв 'ё' и 'Ё' в таблице нет.

Вернемся к исследованию предложения "Подготовка к ГИА и ЕГЭ". Как видно, данное предложение содержит достаточно много различных букв из русского алфавита, а также имеются повторяющиеся буквы, например, буквы 'о', 'а', 'к', 'Г' и др. Сразу небольшая оговорка: одна и та же малая и большая буквы имеют различный двоичный код в таблице ASCII, то есть буквы 'а' и 'А' будут кодироваться различным набором из 0 и 1.

Для простоты можете представить себе таблицу ASCII как таблицу, состоящую из двух колонок: в первой колонке указывается физический символ, а во второй колонке указывается двоичный код, соответствующий символу из первой колонки. Я лишь приведу небольшой фрагмент второй половины таблицы ASCII:

Символ русского алфавита

Двоичный код символа

'А'

11000000

'Б'

11000001

'В'

11000010

'Г'

11000011

'Я'

11011111

'а'

11100000

'я'

11111111

Когда процессор ПК встречает в тексте символ 'В', он его заменяет на двоичный восьмиразрядный код 11000010, а если букву 'а', то на 111000.

Сходу возникает вопрос: а почему отводится восемь позиций на двоичный код символа при кодировании текстовой информации? Потому что для хранения одного символа будет задействован 1 байт информации или 8 бит. Таким образом устроена кодировочная таблица ASCII. Отсюда вытекает умозаключение, что максимальное количество закодированных символов в таблице ASCII не может превышать 256, так как 28 = 256. Существует кодировочная таблица, называемая Unicode, вот она при кодировании текстовой информации преобразует символы в шестнадцатипозиционный двоичный код. Это связано с тем, что для хранения одного символа задействуется 2 байта памяти или 16 бит информации. Следовательно, таблица Unicode может кодировать до 216 = 65536 различных символов.

Еще одной важной характеристикой кодировочных таблиц является то, что символы в ней упорядочены в соответствии с национальным алфавитом. В русском алфавите за буквой 'а', следует буква 'б', затем буква 'в' и так далее. Также можно заметить, что в строках кодировочных таблиц сначала следуют заглавные буквы национального алфавита, а затем строчные, а, следовательно, и соответствующие двоичные коды заглавных букв будут меньше соответствующих кодов строчных букв.

Давайте произведем кодирование текстовой информации, а конкретно предложения "Подготовка к ГИА и ЕГЭ". Для этого построим таблицу, в которой каждому символу русского алфавита сопоставим двоичный код из кодировочной таблицы ASCII. Разделители между словами, то есть знаки пробела, также закодируем.

П

о

д

г

о

т

о

в

к

а

11001111

11101110

11100100

11100011

11101110

11110010

11101110

11100010

11101010

11100000

 

 

к

 

Г

И

А

 

и

 

Е

Г

Э

00100000

11101010

00100000

11000011

11001000

11000000

00100000

11101000

00100000

11000101

11000011

11011101

То есть перед тем, как записать текстовое предложение "Подготовка к ГИА и ЕГЭ" на жесткий диск, компьютер произведет кодирование текстовой информации и получит следующий бинарный код:

11001111111011101110010011100011111011101111001011101110111000101110101011100000001000001110101000100000110000111100100011000000001000001110100000100000110001011100001111011101

А вот подобные цепочки, наборы из 0 и 1 прекрасно распознаются процессором и он максимально оперативно произведет всю необходимую обработку над ними.

Если у вас остались какие-либо вопросы, связанные с кодирование текстовой информации, то записывайтесь ко мне на индивидуальный урок. На моих уроках мы с вами еще более детально погрузимся в область кодирования текстовой информации и рассмотрим внушительное количество ценных, полезных и актуальных примеров.

 
 
 
 
Авторизация на сайте
 
 
 
Обнаружили
ошибку на сайте?
Занятия по информатике