В настоящее время в ВТ преимущественно используются две формы пред-ставления чисел. Первая из них получила название представления чисел с фикси-рованной запятой (естественной формы), а вторая - представления чисел с плаваю- щей запятой (нормальной или полулогарифмической формы).
Любое число X в позиционной системе счисления с основанием k можно записать как
М называется мантиссой числа X, а Р – порядком того же числа. Если в ЭВМ каждому числу X однозначно соответствует мантисса М, а порядок фиксиро- ван для всех чисел, то такое число называется представленным в форме с фикси-рованной запятой. Порядок Р в этом случае устанавливается при подготовке задачи к решению, причем число в сущности является масштабным коэффициентом, на который должны быть умножены исходные данные для исключения переполнения разрядной сетки. Если же каждому числу однозначно соответствует пара Р и М, то такое представление называется формой с плавающей запятой (при этом положе- ние запятой в разрядной сетке ЭВМ физически никак не обозначается).
При представлении чисел в форме с фиксированной запятой положение за- пятой сохраняется неизменным для всех чисел, с которыми оперирует ЭВМ. С целью упрощения вычисления масштабных коэффициентов запятую обычно фиксируют пе-ред старшим разрядом мантиссы или после младшего.
В первом случае ЭВМ оперирует с числами, которые меньше единицы. Если число разрядов для записи мантисс составляет n, то минимальное (по абсолютной величине) число, которое может быть представлено в машине, равно k –n,а макси-мальное –1 - k –n. При таком представлении чисел удобно выполнять операцию ум- ножения, так как при этом не происходит переполнения разрядной сетки.
Во втором случае вмашине выполняются операции над целыми числами, абсолютныевеличины которых находятся впределах от 0 до kn – 1.Иногда запятуюсдвигают запределы разрядной сетки вправо на l разрядов,т. е. вводят l условныхразрядов. При этом абсолютная величина максимального числа в машинесоставляет kn+l - kl, аминимального– kl.
Разрядная сетка для представления чисел (формат данных) вЭВМ с фикси-рованной запятой состоит из двух частей: один разряд для представления знака, остальные разряды – для представления мантиссы М.
При представлении чисел в форме с плавающей запятой порядок Р может быть положительным или отрицательным целым числом. Мантисса же в большин- стве случаев является положительной или отрицательной правильной дробью, при- чем k - 1 ≤ M < 1. Если в ЭВМ для записи порядка используются т разрядов, а для записи мантиссы – п разрядов, то в этой машине может быть представлено следую- щее максимальное (по абсолютной величине) число:
В свою очередь, минимальное (по абсолютной величине) отличающееся от нуля число в такой машине равно
Кроме указанных выше разрядов для представления порядка и мантиссы в разрядной сетке ЭВМ с плавающей запятой есть также два разряда для представ- ления знаков порядка и мантиссы.
В ЭВМ, где используется представление чисел в форме с плавающей запятой, арифметические операции выполняются как над мантиссами чисел, так и над их порядками. Часто также необходимо выполнять операцию нормализации чисел, сущ-ность которой состоит в выполнении условия k - 1 ≤ М < 1. Поэтому арифметико- логические устройства ЭВМ с плавающей запятой являются более сложными и ме- нее быстродействующими, чем ЭВМ с фиксированной запятой. С другой стороны, в ЭВМ с фиксированной запятой из-за масштабирования возникают трудности при подготовке задач к решению. По этим причинам совокупность средств ВТ, в которых используется представление чисел в форме с фиксированной запятой, составляют в основном специализированные ЭВМ для управления технологическими процессами, обработки статистической информации и результатов измерений, решения задач с большим числом логических операций и т. д. Представление же чисел в форме с плавающей запятой используется в универсальных ЭВМ средней и большой произ-водительности для решения широкого круга инженерных и научных задач.
Так как для двух рассмотренных форм представления чисел присущи свои положительные качества и недостатки, то в современных универсальных больших ЭВМ используются обе формы. Например, при работе в режиме с фиксированной запятой ЭВМ Единой системы (ЕС) запятая располагается справа от младшего раз-ряда. Основной формат данных ЭВМ ЕС показан на рис. 3, а и имеет 32 двоичных разряда. На этом же рисунке указан вес каждого разряда. Отрицательные числа пред-ставляются здесь дополнительными кодами. Для повышения производительности и для лучшего использования запоминающих устройствв ЭВМ ЕС могут быть заданы числа длиной в 16разрядов. Кроме того, для вычислений с повышенной точностью(например, приумножении и делении) предусмотрена возможность использования 64-разрядных двоичных чисел. В режиме с фиксированной запятой ЭВМ ЕС могут производить не только целочисленные вычисления, но и выполнять операцив над командами.
Числа с плавающей запятой в ЭВМ ЕС могут быть двух форматов: коротко- го и длинного. Короткий формат (рис. 3, б) имеет 32 разряда, из которых 7 разря- дов предназначены для представления порядка, 24 – для представления мантиссы и 1 разряд – для знака мантиссы. Специального разряда для знака порядка в ЭВМ
Рис. 3
ЕС нет. Порядки здесь отсчитываются относительно числа 64, т. е. вводится сме- щенный порядок Рсм = 64 + P. Таким образом, отрицательные порядки Р будут пред-ставлены смещенными порядками Рсм, меньшими 64, а положительные порядки – смещенными порядками, большими 64. Введение смещенного порядка позволяет свести операции над порядками к арифметическим действиям над целыми положи-тельными числами. Следовательно, максимальный положительный порядок числа в машинах ЕС равен 1111111(2) – 1000000(2) = 0111111(2) = 63(10), а максимальный отри-цательный порядок 0000000(2) – 1000000(2) = – 64(10). Мантиссы отрицательных чисел при этом представляются прямым кодом. Длинный формат, используемый для вычислений с повышенной точностью, имеет 64 разряда. Для порядка отводится столько же разрядов, что и при коротком формате, а для мантиссы – 56 разрядов. Запятая находится слева от старшего разряда мантиссы.
Представление чисел с запятой, фиксированной перед старшим разрядом, использовано в микроЭВМ семейства «Электроника С5» (рис. 3, в). Здесь нулевой разряд отводится для знака, а в остальных 15 разрядах записана мантисса. В памяти этих микро-ЭВМ числа хранятся в дополнительном коде, а при вычислениях ис- пользуется модифицированный дополнительный код. Диапазон представления чисел при этом составляет - 1 ≤ X ≤1 – 2-15.
Кроме рассмотренных выше наиболее распространенных форм представления чисел в специализированных ЭВМ могут использоваться также формы, получаемые путем определенного функционального преобразования чисел. Одной из таких форм является логарифмическая, когда числа в ЭВМ представляются их логарифмами по некоторому основанию, т. е. вместо заданного числа X операции выполняются с другим числом , причем
= log a X = log a (kPM) = P log a k + log a M.
Если a = k, то = P + log k M.
Естественная формапредставлениячисел в этом случаеможет быть найденакак
X = kP ant log k M.
Логарифмическое представление дает возможность заменить операции умно-жения и деления чисел операциями сложения и вычитания их логарифмов.
Одним из вариантов логарифмической формы представления чисел является так называемая знакологарифмическая система счисления, в которой любое действи-тельное число X можно представить в виде
X = S (X) L (X),
где S (X)— знаковый разряд; L (X)— логарифмы абсолютной величины X, определяемые как
Коэффициент γопределяет диапазон изменения модуля X.
Другим примером формы представления чисел, отличающейся от наиболее распространенных, является дробно-линейная форма (с трансформирующейся запя-той).
В этом случае
При таком представлении как сами числа X ', так и результаты выполнения арифметических операций над ними всегда лежат в интервале (—1, 1). Однако точность вычислений в дробно-линейной форме зависит от | X | и от а. Точность вычислений максимальна, если | X | и а приближаются к единице. Если же | Х | приближается к нулю или к бесконечности, то точность вычислений убывает.
Известна также форма представления чисел с инверсной запятой, когда
а значения функций f (X) и g (X) определяются следующим образом:
Выполнение операций в этом случае сводится к операциям со значениямифункций f (X) и g (X).
В ВТ известны также отдельные случаи представления чисел в форме не- прерывных (цепных) дробей, бесконечных произведений, компонент сходящихся ря-дов и полиномов.