Автор работы: Пользователь скрыл имя, 21 Августа 2012 в 09:54, лекция
Информация и данные
Свойства информации (требования к ней)
На этом простом принципе и основана работа ЭВМ. Любая информация в компьютере мо-жет быть представлена в виде последовательности двоичных символов – бит.
Представление текстовой
информации
При двоичном кодировании
текстовой информации каждому символу
соответствует его код –
Соответствие байтов и
символов задается с помощью таблицы
кодировки, в которой уста-навливается
взаимосвязь между символами и их порядковыми
номерами в компьютерном алфави-те. Все
символы компьютерного алфавита пронумерованы
от 0 до 255. Каждому номеру соответ-ствует
восьмиразрядный двоичный код от 00000000
до 11111111. Этот код есть порядковый но-мер
символа в двоичной системе счисления.
Для разных типов ЭВМ используются различные
таблицы кодировки. С распространением
персональных компьютеров типа IBM PC международным
стандартом стала таблица кодировки под
названием ASCII (American Standard Code for Information Interchange)
– Американский стан-дартный код для информационного
обмена.
Стандартными в этой таблице являются только первые 128 символов, т. е. символы с номе-рами от 0 (двоичный код 000000000) до 127 (двоичный код 01111111). Сюда входят буквы латин-ского алфавита, цифры, знаки препинания, скобки и некоторые другие символы. остальные 128 кодов, начиная с 128 (двоичный код 10000000) и кончая 255 (двоичный код 11111111), использу-ются для кодировки букв национальных алфавитов, символов псевдографики и научных симво-лов. В русских национальных кодировках в этой части таблицы размещаются символы русского алфавита.
Принцип последовательного
кодирования алфавита: в кодовой
таблице ASCII латинские буквы (прописные
и строчные) располагаются в алфавитном
порядке. Расположение цифр также упорядочено
по возрастанию значений. Данное правило
соблюдается и других таблицах кодиров-ки
(КОИ-8). Благодаря этому и в машинном представлении
для символьной информации сохраня-ется
понятие «алфавитный порядок».
Из всего вышесказанного следует, что
когда вы нажимаете клавишу с буквой L
на клавиа-туре ПК, центральный процессор
получает команды из восьми сигналов:
выключить – включить – выключить – выключить
– включить – включить – выключить –
выключить. Если учесть чрезвы-чайно высокое
быстродействие компьютера, то станет
очевидным, что для отображения на экране
буквы практически не требуется никакого
времени.
ASCII или UNICODE
Для кодирования необходимо описать базовые информационные объекты. Для этого необ-ходимо создать модель интересующей информации.
В отношении текстовой
информации решили отделить ее внешнее
представление от со-держательного
смысла. Это существенно облегчило задачу:
осталось выписать все возможные знаки,
которые могут быть использованы для написания
любого текста, и поставить в соответст-вие
каждому из них число. Таким образом, в
качестве элементарного информационного
объекта приняли текстовый знак.
В список используемых знаков включили
все, что сумели найти на клавиатуре англоязыч-ной
пишущей машинки- она оказалась лучшей
моделью для законодателей компьютерной
моды. Список лишь слегка расширили с учетом
специфики компьютера.
Поскольку компьютер работает с числами
в двоичной системе, которые традиционно
груп-пируют по 8 разрядов, решили в получившейся
таблице использовать сразу двоичные
8-разрядные числа. Часто такие таблицы
состоят из 3-х колонок, чтобы можно было
видеть сразу и двоичный код, и привычный
10-чный.
Текстовых знаков в таблице оказалось
128, а в 8-разрядное двочное число можно
закоди-ровать 256 знаков. Это позволило
учесть то, о чем не могли заранее подумать
изобретатели коди-рования. Различные
варианты заполнения свободной части
таблицы привели к похожим, но не-сколько
отличающимся стандартам. В настоящее
время наиболее известный вариант такой
табли-цы называется ASCII.
Той же частью таблицы смогли воспользоваться
программисты других стран, которым невоз-можно
было обойтись без английского алфавита,
но и родной язык было бы странно не использо-вать.
Поскольку такие модернизации таблицы
никем жестко не контролировались, появилось
не-сколько вариантов кодирования национальных
языков. В частности, для русского языка
сущест-вует несколько кодировок, которые
использовались в различных операционных
системах, напри-мер:
• 866 (в среде DOS)
• win-1251 (в среде Windows)
• mac-cyrilic (в среде Macintosh)
• koi-8r (в среде UNIX)
Кириллица - не самый сложный вариант:
в ней только 33 буквы, что чуть больше латиницы
(26), но даже с ней были сложности. По мере
развития информационных технологий (ИТ)
возникли новые вопросы:
• Как быть с абсолютно другими по системе
кодирования языками, например, китайским?
• Как разработанные в одной стране программы
использовать в другой?
• Можно ли разрабатывать многоязычные
словари?
КОДИРОВАНИЕ СИМВОЛОВ. ВИДЫ КОДИРОВОК. ТАБЛИЦЫ ASCII. UNICODE
Можно ли считать выражение лица кодировкой мыслей?
А. Алешин
Помимо цифр, на мониторы
ЭВМ необходимо выводить еще и
множество символов. Ясно, что для
вывода каждого символа необходим
некий машинный код, однозначно соответствующий
этому символу, или некое правило,
по которому можно организовать корректный
вывод каждого символа на дисплей.
Разумеется, разрабатывать такую
систему ввода-вывода следует оптималь-ным
образом с точки зрения потребления ресурсов
компьютера. Особенно важно в этом случае
помнить о том, что производительность
компьютеров в отдаленные времена зарождения
вычис-лительной техники была ничтожной,
с современных позиций, а системные программисты
и раз-работчики аппаратной части боролись
за каждый бит, адрес, инструкцию, регистр,
освобождая оперативную память и адресное
пространство компьютерных "малышей".
Давайте подсчитаем, сколько необходимо
символов для вывода информации на дисплей.
Исторически сложилось так, что первые
разработчики компьютеров были носителями
английско-го языка. Что им было необходимо
обеспечить для вывода на монитор? Во-первых,
26 букв анг-лийского алфавита (строчных),
во-вторых, 26 прописных, 9 знаков препинания
(. , : ! " ; ? ( ) ), пробел, 10 цифр, 5 знаков
арифметических действий (+,-,*, /, ^) и специальные
символы (№ % _ # $, и так далее ^, &, >, <,
|, \). Получается чуть больше сотни символов.
Такой сравнительно не-большой базовый
набор символов можно закодировать при
помощи таблиц соответствия этого набора
машинным кодам (фактически, двоичным
числам). Можно вполне ограничиться набором
двоичных чисел от 0 до 27 (всего 128 позиций),
что и было сделано. Таблица соответствия
полу-чила название ASCII (American Standard Code for
Information Interchange). В рамках таблицы ASCII создание
многоязычных документов являлось очень
проблематичной, а в большинстве случаев
и совершенно невыполнимой задачей.
Однако базового набора кодов стало быстро
не хватать. Возросший дефицит знакомест
в стандартной таблице ASCII потребовал
ее немедленного расширения. В результате
возникла но-вая таблица кодировок, получившая
название "расширенная таблица ASCII",
число знакомест в которой возросло до
28 (256 знакомест). Эта таблица получила
название международного стандар-та IS
646, а восьмибитный код - Latin-1. В него были
добавлены в основном латинские буквы
со штрихами и диакритические символы.
Вскоре появился новый стандарт IS 8859, в
котором вводи-лось понятие "кодовая
страница", т.е. набор из 256 символов
для определения языка или группы языков,
т.е. IS 8859-1 это Latin-1, IS 8859-2 включал славянские
языки с латинским алфавитом (чешский,
польский, вергерский), IS 8859-3 включал турецкий,
мальтийский, эсперанто, галисий-ский
языки, и т.д. Недостатком такого подхода
является то, что программное обеспечение
должно следить за кодовыми страницами,
смешивать языки при этом невозможно,
кроме того не были созданы кодовые страницы
японского и китайского языков.
UNICODE
В январе 1991 года возник консорциум UNICODE, целью которого является продвижение, развитие и реализация стандарта Unicode как международной системы кодирования для обмена информацией, а также поддержание качества этого стандарта в будущих версиях.
Стандарт UNICODE 4.0 представляет
собой новую систему
Наиболее просто устроена форма UTF-32. В
ней каждый символ закодирован при помощи
32-битного блока. Благодаря этому каждый
символ UTF-32 обладает однозначным соответствием
между декодированным символом и блоком
кода. Это форма имеет фиксированную длину
знако-места. Она покрывает все кодовое
пространство UNICODE - 0...10FFFF16. Это гарантирует
пол-ную совместимость с UTF-16 и UTF-8. Форма
UTF-32 является наиболее предпочитаемой
для большинства UNIX платформ.
Стандарт UNICODE содержит 96 382 символа, взятых
их мировых шрифтов. Этих симво-лов более
чем достатонно для общения на всех известных
языках мира, а также для написания классических
(исторических ) шрифтов многих языков.
UNICODE всключает в себя шрифты ев-ропейских
алфавитов, средне-азиатское письмо, направленное
справа на лево, шрифты Азии, и многие другие.
Подмножество символов (code points) HUN включает
70 207 идеографических символов определяемых
по национальным и промышленным стандартам
Китая, Японии, Кореи, Тайвани, Вьетнама
и Сингапура. Более того, UNICODE содержит
знаки пунктуации, математиче-ские символы,
технические символы, герметрические
фотмы и графические метки (dingbats), фо-нетические
знаки.
Кодовая таблица для кириллицы приведена ниже (взято из Фрагмента спецификации UNICODE 4.0 (Unicode Standard, Version 4.0), размещенного на сайте Unicode Consortium.