Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПТЦА-1-2004(Комп.логика).doc
Скачиваний:
257
Добавлен:
07.02.2016
Размер:
7.96 Mб
Скачать

5 Форматы представления чисел в компьютере

Все разнообразие записи чисел разбивают на естественные и нормализованные (нормальные) формы.

При естественной форме, число записывают в естественном (натуральном) виде, например 125 - целое число, 0,125 - правильная дробь, 125,125 - неправильная дробь. При нормализованной записи, одно и то же число может принимать различный вид, и его форма зависит от принятых правил (ограничений) действующих при записи. Например, 12500 может быть записано 12,5 *103 =0,125*105= 125000*10-1 и т.д.

Такое разнообразие форм представления чисел является причиной усложнения устройств и алгоритмов функционирования цифровых автоматов вычислителей.

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

5.1 Представления чисел с фиксированной запятой

Автоматное изображение числа - представление числа N в разрядной сетке цифрового автомата, в заданном формате и правилами отображения.

При представлении числа в форме с фиксированной запятой (точкой), весь формат n-разрядной сетки разбивается на три части:

- один (или два) разряд для представления знака числа `0 (00) - плюс, 1 (11) - минус;

- следующие k разрядов определяют для размещения целой части числа;

- следующие n-(k+2) разрядов определяют для размещения дробной части числа.

На рисунке 5.1 представлен формат числа с фиксированной запятой для 16-ти разрядной сетки.

Положение запятой в разрядной сетке автомата строго фиксировано схемой или программой. Обозначим машинное изображение числа N через Nm, тогда число Nm равно

,

где Кф - масштабный коэффициент принятого формата, величина которого зависит от числа разрядов целой части, т.е. для рисунка 5. 1 KФ,=2k = 26.

Пример: записать число N= +11,00111000111 в формате машины с КФ=26. Nm= N*2-6. Nm= 0.000011001110001[последние разряды 11 - потеряны] и, наоборот, число N определяется как N = Nm*KФ =000011,001110001. Знак `+` для положительного числа не записывается.

5.2 Представление чисел в формате с плавающей запятой

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

где

N - машинное нормализованное число; m - мантисса числа;

p - порядок (характеристика) числа.

Такое представление, в общем случае, не является однозначным. Поэтому, для нормализованного числа вводят, как правило, ограничение. Наиболее удобным и распространенным является требование вида

5.1, где q - основание системы.

Правило. Нормализованной формой представления чисел является форма числа, для которой справедливо условие 5.1.

В этом случае абсолютное значение мантиссы может быть в пределах от 0,1*q-1 до ( 0,1*q-1+0,1*q-2+…+0,1*q-n), т.е. до 1, если n стремится к бесконечности, где п - количество разрядов записи мантиссы (без знака).

Формат машинного отображения чисел с плавающей запятой представлен на рисунке 5.2 для 16-ти разрядной сетки.

Положение запятой не постоянно и зависит от записанного в разряды «Порядка» числа. Такая форма представления числа в компьютере называется форматом с плавающей запятой (точкой).

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

Итак, прежде чем записать число в цифровой автомат с его разрядной сеткой, это число нормализуют, т.е. приводят к виду, когда в старшем разряде мантиссы стоит 1. Все остальные формы называют ненормализованными.

Порядок - это показатель степени, на который нужно умножить или разделить (для отрицательного знака порядка) мантиссу для получения целой части числа.

При нормализации, число сдвигают вправо (если есть целая часть числа) или влево (до установления единицы после знака числа). При сдвиге вправо порядок (т.е. степень основания) увеличивается с каждым сдвигом на +1. При сдвиге влево порядок уменьшается каждый раз на -1.

Примеры. Записать двоичное число+0011101,011 в нормальной форме.

+0011101,011 = 0,11101011*25 = 00.111010110.00.101

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

Поскольку основание 2(10) = 010(2) всегда постоянное, то его запись в характеристике числа опускается.