Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
нформатика 2011 - Тема 2 Кодирование информации в компьютере 9
Байт
Единицы измерения количества информации
Внутреннее представление в компьютере информации любого вида является двоичным.
Бит - минимальная единица количества информации, равна одному двоичному разряду.
Смысловое значение бита можно представить как:
- выбор ответа «да» или «нет» на поставленный вопрос;
- «есть сигнал/нет сигнала»;
- истина / ложь.
Одним битом можно закодировать два объекта.
Бит как единица информации слишком мала, поэтому постоянно используется другая более распространенная единица количества информации, производная от бита байт.
Байт минимальная единица чтения/записи памяти компьютера, равная 8 битам:
1 байт = 8 бит.
При этом биты нумеруются справа налево, начиная с 0-го разряда.
Одним байтом можно закодировать 256 объектов (28 = 256), при этом каждому из 256 объектов будет соответствовать одно из 256 8-значных двоичных чисел.
1 килобайт = 1 Кб = 1 К = 1024 байта.
1 мегабайт = 1 Мб = 1 М = 1024 Кб.
1 гигабайт = 1 Гб = 1 Г = 1024 Мб.
1 терабайт = 1 Тб = 1 Т = 1024 Гб.
Представление различных видов информации в компьютере
Виды информации, обрабатываемые в компьютере:
- числовая;
- текстовая,
- графическая,
- звуковая.
Несмотря на исходную форму, вся информация в компьютере представляется в числовой форме.
Существует несколько вариантов представления чисел в ПК. Числа могут быть целые и дробные, положительные и отрицательные.
Целые положительные числа от 0 до 255 можно представить непосредственно в двоичной системе счисления, при этом они будут занимать один байт в памяти компьютера.
Число |
Двоичный код |
0 |
0000 0000 |
1 |
0000 0001 |
2 |
0000 0010 |
3 |
0000 0011 |
… |
… |
255 |
1111 1111 |
Целые отрицательные числа представлены особым образом: знак отрицательного числа кодируется обычно старшим битом, нуль интерпретируется как плюс, единица как минус. Поскольку один бит будет занят, то одним байтом могут быть закодированы целые числа в интервале от -127 до +127. Такой способ представления целых чисел называется прямым кодом.
Также существует способ кодирования отрицательных целых чисел в обратном коде. В этом случае положительные числа совпадают с положительными числами в прямом коде, а отрицательные получаются в результате вычитания из двоичного числа 1 0000 0000 соответствующего положительного числа, например, число -7 получит код 1111 1000. Целые числа больших диапазонов представляются в двухбайтовых и четырехбайтовых адресах памяти.
В вычислительных машинах применяются две формы представления дробных двоичных чисел:
в естественной форме или форме с фиксированной запятой (точкой);
в нормальной форме или форме с плавающей запятой (точкой).
С фиксированной запятой все числа изображаются в виде последовательности цифр с постоянным для всех чисел положением запятой, отделяющей целую часть от дробной.
Пример. Пусть число представлено в виде m:n, где m - фиксированное число разрядов в целой части числа (до запятой), n - фиксированное число разрядов в дробной части числа (после запятой).
Например, m = 3, n = 6, тогда числа, записанные в такую разрядную сетку, имеют вид:
- 213, 560000; + 004, 021025; - 000, 007345.
Однако такое представление используется в основном для целых чисел, поскольку при выходе результата какой-либо операции за границы такой разрядной сетки дальнейшие вычисления теряют смысл.
С плавающей запятой все числа изображаются в виде двух групп цифр. Первая группа цифр называется мантиссой, вторая - порядком. Причем абсолютная величина мантиссы должна быть меньше 1, а порядок - целым числом.
В общем виде число в форме с плавающей запятой может быть представлено в виде:
N = MP r
где M - мантисса числа ( M < 1);
r - порядок числа (r - целое число);
P - основание системы счисления.
Пример. Числа из предыдущего примера имеют вид:
- 0, 21356 10 3; + 0, 402102510 1; - 0, 73450010 -2.
Нормальная форма представления имеет огромный диапазон отображения чисел и является основой в современных ПК.
Кроме двоичной системы счисления также широкое распространение получила двоично-десятичная система счисления. В этой системе все десятичные цифры отдельно кодируются четырьмя двоичными цифрами и в таком виде последовательно записываются друг за другом.
Полем называют последовательность нескольких бит или байтов.
В ПК могут обрабатываться поля постоянной и переменной длины.
Поля постоянной длины:
1 байт;
слово - 2 байта;
двойное слово - 4 байта;
расширенное слово - 8 байт;
слово длиной 10 байт.
Поля переменной длины могут иметь любой размер от 0 до 256 байт, но обязательно кратный целому числу байтов.
Пример.
1) Двойное слово - 4 байта = 32 бита
1 бит |
8 бит |
23 бита |
S |
порядок |
мантисса |
2) Расширенное слово - 8 байт = 64 бита
1 бит |
11 бит |
52 бита |
S |
порядок |
мантисса |
3) Слово длиной 10 байт - 80 бит
1 бит |
15 бит |
64 бита |
S |
Порядок |
мантисса |
При этом S- поле знака:
если S = 0, число 0
если S = 1, число < 0.
Двоично-десятичное кодирование чисел
Двоично-кодированные десятичные числа могут быть представлены в ПК полями переменной длины в так называемых упакованном и распакованном форматах.
В упакованном формате для каждой десятичной цифры отводится по 4 двоичных разряда (полбайта), при этом знак числа кодируется в крайнем правом полубайте числа:
1100 знак «+»,
1101 знак «-».
Структура поля упакованного формата:
Цифра |
Цифра |
Цифра |
Цифра |
. . . |
Цифра |
Знак |
Упакованный формат используется обычно при выполнении операций сложения и вычитания двоично-десятичных чисел.
В распакованном формате для каждой десятичной цифры отводится по целому байту, при этом старшие полубайты каждого байта (кроме самого младшего) в ПК заполняются кодом 0011 (в соответствии с ASCII- кодом), а в младших (левых полубайтах) обычным образом кодируются десятичные цифры. Старший полубайт самого младшего (правого) байта используется для кодирования знака числа.
Распакованный формат используется обычно при выполнении операций умножения и деления двоично-десятичных чисел.
Распакованный формат представления двоично-десятичных чисел является следствием использования в ПК кода ASCII (American Standard Code for Information Interchange - Американский стандартный код для обмена информацией). Основной стандарт для кодирования символов использует шестнадцатеричные коды 00 - 7F, расширение стандарта - 80 FF. Основной стандарт является международным и используется для кодирования управляющих символов, цифр и букв латинского алфавита; в расширении стандарта кодируются символы псевдографики и буквы национального алфавита.
Таким образом, можно составить обобщенную таблицу кодировки десятичных чисел в различных системах кодирования.
10 с/с |
2 с/с |
8 с/с |
16 с/с |
2/10 с/с |
ASCII |
||||
|
00000000 |
0 |
0 |
0000 |
0011 |
0000 |
|||
|
00000001 |
|
|
0001 |
0011 |
0001 |
|||
|
00000010 |
|
|
0010 |
0011 |
0010 |
|||
|
00000011 |
|
|
0011 |
0011 |
0011 |
|||
|
00000100 |
|
|
0100 |
0011 |
0100 |
|||
|
00000101 |
|
|
0101 |
0011 |
0101 |
|||
|
00000110 |
|
|
0110 |
0011 |
0110 |
|||
|
00000111 |
|
|
0111 |
0011 |
0111 |
|||
|
00001000 |
10 |
8 |
1000 |
0011 |
1000 |
|||
|
00001001 |
11 |
9 |
1001 |
0011 |
1001 |
|||
|
00001010 |
12 |
A |
0001 |
0000 |
0011 |
0001 |
0011 |
0000 |
|
00001011 |
13 |
B |
0001 |
0001 |
0011 |
0001 |
0011 |
0001 |
|
00001100 |
14 |
C |
0001 |
0010 |
0011 |
0001 |
0011 |
0010 |
|
00001101 |
15 |
D |
0001 |
0011 |
0011 |
0001 |
0011 |
0011 |
|
00001110 |
16 |
E |
0001 |
0100 |
0011 |
0001 |
0011 |
0100 |
|
00001111 |
17 |
F |
0001 |
0101 |
0011 |
0001 |
0011 |
0101 |
II. Кодирование текстовых и символьных данных
В двоичной системе счисления кодирование символов основывается на сопоставлении каждому из них определенной группы двоичных знаков. Двоичное кодирование символьных данных производится заданием кодовых таблиц, в которых каждому символу ставится в соответствие одно- или двухбайтовый код. Восьми двоичных разрядов достаточно для кодирования 256 различных символов. Этого количества достаточно, чтобы выразить все символы английского и русского алфавита, а также знаки препинания, символы основных арифметических операций и некоторые специальные символы.
Наиболее популярная таблица ASCII-кодов разработана в 1981 году.
Коды с 0 до 127 составляют базовую (основную) таблицу, коды со 128 по 255 расширенную (дополнительную) таблицу. Дополнительная таблица отдана национальным алфавитам и символам псевдографики.
Символы с 0 до 31 относятся к служебным кодам. Если эти коды используются в символьном тексте программы, они считаются пробелами. При использовании в операциях ввода-вывода они имеют самостоятельное значение.
Аналогичные системы кодирования текстовых данных были разработаны и в других странах. Так, в СССР действовала система кодирования КОИ-8 (восьмизначный код обмена информацией). Компанией Microsoft была введена кодировка символов русского языка, известная как кодировка Windows-1251.
Во многих азиатских странах 256 кодов не хватило. В 1991 году производители программных продуктов (Microsoft, IBM, Apple) выработали единый стандарт Unicode 3.0. Этот код построен по 31-битной схеме. Все текстовые документы в этой кодировке вдвое длиннее, зато она содержит буквы латинского и многих национальных алфавитов, спецсимволы и т. п.
III. Кодирование графических данных
Различают три вида компьютерной графики: растровую, векторную и фрактальную. Они отличаются принципами формирования изображения при отображении на экране монитора или при печати на бумаге.
Если графические объекты формируются в виде множества точек (пикселей) разных цветов и разных яркостей, то это называется растровой графикой. В растровой графике общепринятым на сегодняшний день считается представление черно-белых иллюстраций в виде комбинации точек с 256 градациями серого цвета. Эти мельчайшие точки образуют характерный узор, называемый растром. Точно так же изображают информацию периферийные устройства печати. Основным элементом растрового изображения является точка. Если изображение экранное, то эта точка называется пикселем. В зависимости от того, на какое графическое разрешение экрана настроена операционная система компьютера, на экране могут размещаться изображения 640x480, 800x600, 1024x768 и более пикселей. При кодировании растровых изображений в памяти компьютера должна храниться информация о каждом пикселе. С размером изображения непосредственно связано его разрешение. Этот параметр измеряется в dpi (dots per inch точек на дюйм).
У растровых изображений два основных недостатка. Во-первых, очень большие объемы данных. Для активных работ с большеразмерными иллюстрациями типа журнальной полосы требуются компьютеры с большими размерами оперативной. Во-вторых, растровые изображения невозможно значительно увеличить без серьезных искажений. Эффект искажения при увеличении точек растра называется пикселизацией.
Расчет количества памяти, выделяемого под растровое изображение размером X на Y пикселей, производят по формуле:
Память (в битах) = X*Y*n,
где n количество бит на 1 пиксель (глубина цвета).
Общее количество цветов K в этом случае вычисляют по формуле:
K=2n
В отличие от растровой в векторной графике изображение представляет собой совокупность простых элементов (графических примитивов): прямых линий, дуг, окружностей, эллипсов, прямоугольников и т. п. Положение и форма графических примитивов задаются в системе графических координат, связанных с экраном. В векторной графике объём памяти, занимаемой, какой-либо фигурой, не зависит от ее размеров, а зависит от количества параметров, по которым эта фигура будет строиться. Перед выводом на экран каждого объекта программа векторной графики производит вычисление координат экранных точек в изображении объекта.
Векторная графика лишена недостатков растровой, но в ней сложно создавать художественные иллюстрации, поэтому чаще всего её используют для чертёжных и проектно-конструкторских работ.
Фрактальная графика, как и векторная, вычисляемая, но отличается от неё тем, что никакие объекты в памяти компьютера не хранятся. Изображение строится по уравнениям, поэтому ничего, кроме формулы, хранить не надо. Изменение коэффициентов в уравнении позволяет получить совершенно другую картину.
Для кодирования цветных графических изображений применяется принцип декомпозиции разложение произвольного цвета на основные составляющие. Существует множество различных типов цветовых моделей, но в компьютерной графике, как правило, применяется не более, трёх. Эти модели известны под названиями: RGB, CMYК и HSB:
Создавать и обрабатывать цветные изображения принято в модели RGB. При печати рисунка RGB на цветном принтере драйвер принтера преобразует рисунок в цветовую модель CMYK.
В случае, когда не требуется очень высокое качество отображения цвета, применяется режим High Color, который кодирует одну точку растра двумя байтами (16 разрядов дают 216 цветов).
Режим, который при кодировании одной точки растра использует один байт, называется индексным, в нём различаются 256 цветов. Этого недостаточно, чтобы передать весь диапазон цветов. Код каждой точки при этом выражает собственно не цвет, а некоторый номер цвета из таблицы цветов, называемой палитрой. Палитра должна прикладываться к файлам с графическими данными и используется при воспроизведении изображения.
IV. Кодирование звуковой информации
Методы работы со звуковой информацией пришли в вычислительную технику наиболее поздно. В итоге они далеки от стандартизации. Отдельные компании разработали свои корпоративные стандарты, однако можно выделить два основных подхода:
При оцифровке звукового сигнала (моно) расчет количества памяти, выделяемого под звук длительностью t секунд и частотой дискретизации v, производят по формуле:
Память (в битах) = t*v*n,
где n глубина звука.
Общее количество уровней звука K в этом случае вычисляют по формуле:
K=2n.
При оцифровке звукового сигнала (стерео) расчет количества памяти, выделяемого под звук длительностью t секунд и частотой дискретизации v, производят по формуле:
Память (в битах) = 2*t*v*n.