Автор работы: Пользователь скрыл имя, 20 Января 2013 в 22:17, реферат
Кодирование информации – это процесс формирования определенного представления информации. В более узком смысле под термином «кодирование» часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи ли обработки. Обычно каждый образ при кодировании (иногда говорят шифровке) представлен отдельным знаком.
Кодирование информации……………………………………………………………………………………..….. стр. 3
Способы кодирования информации………………………………………………………………….………. стр. 4
Кодирование числовой информации…………………………………………………………….………..… стр. 4
Кодирование символьной (текстовой) информации……..……………………………………….… стр. 8
Кодирование графической информации…………………………………………………………………… стр. 10
Кодирование звуковой информации…………………………………………………………………………. стр. 13
Отрицательные числа
Перейдем теперь к вопросу
представления отрицательных
xxxxxxxx + 00000001 = 00000000
Ясно, что на месте символов xxxxxxxx должно быть расположено число 11111111. Правильным результатом при этом, конечно, следовало бы считать 100000000, а не 00000000, но ведь мы имеем дело с типом byte и, так как результат обязан разместиться в байте, единица <<исчезает>>.
Итак, число - 1 должно кодироваться как 11111111. Дальнейшее уже совсем просто: для получения - 2 нужно - 1 уменьшить на единицу, что даст 11111110; число - 3 представляется как 11111101 и т.д.
Отрицательные числа всегда
имеют в своем двоичном представлении
единицу в самом старшем
Легко видеть, что при этом самым маленьким отрицательным числом, которое принадлежит типу byte, является число - 128 (двоичное представление 10000000), а самым большим - число 127 (представление 01111111). Все представимыe числа (а их 256) в данном случае могут быть получены как пересечение двух множеств: множества Z всех целых чисел и отрезка [ - 128; 127 ].
Интересным является следующее наблюдение: если число 01111111 увеличить на единицу, то получится 10000000, что означает следующее:
127 + 1 = - 128 !!!
Итак, множество элементов
типа byte можно представлять в виде свернутого
в кольцо отрезка
[ - 128; 127 ].
Шестнадцатеричная система счисления
Шестнадцатеричная система
счисления – это система
ак*16к+ак-1*16к-1+…+а1*161+а0*
где записью целого положительного числа является последовательность коэффициентов ак, ак-1, …, а1, а0 из представления (3).
Например:
31210=25610+4810+810=1*162+3*
Для того, чтобы представление числа в шестнадцатеричной системе было однозначным, значения коэффициентов при степенях числа 16 должны быть целыми числами от 0 до 15. Если значение коэффициента взять равным 16, то умножение какой-либо степени числа 16 на этот коэффициент дает следующую степень числа 16: 16*16к=16к+1; 26*16к=(16+9)*16к=16к+1+9*16к.
В качестве коэффициентов для записи чисел в шестнадцатеричной системе берутся шестнадцать символов: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.Они называются шестнадцатеричными цифрами. Введение шестнадцатеричных цифр A, B, C, D, E, F является необходимым, т.к. при использовании в качестве коэффициентов в записи шестнадцатеричных чисел 10, 11, …, 15 появляется неоднозначность в их прочтении.
Применение шестнадцатеричной
системы счисления в
Таблица кодирования чисел
десятичная |
шестнадцатеричная |
двоичная |
0 |
0 |
0000 |
1 |
1 |
0001 |
2 |
2 |
0010 |
3 |
3 |
0011 |
4 |
4 |
0100 |
5 |
5 |
0101 |
6 |
6 |
0110 |
7 |
7 |
0111 |
8 |
8 |
1000 |
9 |
9 |
1001 |
10 |
A |
1010 |
11 |
B |
1011 |
12 |
C |
1100 |
13 |
D |
1101 |
14 |
E |
1110 |
15 |
F |
1111 |
Кодирование символьной (текстовой) информации
Начиная с 60-х годов, компьютеры все больше стали использовать для обработки текстовой информации и в настоящее время большая часть ПК в мире занята обработкой именно текстовой информации.
В силу безусловного приоритета двоичной системы счисления при внутреннем представлении информации в компьютере кодирование «внешних» символов основывается на сопоставлении каждому из них определенной группы двоичных знаков. При этом из технических соображений и из соображений удобства кодирования-декодирования следует пользоваться равномерными кодами, т.е. двоичными группами равной длины.
Попробуем подсчитать наиболее короткую длину такой комбинации с точки зрения человека, заинтересованного в использовании лишь одного естественного алфавита – скажем, английского: 26 букв следует умножить на 2 (прописные и строчные) – итого 52; 10 цифр; будем считать, 10 знаков препинания; 10 разделительных знаков (три вида скобок, пробел и др.); знаки привычных математических действий, несколько специальных символов (типа #, $, & и др.) – итого ~100. Точный подсчет здесь не нужен, поскольку нам предстоит решить простейшую задачу: имея, скажем, равномерный код из групп по N двоичных знаков, сколько можно образовать разных кодовых комбинаций. Ответ очевиден К=2N. Итак, при N=6К=64 – явно мало, при N=7К=128 – вполне достаточно.
Однако, для кодирования двух естественных алфавитов (плюс все отмеченные выше знаки) и этого недостаточно. Минимально достаточное значение N в этом случае 8; имея 256 комбинаций двоичных символов, вполне можно решить указанную задачу. Поскольку 8 двоичных символов получили название 1 байта, то говорят о системе «байтового» кодирования.
Наиболее распространены две такие системы: EBCDIC (Extended Binary Coded Decimal Interchange Code) и ASCII (American Standard Information Interchange). Первая исторически тяготеет к «большим» машинам, вторая чаще используется на мини- и микро-ЭВМ (включая ПК). Познакомимся подробнее именно с ASCII, созданной в 1963г.
В своей первоначальной версии – это система семибитного кодирования. Она ограничивалась одним естественным алфавитом (английским), цифрами и набором различных символов, включая «символы пишущей машинки» (привычные знаки препинания, знаки математических действий и др.) и «управляющие символы». Примеры последних легко найти на клавиатуре компьютера: для микро-ЭВМ, например, DEL – знак удаления символа.
В следующей версии фирма IBM перешла на расширенную 8-битную кодировку. В ней первые 128 символов совпадают с исходными и имеют коды со старшим битом, равным нулю, а остальные коды отданы под буквы некоторых европейских языков, в основе которых лежит латиница, греческие буквы, математические символы (скажем, знак квадратного корня) и символы псевдографики. С помощью последних можно создавать таблицы, несложные схемы и др.
В СССР в этой области действовала система кодирования КОИ-7.
Другая распространенная кодировка носит название КОИ-8 (код обмена информацией, восьмизначный) – ее происхождение относится ко времени действий Совета Экономической Взаимопомощи государств Восточной Европы. Сегодня КОИ-8 имеет широкое распространение в компьютерных сетях на территории России и в российском секторе Интернета.
Международный стандарт, в
котором предусмотрена
В табл.1 приведена часто используемая в нашей стране модифицированная альтернативная кодировка. В левую часть входят исходные коды ASCII; в правую часть (расширение ASCII) вставлены буквы кириллицы взамен букв немецкого, французского алфавитов (не совпадающих по написанию с английскими), греческих букв, некоторых спецсимволов.
Таблица 1. Таблица кодов ASCII (расширенная)
Знакам алфавита ПЭВМ ставятся в соответствие шестнадцатеричные числа по правилу: первая – номер столбца, вторая – номер строки. Например, английская «А» имеет код 41, русская «и» - код 8А.
Одним из достоинств этой системы
кодировки русских букв является
их естественное упорядочение, т.е. номера
букв следуют друг за другом в том
же порядке, в каком сами буквы
стоят в русском алфавите. Это
очень существенно при решении
ряда задач обработки текстов, когда
требуется выполнить или
При переходе на 16-битную кодировку Unicode, допускающую 65536 кодовых комбинаций стало возможным кодирование всех символов расширенного алфавита.
Кодирование графической информации
Под графической информацией можно понимать рисунок, чертеж, фотографию, изображения на экране телевизора или в кинозале и т.д. Для обсуждения общих принципов кодирования графической информации в качестве конкретного, достаточно общего случая графического объекта выберем изображение на экране телевизора. Это изображение состоит из некоторого количества горизонтальных линий – строк. А каждая строка в свою очередь состоит из элементарных мельчайших единиц изображения – точек, которые принято называть пикселями (picsel – PICture’S Element – элемент картинки). Весь массив элементарных единиц изображения называют растром (лат. Rastrum – грабли). Степень четкости изображения зависит от количества строк на весь экран и количества точек в строке, которые представляют разрешающую способность экрана или просто разрешение. Чем больше строк и точек, тем четче и лучше изображение. Достаточно хорошим считается разрешение 640х480, то есть 640 точек на строку и 480 строчек на экран.
Создавать и хранить графические объекты в компьютере можно двумя способами – как растровое или как векторное изображение. Для каждого типа изображений используется свой способ кодирования.
Кодирование растровых изображений
Растровое изображение представляет собой совокупность точек (пикселей) разных цветов. Пиксель - минимальный участок изображения, цвет которого можно задать независимым образом.
В процессе кодирования изображения производится его пространственная дискретизация. Пространственную дискретизацию изображения можно сравнить с построением изображения из мозаики (большого количества маленьких разноцветных стекол). Изображение разбивается на отдельные маленькие фрагменты (точки), причем каждому фрагменту присваивается значение его цвета, то есть код цвета (красный, зеленый, синий и так далее).
Для черно-белого изображения информационный объем одной точки равен одному биту (либо черная, либо белая – либо 1, либо 0).
Для четырех цветного – 2 бита.
Для 8 цветов необходимо – 3 бита.
Для 16 цветов – 4 бита.
Для 256 цветов – 8 бит (1 байт).
Качество изображения зависит от количества точек (чем меньше размер точки и, соответственно, больше их количество, тем лучше качество) и количества используемых цветов (чем больше цветов, тем качественнее кодируется изображение).
Для представления цвета в виде числового кода используются две обратных друг другу цветовые модели: RGB или CMYK.
Модель RGB используется в телевизорах, мониторах, проекторах, сканерах, цифровых фотоаппаратах… Основные цвета в этой модели: красный (Red), зеленый (Green), синий (Blue). Цветовая модель CMYK используется в полиграфии при формировании изображений, предназначенных для печати на бумаге.
Цветные изображения могут иметь различную глубину цвета, которая задается количеством битов, используемых для кодирования цвета точки. Если кодировать цвет одной точки изображения тремя битами (по одному биту на каждый цвет RGB), то мы получим все восемь различных цветов.
R |
G |
B |
Цвет |
1 |
1 |
1 |
белый |
1 |
1 |
0 |
желтый |
1 |
0 |
1 |
пурпурный |
1 |
0 |
0 |
красный |
0 |
1 |
1 |
голубой |
0 |
1 |
0 |
зеленый |
0 |
0 |
1 |
синий |
0 |
0 |
0 |
черный |
На практике же, для сохранения информации о цвете каждой точки цветного изображения в модели RGB обычно отводится 3 байта (т.е. 24 бита) - по 1 байту (т.е. по 8 бит) под значение цвета каждой составляющей. Таким образом, каждая RGB-составляющая может принимать значение в диапазоне от 0 до 255 (всего 28=256 значений), а каждая точка изображения, при такой системе кодирования может быть окрашена в один из 16 777 216 цветов. Такой набор цветов принято называть True Color (правдивые цвета), потому что человеческий глаз все равно не в состоянии различить большего разнообразия.
Информация о работе Кодирование информации в вычислительных машинах