06-07 Тексты в памяти компьютера. Кодирование текстовой информации

Дата публикации: 19.10.2016 19:00:58

Тексты в памяти компьютера. (Презентация, задания, тест)

Взломщики кодов.

ПРАКТИЧЕСКОЕ ЗАДАНИЕ

Запустить стандартное приложение Блокнот командой [Программы-Стандартные-Блокнот].

С помощью дополнительной цифровой клавиатуры при нажатой клавише {Alt} ввести число 0224, отпустить клавишу {Alt}, в документе появится символ «а». Повторить процедуру для числовых кодов от 0225 до 0233, в документе появится последовательность из 12 символов «абвгдежзий» в кодировке Windows.

С помощью дополнительной цифровой клавиатуры при нажатой клавише {Alt} ввести число 224, в документе появится символ «р». Повторить процедуру для числовых кодов от 225 до 233, в документе появится последовательность из 12 символов «рстуфхцчшщ» в кодировке MS-DOS.

Таблица кодировки символов.

Символы с кодами от 0 до 127.

kodovaya tablica ASCII.

Символы с кодами от 128 до 255.

kodovaya tablica ASCII

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

С точки зрения ЭВМ текст состоит из отдельных символов. К числу символов принадлежат не только буквы (заглавные или строчные, латинские или русские), но и цифры, знаки препинания, спецсимволы типа "=", "(", "&" и т.п. и даже (обратите особое внимание!) пробелы между словами. Да, не удивляйтесь: пустое место в тексте тоже должно иметь свое обозначение.

Вспомним некоторые известные нам факты:

Множество символов, с помощью которых записывается текст, называется алфавитом.

Число символов в алфавите – это его мощность.

Формула определения количества информации: N = 2b,

где N – мощность алфавита (количество символов),

b – количество бит (информационный вес символа).

В алфавит мощностью 256 символов можно поместить практически все необходимые символы. Такой алфавит называется достаточным.

Т.к. 256 = 28, то вес 1 символа – 8 бит.

Единице измерения 8 бит присвоили название 1 байт:

1 байт = 8 бит.

Двоичный код каждого символа в компьютерном тексте занимает 1 байт памяти.

Каким же образом текстовая информация представлена в памяти компьютера?

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

Кодирование заключается в том, что каждому символу ставится в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111. Таким образом, человек различает символы по их начертанию, а компьютер - по их коду.

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

Теперь возникает вопрос, какой именно восьмиразрядный двоичный код поставить в соответствие каждому символу.

Понятно, что это дело условное, можно придумать множество способов кодировки.

Все символы компьютерного алфавита пронумерованы от 0 до 255. Каждому номеру соответствует восьмиразрядный двоичный код от 00000000 до 11111111. Этот код просто порядковый номер символа в двоичной системе счисления.

Таблица, в которой всем символам компьютерного алфавита поставлены в соответствие порядковые номера, называется таблицей кодировки.

Для разных типов ЭВМ используются различные таблицы кодировки.

Международным стандартом для ПК стала таблица ASCII (читается аски) (Американский стандартный код для информационного обмена).

Таблица кодов ASCII делится на две части.

Международным стандартом является лишь первая половина таблицы, т.е. символы с номерами от 0 (00000000), до 127 (01111111).

Структура таблицы кодировки ASCII

Первая половина таблицы кодов ASCII

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

Для букв русского алфавита также соблюдается принцип последовательного кодирования.

Вторая половина таблицы кодов ASCII

К сожалению, в настоящее время существуют пять различных кодировок кириллицы (КОИ8-Р, Windows. MS-DOS, Macintosh и ISO). Из-за этого часто возникают проблемы с переносом русского текста с одного компьютера на другой, из одной программной системы в другую.

Хронологически одним из первых стандартов кодирования русских букв на компьютерах был КОИ8 ("Код обмена информацией, 8-битный"). Эта кодировка применялась еще в 70-ые годы на компьютерах серии ЕС ЭВМ, а с середины 80-х стала использоваться в первых русифицированных версиях операционной системы UNIX.

От начала 90-х годов, времени господства операционной системы MS DOS, остается кодировка CP866 ("CP" означает "Code Page", "кодовая страница").

Компьютеры фирмы Apple, работающие под управлением операционной системы Mac OS, используют свою собственную кодировку Mac.

Кроме того, Международная организация по стандартизации (International Standards Organization, ISO) утвердила в качестве стандарта для русского языка еще одну кодировку под названием ISO 8859-5.

Наиболее распространенной в настоящее время является кодировка Microsoft Windows, обозначаемая сокращением CP1251.

С конца 90-х годов проблема стандартизации символьного кодирования решается введением нового международного стандарта, который называется Unicode. Это 16-разрядная кодировка, т.е. в ней на каждый символ отводится 2 байта памяти. Конечно, при этом объем занимаемой памяти увеличивается в 2 раза. Но зато такая кодовая таблица допускает включение до 65536 символов. Полная спецификация стандарта Unicode включает в себя все существующие, вымершие и искусственно созданные алфавиты мира, а также множество математических, музыкальных, химических и прочих символов.

Попробуем с помощью таблицы ASCII представить, как будут выглядеть слова в памяти компьютера.

Внутреннее представление слов в памяти компьютера

Слова

file

disk

Память

01100110

01101001

01101100

01100101

01100100

01101001

01110011

01101011

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

Кодовая таблица ASCII(American Standard Code for Information Interchange), (коды от 0 до 32 отведены функциональным клавишам).

KOI8-R ("Код обмена информацией, 8-битный").

CP1251 Microsoft Windows, ("CP" означает "Code Page", "кодовая страница").

CP866 (MS DOS).

ISO(International Standards Organization,)

Mac Компьютеры фирмы Apple, работающие под управлением операционной системы Mac OS, используют свою собственную кодировку.

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

Рассмотрим простую черно-белую картинку:

Данное изображение состоит из пикселей. Совокупность пикселей образует графическую сетку, растр. Данное изображение можно закодировать в виде последовательности 0 и 1. Каждую пустую (белую) клеточку рисунка кодируем нулем, а закрашенную (черную) – единицей. В результате получится двоичный код этой картинки:

0000000000011100

1000000100000110

1100001100000011

1111111100000011

1101101100000011

1111111100000011

1111111111111110

0111111011111110

0001100011000110

0000000011000110

0000000111001110

0000000111001110