Представление данных в памяти персонального компьютера (числа, символы, графика, звук)

Информация - Педагогика

Другие материалы по предмету Педагогика

?ать картинку непрерывной. Аналогично издали современный жилой массив кажется нам сплошной стеной, но, подойдя к нему поближе, мы начинаем различать отдельные дома и даже пространство между ними.

 

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

 

Названная проблема всегда рассматривается при изложении принципов хранения звуковой информации, но обычно умалчивается во всех остальных случаях. Только в одном учебнике [1] удалось найти упоминание о дискретизации как об общей проблеме кодирования. Причем простое и доступное объяснение сопровождалось довольно удачным рисунком, аналог которого приводится ниже. Непрерывная величина ассоциируется с графиком функции, а дискретная с таблицей ее значений. При рассмотрении этих двух объектов разной природы делается вывод о том, что с уменьшением интервала дискретизации (или, что то же самое, с увеличением количества точек в таблице) различия между ними существенно уменьшаются. Последнее означает, что при таких условиях дискретизированная величина хорошо описывает исходную (непрерывную).

 

 

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

 

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

 

Вещественные числа. В отличие от целых, вещественные числа являются непрерывными. Следствием из этого является возможность дальнейшего деления любого сколь угодно малого числа, что приводит, вообще говоря, к бесконечному числу разрядов в изображении числа .Для того, чтобы в ЭВМ как-то представить числа в виде конечного набора двоичных цифр, приходится ограничиваться определенной точностью и младшие разряды просто игнорировать. Отсюда могут возникать некоторые принципиальные проблемы, например, при сравнении двух вещественных значений на равенство. Хорошо известен, например, следующий "счетный" эффект. Возьмем отрезок от 0 до 1 и разделим его на N равных частей, например, на 1000; тогда величина каждой части h=1/N. Выполним по отрезку ровно N шагов, вычисляя каждый раз значение аргумента по формуле X=X+h. По идее, последнее значение X=Nh должно равняться единице, однако на практике точного равенства, как правило, не будет, а значение X будет чуть-чуть меньше. Учтите на будущее этот парадокс и всячески старайтесь избегать сравнения вещественных чисел на равенство.

 

Символы. Это еще одна дискретная величина, поскольку компьютер оперирует с определенным ограниченным набором символов. Такой набор вполне можно назвать алфавитом машины, а в алфавите все символы имеют свои фиксированные позиции. Отсюда основная идея хранения символов в памяти ЭВМ состоит в замене каждого из них номером в алфавите, т.е. числом.

 

Помимо такого очевидного достоинства, как компактность хранения, замена символа его номером имеет и определенные недостатки. В частности, текст может быть правильно воспроизведен на другом компьютере только в том случае, если алфавиты обоих компьютеров совпадают. И если для латинских букв, на которые существует единый стандарт, это совсем не жесткое требование, то с русскими текстами дело обстоит заметно хуже. Достаточно сказать, что даже в пределах одного компьютера кодировка русских букв в операционных системах MS-DOS и Windows различна. Несколько утешает тот факт, что задача перекодировки текста является очень простой, и, если правильно указать исходную и требуемую кодировку, прекрасно решается автоматически.

 

При выводе символа компьютер по номеру определяет, как его надо изобразить на экране или на бумаге. Раньше для каждого символа хранилась его растровая картинка, т.е. некоторая матрица из черных и белых точек, окрашенных в соответствии с начертанием символа. Учитывая, что размеры всех символов были одинаковыми, ориентироваться в такой таблице (ее было принято по научному называть знакогенератором) компьютеру было нетрудно. Главным недостатком подобного метода вывода текста было то, что начертания букв и их размер оказывались жестко зафиксированными. На первых порах с этим мирились, но постоянное увеличение обработки текстов на компьютере потребовало новых принципов организации шрифтов. На современном этапе для каждого символа хранится не его начертание, а своеобразная программа, его порождающая (векторный способ создания изображений). Геометрические параметры этих "программ" могут легко изменяться, что обеспечивает быстрое и удобное масштабирование шрифтов.

 

Графика. Как известно каждому пользователю компьютера, любое графическое изображение состоит из отдельных точек, называемых пикселями. Отсюда становится понятным, что сохранить изображение фактически означает со?/p>