КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
числа, символы, графика, звук).⇐ ПредыдущаяСтр 18 из 18 Важно подчеркнуть, что каждый новый вид информации, добавляемый к компьютерной обработке, исторически тем или иным способом сводился к числовому представлению Исходя из принципов устройства компьютера, можно утверждать, что любая информация хранится и обрабатывается в нем в двоичном виде. Этот же тезис можно обосновать и по-другому, сославшись на то, что все виды информации так или иначе преобразуются в числовую форму, а числа хранятся в двоичной системе.
Итак, согласно строгому определению математического словаря [2], "дискретность (от лат. discretus – разделенный, прерывистый) – прерывность; противопоставляется непрерывности. Напр., дискретное изменение к.-л. величины во времени – это изменение, происходящее через определенные промежутки времени (скачками); система целых (в противоположность системе действительных чисел) является дискретной". Непрерывная величина ассоциируется с графиком функции, а дискретная – с таблицей ее значений. При рассмотрении этих двух объектов разной природы делается вывод о том, что с уменьшением интервала дискретизации (или, что то же самое, с увеличением количества точек в таблице) различия между ними существенно уменьшаются. Последнее означает, что при таких условиях дискретизированная величина хорошо описывает исходную (непрерывную). Целые числа. Как мы уже знаем, этот тип информации является дискретным и преобразуется для хранения в компьютере довольно просто: достаточно перевести число в двоичную систему счисления. Некоторые особенности будет иметь кодирование целых отрицательных чисел, но мы их рассмотрим в вопросе, связанном с представлением числовой информации. Вещественные числа. В отличие от целых, вещественные числа являются непрерывными. Следствием из этого является возможность дальнейшего деления любого сколь угодно малого числа, что приводит, вообще говоря, к бесконечному числу разрядов в изображении числа (вспомните 1/3!). Для того, чтобы в ЭВМ как-то представить числа в виде конечного набора двоичных цифр, приходится ограничиваться определенной точностью и младшие разряды просто игнорировать. Символы. Это еще одна дискретная величина, поскольку компьютер оперирует с определенным ограниченным набором символов. Такой набор вполне можно назвать алфавитом машины, а в алфавите все символы имеют свои фиксированные позиции. Отсюда основная идея хранения символов в памяти ЭВМ состоит в замене каждого из них номером в алфавите, т.е. числом. Графика. Как известно каждому пользователю компьютера, любое графическое изображение состоит из отдельных точек, называемых пикселями. Отсюда становится понятным, что сохранить изображение фактически означает сохранить цвета его пикселей. Если принять конечное (ограниченное) число цветов, то информация немедленно становится дискретной и решение задачи сохранения графики становится похожей на только что рассмотренную задачу сохранения текста. Нужно каким-либо образом пронумеровать все цвета (создать своеобразный "алфавит цветов"), после чего достаточно просто сохранять номера цветов. В отличие от алфавита символов, который является стандартным, с цветами это не совсем так. Например, в фотографии летнего леса много оттенков зеленого цвета, а для кадра с облаками характерны белые и голубые тона. Отсюда следует, что набор используемых цветов (часто его называют палитрой) для этих изображений будет абсолютно разным. Поэтому некоторые графические форматы сохраняют палитру вместе с изображением, что позволяет существенно уменьшить количество цветов и, следовательно, размер файла. Хочется подчеркнуть еще один момент. Для того, чтобы естественное изображение (например, рисунок художника на холсте) с непрерывным распределением цветов стало доступным компьютеру узором пикселей, необходимо использовать какое-либо специальное устройство, которое способно такое преобразование осуществить. Всем, конечно, известны примеры таких устройств: речь идет о сканере или цифровой камере. Однако не все задумываются над тем, что все эти устройства производят процесс дискретизации графического изображения, т.е. аналого-цифровое преобразование. Как и для символов, помимо описанного выше "поточечного" (растрового) хранения изображения, существует еще и векторный метод. Для него сохраняется не полная матрица пикселей, а программа его рисования. Кодирование этой программы существенным образом зависит от программного обеспечения. По своим принципам оно гораздо ближе к кодированию программ, чем данных. Подчеркнем, что векторные изображения, как правило, создаются именно на компьютере, а задача векторизации естественного изображения очень сложна и дает не слишком хорошие результаты. Звук. Звуковая информация также является величиной непрерывной, и, следовательно, для ввода в ЭВМ нуждается в дискретизации. Причем дискретизация должна производится как по времени, так и по величине интенсивности звука. Первый процесс означает, что замеры интенсивности должны производится не непрерывно, а через определенные промежутки времени, а второй – что интенсивность звука, которая в природе может принимать какие угодно значения, должна быть "подтянута" ("округлена") к ближайшему из стандартного набора фиксированных значений. При такой процедуре мы снова получаем последовательность целых чисел, которые и сохраняются в памяти ЭВМ. Таким образом, и в случае звука информацию удается описать определенным образом сформированной последовательностью чисел, что автоматически решает проблему кодирования. Итак, рассмотрев представление различных видов информации в ЭВМ, мы можем сделать следующие выводы.
Беззнаковые целые числа представляются в машине наиболее просто. Для этого достаточно перевести требуемое число в двоичную форму и дополнить полученный результат слева нулями до стандартной разрядности. Например, восьмиразрядное число 14 будет иметь вид 0000 1110 Это же самое число в 16-разрядном представлении будет иметь слева еще 8 нулей. Целые числа со знаком. Для того, чтобы различать положительные и отрицательные числа, в двоичном представлении чисел выделяется знаковый разряд. По традиции для кодирования знака используется самый старший бит, причем нулевое значение в нем соответствует знаку "+", а единичное – минусу. Этот способ кодирования называется прямым кодом. Несмотря на свою простоту и наглядность, для представления целых чисел он не получил применения в ЭВМ, потому что действия над таким представления выполняется очень сложно. Для практического кодирования отрицательных чисел используется метод. В его основе лежит запись отрицательных чисел в виде 2N - |m|
· модуль числа перевести в двоичную форму; · проинвертировать каждый разряд получившегося кода, т.е. заменить единицы нулями, а нули – единицами (попутно заметим, что такой код называется обратным); · к полученному результату обычным образом прибавит единицу. Например, переведем число –8 в двоичный 8-разрядный код. Возьмем модуль числа и дополним его до необходимого числа разрядов нулями слева: 0000 1000
1111 0111
1111 1000 Для проверки правильности перевода можно сложить последнее число с исходным и убедиться в том, что результат будет нулевым (единицей переноса из старшего разряда, как обычно, пренебрегаем). Вещественные числа - содержащим дробную часть. Любое вещественнее число можно занимать в таком виде, где A = (±M) * Q ±P ,
Некоторое неудобство вносит тот факт, что представление числа с плавающей запятой не является единственным: 3*108 = 30*107 = 0,3*109 = 0,03*1010 = ... Поэтому договорились для выделения единственного варианта записи числа считать, что мантисса всегда меньше единицы, а ее первый разряд содержит отличную от нуля цифру – в нашем примере обоим требованиям удовлетворит только число 0,3*109. Описанное представление чисел называется нормализованным и является единственным. Любое число может быть легко нормализовано.
|