История кодирования информации

Измайлова Елизавета Андреевна

ДЕРЖАВНИЙ НАВЧАЛЬНИЙ ЗАКЛАД

«ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ»

МІНІСТЕРСТВА ОСВІТИ І НАУКИ УКРАЇНИ

КАФЕДРА ІНФОРМАЦІЙНИХ  ТЕХНОЛОГІЙ

 

 

 

 

 

 

 

 

 

 

 

 

 

ІНДИВІДУАЛЬНЕ ЗАВДАННЯ З ДИСЦИПЛІНИ

«ІНФОРМАЦІЙНІ СИСТЕМИ  І ТЕХНОЛОГІЇ»

ТЕМА:

«ІСТОРІЯ КОДУВАННЯ ІНФОРМАЦІЇ »

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Виконав: студентка групи 3613-2-1

Ізмайлова Єлизавета  Андріївна

Перевірила:

Пшенична Олена  Станіславівна

 

 

 

 

Запоріжжя, 2013

 

Содержание

Введение

Понятие кодирования информации

Одну и ту же информацию, например, сведения об опасности мы можем выразить разными способами: просто крикнуть; оставить предупреждающий знак (рисунок); с помощью мимики и жестов; передать сигнал «SOS» с помощью азбуки Морзе или используя семафорную и флажковую сигнализацию. В каждом из этих способов мы должны знать правила, по которым можно отобразить информацию. Такое правило назовем кодом.

Код — это набор условных обозначений (или сигналов) для записи (или передачи) некоторых заранее определенных понятий.

Кодирование информации – это процесс формирования определенного представления информации. В более узком смысле под термином «кодирование» часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки.

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

Знак - это элемент конечного множества отличных друг от друга элементов.

Знак вместе с его смыслом называют символом.

Набор знаков, в котором определен  их порядок, называется алфавитом. Существует множество алфавитов:

алфавит кириллических букв {А, Б, В, Г, Д, Е, ...}

алфавит латинских букв {А, В, С, D, Е, F,...}

алфавит десятичных цифр{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

алфавит знаков зодиака {картинки знаков зодиака} и др.

Особенно большое значение имеют  наборы, состоящие всего из двух знаков:

пара знаков {+, -}

пара цифр {0, 1}

пара ответов {да, нет}

Алфавит, состоящий из двух знаков, называется двоичным алфавитом. Двоичный знак (англ. binary digit) получил название «бит».

Шифрование - кодирование сообщения отправителя, но такое чтобы оно было не понятно несанкционированному пользователю.

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

Количество символов в алфавите кодирования и длина кода - совершенно разные вещи. Например, в русском  алфавите 33 буквы, а слова могут  быть длиной в 1, 2, 3 и т.д. буквы.

Одно и то же сообщение можно  закодировать разными способами, т. е. выразить на разных языках. В процессе развития человеческого общества люди выработали большое число языков кодирования. К ним относятся:

  • разговорные языки (русский, английский, хинди и др. — всего более 2000);
  • язык мимики и жестов;
  • язык рисунков и чертежей;
  • язык науки (математические, химические, биологические и другие символы);
  • язык искусства (музыки, живописи, скульптуры и т. д.);
  • специальные языки (эсперанто, морской семафор, азбука Морзе, азбука Брайля для слепых и др.).

Основная часть

История кодирования информации

 

Человечество использует шифрование (кодировку) текста с того самого момента, когда появилась первая секретная  информация. Перед вами несколько  приёмов кодирования текста, которые  были изобретены на различных этапах развития человеческой мысли:

 

криптография – это тайнопись, система изменения письма с целью  сделать текст непонятным для  непосвященных лиц;


 

 

 

 

 

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

Один из самых первых известных  методов шифрования носит имя римского императора Юлия Цезаря (I век до н.э.) . Этот метод основан на замене каждой буквы шифруемого текста, на другую, путем смещения в алфавите от исходной буквы на фиксированное количество символов, причем алфавит читается по кругу, то есть после буквы я рассматривается а. Так слово «байт» при смещении на два символа вправо кодируется словом «гвлф». Обратный процесс расшифровки данного слова – необходимо заменять каждую зашифрованную букву, на вторую слева от неё.

 

азбука Морзе или неравномерный телеграфный код, в котором каждая буква или знак представлены своей комбинацией коротких элементарных посылок электрического тока (точек) и элементарных посылок утроенной продолжительности (тире);

 


Кодирование различных типов информации

История кодирования символов

 

Для кодирования одного символа  клавиатуры используют 8 бит - один байт.

Байт - это наименьшая единица обработки  информации. С помощью одного байта  можно закодировать 28=256 символов.

Существует таблица кодов клавиатуры. Первые коды с 32 по 127 являются стандартными и обязательными для всех стран и всех компьютеров, а во второй половине (128-255) каждая страна может создавать свой стандарт - национальный.

 

 

1963 год - Утвержден американский стандартный код для обмена информацией - ASCII (American Standard Code Informatio Interchange). 
Фирма General Electric создала первую коммерческую СУБД (систему управления базами данных).

 Первая, или «нижняя», половина  таблицы ASCII (коды 0—126) содержит знаки  препинания, арабские цифры и символы английского алфавита. Она является общепринятой во всем мире. В каждой стране используется своя «верхняя» половина таблицы ASCII (коды 127—255, или «расширенные» ASCII-коды), в которой находятся буквы национальных алфавитов и специальные символы. 
Для поддержки русского алфавита применяют два основных варианта таблицы кодировок символов — кодовую таблицу 866 для операционной системы MS-DOS и кодовую таблицу 1251 для операционной системы Windows. Русские буквы в этих кодировках расположены на совершенно разных позициях.

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

 

Порядковый номер

Код

Символ

0 - 31

00000000 - 00011111

Символы с номерами от 0 до 31 принято называть управляющими.

Их функция – управление процессом  вывода текста на экран или печать, подача звукового сигнала, разметка текста и т.п.

32 - 127

0100000 - 01111111

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

Символ 32 - пробел, т.е. пустая позиция  в тексте.

Все остальные отражаются определенными  знаками.

128 - 255

10000000 - 11111111

Альтернативная  часть таблицы (русская).

Вторая половина кодовой таблицы ASCII, называемая кодовой страницей (128 кодов, начиная с 10000000 и кончая 11111111), может иметь различные варианты, каждый вариант имеет свой номер.

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


 

1964 год - Язык BASIC (Beginners all-parpouse sumbolic instraction code - многоцелевой язык символических инструкций для начинающих) был разработан профессорами Дартмутского колледжа Томом Куртцем (Tom Kurtz) и Джоном Кемени (John Kemeny) для обучения студентов, незнакомых с вычислительной техникой. У языка со временем появилось множество диалектов: Basica (IBM), GW-Basic, MSX-Basic, Turbo-Basic (Borland), Quick-Basic (Microsoft), XYBasic, QBasic, CBasic, Basic-80, 86 и 87Basic/387Basic (MicroWay) и т.д.

Впервые BASIC был  применен в компьютере IBM 704, но широкое распространение получил в начале 1980-х, после того как в 1975 г. Билл Гейтс и Пол Аллен написали интерпретатор Бейсика для первого ПК Altair 8800. Со временем язык породил множество диалектов.

В 1968-1970 годах профессор Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934) создал в Цюрихском политехническом университете язык PASCAL, названный в честь Блеза Паскаля - первого конструктора устройства, которое теперь относится к классу цифровых вычислительных машин. Он создавался как язык, который, с одной стороны, был бы хорошо приспособлен для обучения программирования, а с другой - давал бы возможность эффективно решать самые разнообразные задачи на современных ЭВМ.

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

1969 - Профессор математики МТИ  (Массачусетского технологического  института)  Сеймур Пейперт и его коллеги создали новый язык на основе Лиспа, назвав его Лого (что по-гречески означает слово). По инициативе Пейперта в языке стала использоваться так называемая черепашка, обеспечивающая связь "объект - мысль" (сначала употреблялась механическая черепашка, ползающая по полу, а затем - ее условное изображение на экране). Как отмечал Пейперт, "компьютер обычно шаг за шагом ведет ребенка за собой", а Лого, наоборот, "убеждает ребенка в том, что он способен управлять машиной, позволяет ребенку сказать: "Здесь я хозяин". Сначала Лого предназначался для больших компьютеров и мини-компьютеров, имеющихся в МТИ, но потом проник в тысячи классов начальных школ.

Язык программирования - лого

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

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

MS-DOS расшифровывается как дисковая операционная система. Операционная система - это программа, координирующая действия вычислительной машины; под ее управлением осуществляется выполнение программ. MS-DOS - операционная система, расположенная на дисках. Разработчиком MS-DOS является Корпорация Microsoft.

Первой разработкой MS-DOS можно считать  операционную систему для персональных ЭВМ, созданную фирмой Seattle Computer Products в 1980 г. В конце 1980 г. система, первоначально названная QDOS, была модифицирована и переименована в 86-DOS.

Право на использование операционной системы 86-DOS было куплено Корпорацией Microsoft, заключившей контракт с фирмой IBM, обязуясь разработать операционную систему для новой модели персональных компьютеров, выпускаемых фирмой. Когда в конце 1981 г. новый компьютер IBM PC приобрел широкую популярность, его операционная система представляла собой модифицированную версию системы 86-DOS, названную PC-DOS, версия 1.0.

Вскоре после выпуска IBM-PC на рынке  стали появляться персональные компьютеры "схожие с РС". Операционная система  этих компьютеров называлась MS-DOS, версия 1.0. Корпорация Microsoft предоставила в  распоряжение фирм, производящих эти  машины, точную копию операционной системы PC-DOS - широко теперь применяемую MS-DOS.

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

С момента выпуска операционные системы PC-DOS и MS-DOS усовершенствовались параллельно и аналогичным образом. в 1982 году появились версии 1.1. Главным преимуществом новой версии была возможность использования двухсторонних дискет (версия 1.0 позволяла работать только с односторонними дискетами), а также возможность пересылки принтеровского вывода на другие устройства.

В 1983 году были разработаны версии 2.0. По сравнению с предыдущими  они давали возможность использовать жесткий диск, обеспечивали усложненный  иерархический каталог диска, включали встроенные устройства для дискет и систему управления файлами.

MS-DOS версии 3.0, выпущенная в 1984 году, предоставляла улучшенный вариант  обслуживания жесткого диска  и подсоединенных к компьютеру  микрокомпьютеров. Последующие версии, включая 3.3 (появившуюся в 1987 году), развивались в том же направлении.

MS-DOS версии 5.0 предоставляет возможность  использования памяти расположенной  выше 1M.

В MS-DOS версии 6.0 расширены возможности  изпользования памяти расположенной  выше 1M, добавлена утилита оптимизации использования памяти Memmaker. Добавлено средство увеличения эффективного дискового пространства DoubleSpace. В комплект поставки включены утилиты проверки и оптимизации жесткого диска ScanDisk и Defrag.

После судебных разбирательств с компанией Stack по поводу авторского права на DoubleSpace, последний в версии MS DOS 6.22 заменен на DriveSpace. 

 

 

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


 

 

Macintosh или Mac —линейка персональных компьютеров, спроектированных, разработанных, производимых и продаваемых фирмой Apple. Работают под управлением операционной системы Mac OS. Своё название получили от сорта яблок «Макинтош».

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


 

 

Кроме того, Международная организация  по стандартизации (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.

История кодирования информации