Информатика — курс лекций. Курс лекций для студентов по направлениям 230100. 62 Информатика и вычислительная техника
Скачать 2.08 Mb.
|
Отечественные схемы 8-разрядного кодирования текстов Активное внедрение национальных стандартов кодирования текстовых символов относится к 70-м годам XX века. Эти процессы затронули всю Европу. Не остался в стороне и Советский Союз: бы- ли утверждены первые национальные 8-разрядные схемы кодирования. При 8-разрядном кодировании на запись символа отводится байт, имеющий 256 различимых состояний. Это позволяет кодировать двуязычные символьные наборы, например английский и рус- ский. Англоязычную часть размещают в нижней части таблицы (коды от 0 до 127), а национальную часть — в верхней (коды от 128 до 255). Схема кодирования ISO-8859 Формально для России эта схема кодирования имеет наивысший приоритет, потому что утверждена Международным институтом стандартизации (ISO — International Standard Organization). В стандарте ISO-8859 кодированию символов кириллицы (кириллицей называют письменную систе- му славянских языков) выделена так называемая «пятая кодовая страница», поэтому этот стандарт именуют также ISO 8859-5. Нa практике документы, использующие эту схему, встречаются редко, особенно на компью- терах платформы IBM PC. Эту кодировку чаще можно встретить в документах, выполненных на ком- пьютерах платформы Sun. Несмотря на малую распространённость, эта система кодирования имеет 78 определенные перспективы. Она наиболее удобна для технических операций с текстовыми данными (поиск, преобразование и т.п.). Схема кодирования CP 866 В 1974 г. Государственный комитет по стандартизации утвердил стандарт двоичного кодиро- вания ГОСТ 19768-74, согласно которому внедрялись сразу две схемы кодирования. Одна из них по- лучила название ГОСТ-альтернативной. Срок действия стандарта предусматривался до 1980 г. Когда в начале 80-х годов XX в. началась поставка в СССР IBM-совместимых компьютеров, эта схема кодирования была принята для них в качестве основной. Впоследствии корпорация IBM опуб- ликовала эту схему в своём корпоративном стандарте, и схема получила наименование CP 866 (Code page 866). В настоящее время данной кодировкой пользуются только устаревшие программы, работаю- щие под управлением операционной системы MS-DOS, поэтому эту кодировку называют также коди- ровкой MS-DOS. Таким образом, сегодня мы имеем три разных наименования для одной и той же устаревшей схемы кодирования. Схема кодирования Windows-1251 Схема кодирования Windows-1251 представляет наглядный пример корпоративного стандар- та. Ввела её в действие корпорация Microsoft, производитель операционных систем и программных продуктов, предназначенных для автоматизации работы с документами. Никакими государственны- ми или международными стандартами данная схема кодирования не поддержана, но, тем не менее, является самой распространённой на компьютерах платформы IBM PC. Она считается основной для документов, созданных в таких программах, как Microsoft Word, Excel, Access и многих других. Боль- шинстве русскоязычных веб-страниц в Интернете имеют именно эту кодировку. Схема кодирования КОИ-8Р Схема кодирования КОИ-8 была одной из двух, утверждённых Госстандартом СССР в 1974 г., и в те годы называлась ДКОИ (двоичный код обмена информацией). Она стала основной для сетевых ЭВМ, работающих под управлением операционной системы UNIX. Важную область использования этой схемы представлял международный документооборот социалистических стран, объединённых Советом Экономической Взаимопомощи (СЭВ). На персональных компьютерных платформах эту схему стали применять только после внед- рения электронной почты Интернета. Это связано с тем, что первое время работа электронной почты обслуживалась ЭВМ под управлением операционной системы UNIX. Сегодня данная схема кодиро- вания называется КОИ-8 (код обмена информацией, восьмиразрядный). После распада СССР разли- чают отдельные схемы кодирования для России и Украины: КОИ-8Р и КОИ-8У. Технология кодирования Unicode Использование 8-разрядных таблиц кодирования заметно сдерживает возможности между- народного информационного обмена. Даже в одной стране могут одновременно действовать не- сколько стандартов, что затрудняет информационный обмен. Приходится создавать программы, спо- собные работать с разными таблицами кодирования, а это нерациональные затраты средств. 79 Для разработки универсальной системы кодирования в конце 80-х годов XX века был создан международный консорциум Unicode, который классифицировал национальные письменные систе- мы и изучил их особенности. По результатам этой работы был разработан международный стандарт кодирования. В его основе лежат три положения. 1. Каждый символ имеет уникальное имя. Символы могут совпадать по начертанию, но не по имени. Так, латинская, русская и греческая буквы «А» выглядят совершенно одинаково, но это разные символы с разными именами и кодами. 2. Каждый символ имеет уникальный номер, определяющий его позицию в таблице кодирова- ния. 3. Каждый символ можно представить его позицией, выраженной 16-разрядным двоичным ко- дом. Теоретически, 16 битами можно закодировать 65536 различных символов. Однако на самом деле напрямую кодируется на 2048 символов меньше. Последние 2048 кодов разделены пополам и образуют дополнительную таблицу размером . В ячейках этой таблицы можно разместить ещё более миллиона символов. Эти символы кодируются парами 16-разрядных значений, одно из которых выражает номер строки, а другое — номер столбца. Числовые коды этих символов называются суррогатными парами. Суррогатные пары представляют собой технологию 32- разрядного кодирования. Значение стандарта Unicode Считается, что современные потребности информационного обмена человечества требуют более 200 тысяч различных символов. Несколько десятков тысяч символов уже каталогизировано и зарегистрировано в основной таблице Unicode. Они в значительной степени охватывают символы алфавитов европейских языков, арабских, индийских и других слоговых систем, а также знаки иеро- глифических систем Японии, Китая и Кореи. На очереди кодирование знаков «мёртвых» письменных систем, что будет осуществлено с помощью механизма образования суррогатных пар. Познакомиться с тем, как закодированы первые десятки тысяч символов, можно на компью- тере, работающем в операционной системе Windows XP. Это первая операционная система, полно- стью поддерживающая стандарт Unicode. Запустите стандартную программу Таблица символов И от- кройте в ней какой-либо символьный набор, имеющий формат Open Туре. Рекомендуется использо- вать шрифт Arial Unicode MS. Сегодня это наиболее полный символьный набор из существующих в мире. Механизмы трансформации Unicode Наиболее распространённым заблуждением, касающимся схемы кодирования Unicode, явля- ется мнение о том, что «согласно этой схеме один символ кодируется двумя байтами». На самом де- ле стандарт ни слова не говорит о байтах, да и не может этого делать, потому что информационное содержание байта зависит от конкретных программ, которые записывают или воспроизводят дан- ные. Стандарт обходит эту проблему, вообще избегая упоминаний о байтах. В то же время, для практических целей надо как-то представлять данные байтами — этого ждут программы и устройства. Однако оказывается, что преобразовать 16 бит данных в байты можно далеко не единственным способом. Принципы этого преобразования называются механизмами 80 трансформации Unicode (Unicode Transformation Format, UTF). Они реализуются конкретными про- граммами. Механизм UTF-8 Механизм преобразования UTF-8 служит для обеспечения совместимости с устаревшими про- граммами, не рассчитанными на работу с символами в кодировке Unicode. Согласно этому механиз- му 16 бит кода представляются либо одним байтом (символы английского языка), либо двумя байта- ми (символы других европейских языков, в том числе русского), либо тремя байтами (символы во- сточных языков). Механизм UTF-16 Этот механизм рассчитан на современные программы, способные работать с символами в кодировке Unicode. Согласно этому механизму все символы, независимо от языковой группы, пред- ставляются парами байтов. Однако при этом возникает вопрос о том, какой байт считать старшим, а какой — младшим. На компьютерах платформы IBM PC действует механизм преобразования UTF-16 BE (старший байт — последний), а компьютерах Macintosh — механизм UTF-16 LE (младший байт — последний). Если кодировка указана просто как UTF-16, следует полагать, что это UTF-16 BE. Механизм UTF-7 Механизм преобразования UTF-7 рассчитан на задачи информационного обмена по элек- тронной почте. Он учитывает технические особенности систем обработки электронной почты и дела- ет их работу более эффективной. Согласно механизму UTF-7 двоичный код символа представляется несколькими байтами, причём для символов, относящихся к разным языкам, количество байтов мо- жет быть весьма различным (до шести байтов на символ). Цифровое кодирование изображений Тысячелетиями тексты служили основным средством информационного обмена в обществе. В текстовой форме передавались знания. Текстовыми документами сопровождались торговые сдел- ки. Текстами записывались государственные законы и межгосударственные соглашения. Кроме текстов людям давно знакомы и графические формы представления информации (ри- сунки, картины, схемы). В сочетании с текстом они обычно выполняют вспомогательную роль пояс- няющего или иллюстрирующего средства. Автоматизация работы с изображением основана на его представлении математической мо- делью. В настоящее время для этой цели используют несколько классов математических моделей, из которых наиболее известны следующие три: растровые модели; векторные модели; модели трехмерной графики (3D-модели). 81 Все модели служат одной цели: представить непрерывное аналоговое графическое изобра- жение дискретной последовательностью чисел. Модели различаются между собой элементарными объектами, а также тем, как свойства элементарных объектов изображений кодируются числами. Растровая модель компьютерной графики В растровой модели изображение считается прямоугольным с фиксированными размерами по ширине и высоте, состоящим из регулярной последовательности цветных точек (пикселов). Изображение, записанное в растровой модели, хранится как последовательность целых чи- сел, представляющих цвета отдельных точек в порядке развёртывания прямоугольника слева напра- во и сверху вниз. Растровая модель — базовая для воспроизведения изображений. Храниться они могут в любой модели, но на экране или на принтере всегда воспроизводятся как растровые, потому что физически и экран, и принтер являются растровыми устройствами, формирующими изображение из точек. Векторная модель В векторной модели изображение представляется коллекцией независимых графических объектов, имеющих различимые свойства. Элементарным объектом векторного изображения явля- ется линия (кривая). Она имеет следующие свойства: форму (описывается коэффициентами алгебраического уравнения третьего порядка); местоположение (описывается числовыми координатами характерных точек); параметры контура (выражают толщину и цвет линии); замкнутость контура (логическое свойство, имеющее двоичное значение «Да» или «Нет»); параметры внутренней заливки контура, если он замкнут (цвет, узор, текстура). Изображения, записанные в векторной модели, хранятся как таблицы свойств объектов. Бла- годаря такой форме хранения они очень экономно расходуют память компьютера, но для их воспро- изведения и преобразования требуются весьма сложные процедуры. Трёхмерная графическая модель Элементом трёхмерного изображения является плоский треугольник (треугольник не может быть не плоским). Если нужно изобразить в пространстве более сложную фигуру, её предварительно разбивают на треугольники. Четырёхугольник делят на два треугольника, пятиугольник — на три и так далее. Объёмные тела сначала представляются коллекциями граней, после чего грани представ- ляются коллекциями треугольников, где каждый треугольник — это коллекция трёх векторов, обра- зующих его стороны, а каждый вектор описывается тремя числовыми значениями, выражающими его координаты относительно точки, принятой за начало отсчёта. Адекватность трёхмерной модели зависит от глубины декомпозиции. Чем больше треуголь- ников содержит модель, тем лучше трёхмерная сцена отражает реальность, но тем больше операций требуется для её обработки. На практике количество элементов избирают, руководствуясь принци- пами экономической целесообразности и коммерческой достаточности. В современном кинемато- графе применяют объекты, состоящие из десятков тысяч треугольников. В то же время в целом ха- рактерные сцены могут насчитывать до нескольких миллионов элементов. 82 Перед воспроизведением происходит пересчёт пространственной модели в плоское растро- вое экранное изображение. Этот процесс называется визуализацией. В ходе визуализации компью- тер рассчитывает: порядок расположения элементов по оси, направленной к наблюдателю (элементы, скрытые от наблюдателя другими элементами, не должны воспроизводиться на экране); какой стороной (лицевой или обратной) элементарные треугольники обращены к наблюда- телю (у разных сторон могут быть разные свойства поверхностей); как поверхности элементарных треугольников взаимодействуют с лучами света, исходящими от источников освещения. Свет может поглощаться, отражаться, рассеиваться и преломлять- ся. Характер взаимодействия зависит от физико-оптических свойств поверхности. Характеристика графических моделей Растровую модель удобно использовать в тех случаях, когда точность воспроизведения цве- товых оттенков важнее точности передачи формы. Каждая точка растра способна иметь собственный цвет, и потому композиция точек может передавать весьма сложные механизмы образования оттен- ков. Растровую модель используют в цифровой фотографии, а также в полиграфии. В этой модели работают компьютерные мониторы и мультимедийное проекторы. Вместе с тем, разбиение изображения на точки (пикселы) при водит к искажению геометри- ческих форм, что заметно при увеличении изображения. Этот дефект называется пикселизацией. По- этому в тех случаях, когда форма объекта важнее, чем его цвет, используют векторные модели. Ха- рактерные примеры: чертежи, схемы, выкройки. Поскольку в векторной дели компьютер хранит не само изображение, а коэффициенты алгебраического уравнения, качество изображения зависит от масштаба его увеличения. Трёхмерные модели позволяют передать не только сведения о цвете и форме объектов, но и об их взаимодействии в пространстве сцены. Полностью достоинства трехмерных моделей раскры- ваются, когда изображение динамически меняется и зритель может управлять воспроизведением. Поэтому трёхмерные изображения либо просматривают с помощью специальных программ, позво- ляющих управлять углом зрения, их динамическое изменение предварительно записывают в видео- ряд. Первый подход применяют в виртуальном моделировании, а второй — в кинематографии. Кодирование растровых изображений Изображение может храниться и обрабатываться в любой модели, но перед воспроизведе- нием оно всегда преобразуется в растровое. Это связано с конструкцией и принципом действия большинства экранных и печатных устройств. Поэтому в автоматизированном информационном об- мене растровые изображения играют особую роль. Схема кодирования растровых изображений — табличная. Кодирование выполняется в два этапа: сначала прямоугольное изображение представляется прямоугольной матрицей цветных точек, потом цвет каждой точки записывается числом или группой чисел. Оптическое разрешение изображения Кодирование растрового изображения начинают с представления его в виде прямоугольной матрицы точек. Параметр, характеризующий частоту следования точек, называется разрешающей 83 способностью изображения или оптическим разрешением. Оно измеряется количеством элементов изображения (в данном случае — пикселов), приходящимся на единицу длины изображения. Системной единицей измерения длины является, как известно метр (сантиметр, миллиметр). Однако в вычислительной техник традиционно используется внесистемная единица — дюйм, и опти- ческое разрешение измеряется количеством точек, приходящихся на один дюйм длины изображе- ния — dpi, (dot per inch, англ.). Это грубое отступление от международных стандартов имеет столь прочные корни, что в большинстве случаев целесообразнее принять его к сведению, чем преодоле- вать. Так, например, максимальное оптическое разрешение технических устройств, выраженное в единицах dpi, является их стандартной технической характеристикой. Глубина цвета Субъективная оценка изображения зависит не только от его количества точек, но и от количе- ства различимых цветов. Монохромное изображение имеет два различимых цвета: цвет фона и цвет красителя. Если краситель — чёрный, а бумага — белая, то изображение — чёрно-белое. При записи чёрно-белых изображений цвет точки регистрируется одним битом: 1 — чёрный цвет; 0 — белый цвет. Чем больше двоичных разрядов выделено для записи каждого цвета, тем большее количе- ство различимых цветов можно записать. В частности, одним байтом можно закодировать любой цветовой оттенок из 256-цветной палитры. Глаз человека способен различить свыше 30000 цветовых оттенков. Теоретически, это озна- чает, что 16-разрядной палитры (65536 различимых цветов) должно быть достаточно, чтобы описать всё богатство различимых красок. Однако на самом деле это не так. Дело в том, что в разных цвето- вых диапазонах различимость цветовых оттенков — разная. Самая высокая различимость — в зелё- ных тонах, а самая низкая — в синих. Чтобы гарантированно выразить все различимые оттенки во всех тоновых диапазонах, нужна более представительная палитра. Обычно применяют 24-разрядное кодирование, что позволяет представить более 16,5 миллионов цветов. Этого вполне достаточно для адекватного кодирования цвета во всех диапазонах. При этом на запись цвета каждой точки расхо- дуется 3 байта данных. Количество различимых цветов, содержащихся в палитре изображения, называется глубиной цвета или цветовым разрешением изображения. Удобной мерой цветового разрешения служит двоичная разрядность числовой записи цвета. |