Автор работы: Пользователь скрыл имя, 08 Декабря 2013 в 14:30, реферат
Одну и ту же информацию, например, сведения об опасности мы можем выразить разными способами: просто крикнуть; оставить предупреждающий знак (рисунок); с помощью мимики и жестов; передать сигнал «SOS» с помощью азбуки Морзе или используя семафорную и флажковую сигнализацию. В каждом из этих способов мы должны знать правила, по которым можно отобразить информацию. Такое правило назовем кодом.
Введение 2
Понятие кодирования информации 2
Основная часть 3
История кодирования информации 3
Криптография 3
Сурдожест 3
Кодирование различных типов информации 4
История кодирования символов 4
Азбука Морзе 4
Язык программирования - лого 7
Кодировка CP866 9
Кодировка Mac 9
Кодировка ISO 8859-5 10
Кодировка CP1251 10
Unicode 11
Кодировка символов русского языка 14
Кодовая таблица 14
Кодирование цвета 15
Цветовая модель RGB 15
Цветовая модель CMYK 15
Цветовая модель HSB (HSV) 16
Цветовая модель HSL 17
Цветовая модель LAB 17
Кодирование графической информации 18
Кодирование растровых изображений 20
Пример векторного изображения 2 21
Пример векторного изображения 21
2.4. Кодирование целых и действительных чисел 22
Кодирование звуковой информации 22
Аналоговый сигнал в цифровой форме 23
Кодирование текстовой информации 25
Расчет количества текстовой информации 26
Расчёт колличества текстовой информации 26
Заключение 28
Список используемой литературы 29
Кроме того, Международная организация по стандартизации (International Standards Organization, ISO) утвердила в качестве стандарта для русского языка еще одну кодировку под названием ISO 8859-5.
Наиболее распространенной в настоящее время является кодировка Microsoft Windows, обозначаемая сокращением CP1251. Введена компанией Microsoft; с учетом широкого распространения операционных систем (ОС) и других программных продуктов этой компании в Российской Федерации она нашла широкое распространение.
С конца 90-х годов проблема стандартизации символьного кодирования решается введением нового международного стандарта, который называется Unicode.
Unicode
Unicode (Юникод) это стандарт кодирования символов, где каждому символу присваивается свой уникальный код, независимо от программной и аппаратной платформы.
Изначально для кодирования символов использовали 8 бит, которые дают 256 комбинаций нулей и единиц. Этого вполне достаточно чтобы закодировать весь латинский алфавит, цифры, знаки препинания, арифметические знаки, специальные управляющие символы. Стандартом стал ASCII. К тому же удобно и компактно, когда один символ равен одному байту.
Но 256 значений не достаточно, для того чтобы поместить туда еще символы других языков. Таких как греческий алфавит, кириллица, китайские иероглифы, математические символы и т.д. Что неудивительно, ведь ASCII – американский стандартный код, разрабатывался американцами, для американцев.
Уже вначале 70-х компьютеры распространились от университетов, вычислительных центрах, закрытых государственных учреждений до небольших частных предприятий и домашних пользователей. США, Канада. Великобритания перестают быть монополистами в мире информационных технологий. В каждой стране есть свои вычислительные центры, IT-университеты и патенты в этой отрасли.
Как следствие, появляется огромное количество альтернативных кодировок. Ведь каждой письменности, нужны свои места в кодовой таблицы. Но вместе с тем появляется масса проблем.
Первая из них. Это неправильное отображение документов одной кодировки в другой. Для того чтобы документ приобрел читабельный вид, необходимо иметь специальную таблицу, по которой машина сопоставит символы одной кодировки с другой. Для каждой пары кодировок нужна такая таблица. Альтернатива этому, использовать третью кодировку которая содержит все символы первых двух. Неудобно человеку и лишнее использование ресурсов машины.
Вторая проблема. Шрифт, создается под определенную кодовую таблицу символов. Некоторые таблицы символов могут совпадать, более чем на 90%. Становиться не выгодно хранить разные шрифты, для (почти) одинаковых кодировок. Можно создавать универсальные шрифты. Но тогда потребуется хранить дополнительные данные, которые помогут разобраться, какие символы шрифта, каким символам кодировки соответствуют.
В начале 80-х кризис «крокозябры», в текстах, достиг своего пика. Необходимость в универсальной кодовой таблице стала очевидной. Нужен единый стандарт. Где поместились бы все символы. И в 1991 году такой стандарт был принят, консорциумом Юникод. Под названием Unicode. В консорциум вошли ведущие IT-предприятия, которые и определили, какой должна быть единая кодировка.
Если использовать кодировку с переменной шириной, то изначально потребуется дополнительные алгоритмы. Которые определят сколько нужно байт для хранения того или иного символа. Необходимо иметь алгоритмы которые, в цепочке бит, будут вычислять где конец, текущего символа, и где начало следующего. Решили, что все это будет сложно, и ввели кодировку с фиксированной шириной. Кодировка с переменной шириной, позволяет использует столько бит, сколько необходимо для хранении символ. Она намного компактнее. Этим фактором, изначально пренебрегли.
Сколько нужно бит, для нового стандарта Unicode? 8 бит даст 256 значений для символов (28 = 256). Практика доказала, это мало. 32 бита даст (232 = 2 294 967 296) позиций для символов. Это много. Слишком, не эффективное использование машинной памяти. Оптимальным вариантом, это взять 16 бит (216 = 65536). Таким образом первая версия Unicode была фиксированной шириной 16 бит. В нее вошли не все символы, а только самые употребляемые, содержавшиеся ране в известных кодировках. Например, в Unicode не попали, редко используемые китайские иероглифы. И не которые символы из высшей математики.
Каждый символ Unicode имеет свой порядковый номер, который по стандарту записывается шестнадцатеричным числом.
Последние версии Unicode были сильно изменены. И первое, что решили, это хранить все существующие символы в данной кодировке. Символы в Unicode стали переменной длинны. Кодовую таблицу разбили на два пространства. В первом, хранят все наиболее употребляемые символы. Это в диапазоне от 0 до 65535. Остальное пространство используется для редко употребляемых символов. Любой символ можно представить несколькими кодами. Поэтому существующую таблицу Unicode постоянно нормализируют и выпускают новые версии. Современный Unicode поддерживает письменность слева направо так и на оборот справа налево, арабские символы. Он даже позволяет создавать двунаправленные тексты. Т.е в тексте, относящейся к одной кодовой таблице, могут содержаться символы, пишущиеся как справа налево так и наоборот. Но эту возможность должны поддерживать и аппаратные устройства.
В Unicode включает в себя не только символы различных языков. Но и узкоспециализируемые математические символы, ноты. В нем содержится все современные письменности. И даже редко используемые такие как коптское письмо, чероки, эфиопское. Для академических, кругов в кодовую таблицу, добавили даже вымершие письменности. Например: клинопись, руны, египетские иероглифы, этрусский алфавит.
UTF (Unicode Transformation Format) это форма представления Unicode. Самые распространенные UTF-8, UTF-16, UTF-32. К примеру UTF-8 представление Unicode созданное для совместимости со старыми 8-битными кодовыми таблицами. Первые 128 символов UTF-8 абсолютно идентичны ASCII.
Внутреннее представление слов в памяти компьютера
с помощью таблицы ASCII
Слова |
Память |
file |
01100110 01101001 01101100 01100101 |
disk |
01100100 01101001 01110011 01101011 |
Иногда бывает так, что текст, состоящий из букв русского алфавита, полученный с другого компьютера, невозможно прочитать - на экране монитора видна какая-то "абракадабра". Это происходит оттого, что на компьютерах применяется разная кодировка символов русского языка.
Таким образом, каждая кодировка задается своей собственной кодовой таблицей. Как видно из таблицы, одному и тому же двоичному коду в различных кодировках поставлены в соответствие различные символы.
Например, последовательность числовых кодов 221, 194, 204 в кодировке СР1251 образует слово «ЭВМ», тогда как в других кодировках это будет бессмысленный набор символов.
К счастью, в большинстве случаев пользователь не должен заботиться о перекодировках текстовых документов, так как это делают специальные программы-конверторы, встроенные в приложения.
Есть и другие таблицы кодирования KOI8-U, Wsndows-1251, Unicode. Из перечисленных таблиц особенной является таблица Unicode, поскольку каждый символ этой таблицы кодируется двумя байтами.
Цветовая модель RGB
Цветовая модель RGB
Любой цвет можно представить в виде комбинации трёх основных цветов: красного, зелёного и синего (их называют цветовыми составляющими). Если закодировать цвет точки с помощью трёх байтов (24 бита), то первый байт будет нести информацию о красной составляющей, второй - зелёной, а третий - синей. Чем больше значение байта цветовой составляющей, тем ярче этот цвет. Задавая любые значения (от 0 до 255) для каждого из трёх байтов, с помощью которых кодируется цвет, можно закодировать любой из 16,5 миллионов цветов.
Цветовая модель CMYK
Цветовая модель CMYK
Данная цветовая модель имеет в своем основании 4 базовых цвета, также аббревиатурно заложенных в название: голубой (Cyan), малиновый (Magenta), желтый (Yellow) и черный (blacК). Для черного выбрали последнюю букву, так как В была уже занята синим цветом в модели RGB.
Их смешение происходит аддитивно,
но образование имеет
Цветовая модель CMYK является основной в полиграфии. Она часто применяется в цветных принтерах и плоттерах. При этом необходимо отметить, что цветовая модель CMYK по сравнению с RGB имеет меньшее количество получаемых оттенков. Это необходимо учитывать при конвертации.
Более подробно о данной цветовой модели в компьютерной графике мы расскажем на странице нашей статьи: "Цветовая модель CMYK".
Цветовая модель HSB (HSV)
Цветовая модель HSB (HSV)
Если рассматривать данную цветовую модель, то в первую очередь бросается в глаза ее сходство с RGB. Базовые цвета этих моделей совпадают. Зачем же тогда было создавать новую модель?
На самом деле цветовая модель HSB имеет совсем иную систему координат. В ее основе лежат такие параметры, как тон (Hue), насыщенность (Saturation) и яркость (Brightness/Value). В цветовой модели HSV множество получаемых цветов представляет собой шестиугольник, все шесть вершин которого являются пиком одного из основных цветов: красный, зеленый, синий (RGB), голубой, малиновый, желтый (CYM). Черный цвет выведен в качестве вершины конуса. Он регулируется таким параметром, как яркость.
Цветовая модель HSV более ориентирована на интуитивное понятие человека о цвете и тоне.
Цветовая модель HSL
Цветовая модель HSL
Такая компьютерная цветовая модель по своей основе похожа на HSB (HSV). Но ее основными параметрами являются: тон (Hue), светлота (Lightness) и насыщенность (Brightness/Value). Если представить цветовую модель HSL в виде фигуры, то это будет двойной (отраженный) шестигранный конус. Его основанием, как и у HSB (HSV), служат базовые цвета, а вершинами: белый цвет, регулируемый насыщенностью, и черный, характеризуемый светлотой.
Таким образом, цветовая модель HSL является одним из наиболее ярких примеров интуитивных понятий тона, насыщенности и яркости (светлоты).
Цветовая модель LAB
Цветовая модель LAB
Данная компьютерная цветовая модель является аппаратно-независимой. Это позволяет ей служить стандартом для оптимизации других моделей с целью получения предсказуемого цвета на различных устройствах (сканнер, принтер, монитор). Цветовая модель LAB является трехканальной. При этом, изменение цветов происходит по таким параметрам, как а – от зеленого к красному и b – от синего к желтому. Яркость цвета в данной цветовой модели отделена от параметров а и b. Это делает более удобным регулировку яркости, резкости и тона.
Цветовая модель LAB позволяет оптимизировать растровый файл под различные устройства и привести их визуализацию к одному цвету.
В данной статье мы рассказали вам об основных цветовых моделях в компьютерной графике, описали их особенности и возможности, выделили наиболее значимые характеристики и параметры. Теперь вы сможете попробовать самостоятельно "поиграть" с цветами и цветовыми моделями в любой графической программе. Удачных вам экспериментов и ярких свершений!
Под графической информацией можно понимать рисунок, чертеж, фотографию, картинку в книге, изображения на экране телевизора или в кинозале и т. д. Для обсуждения общих принципов кодирования графической информации в качестве конкретного, достаточно общего случая графического объекта выберем изображение на экране телевизора. Это изображение состоит из некоторого количества горизонтальных линий – строк. А каждая строка в свою очередь состоит из элементарных мельчайших единиц изображения – точек, которые принято называть пикселами (picsel – PICture'S ELement – элемент картинки). Весь массив элементарных единиц изображения называют растром (лат. rastrum – грабли). Степень четкости изображения зависит от количества строк на весь экран и количества точек в строке, которые представляют разрешающую способность экрана или просто разрешение. Чем больше строк и точек, тем четче и лучше изображение. Достаточно хорошим считается разрешение 640x480, то есть 640 точек на строку и 480 строчек на экран.
Строки, из которых состоит изображение, можно просматривать сверху вниз друг за другом, как бы составив из них одну сплошную линию. После полного просмотра первой строки просматривается вторая, за ней третья, потом четвертая и т. д. до последней строки экрана. Так как каждая из строк представляет собой последовательность пикселов, то все изображение, вытянутое в линию, также можно считать линейной последовательностью элементарных точек. В рассматриваемом случае эта последовательность состоит из 640x480=307200 пикселов. Вначале рассмотрим принципы кодирования монохромного изображения, то есть изображения, состоящего из любых двух контрастных цветов – черного и белого, зеленого и белого, коричневого и белого и т. д. Для простоты обсуждения будем считать, что один из цветов – черный, а второй – белый. Тогда каждый пиксел изображения может иметь либо черный, либо белый цвет. Поставив в соответствие черному цвету двоичный код “0”, а белому – код “1” (либо наоборот), мы сможем закодировать в одном бите состояние одного пикселя монохромного изображения. А так как байт состоит из 8 бит, то на строчку, состоящую из 640 точек, потребуется 80 байтов памяти, а на все изображение – 38 400 байтов.
Однако полученное таким образом изображение будет чрезмерно контрастным. Реальное черно-белое изображение состоит не только из белого и черного цветов. В него входят множество различных промежуточных оттенков – серый, светло-серый, темно-серый и т. д. Если кроме белого и черного цветов использовать только две дополнительные градации, скажем светло-серый и темно-серый, то для того чтобы закодировать цветовое состояние одного пикселя, потребуется уже два бита. При этом кодировка может быть, например, такой: черный цвет – 002, темно-серый – 012, светло-серый – 102, белый – 112.