К вещественному типу относится подмножество вещественных чи-
сел, которые могут быть представлены в формате с плавающей точкой
с фиксированным числом цифр. Запись значения в формате с плаваю-
щей запятой обычно включает три значения - m, b и e - таким обра-
зом, что m x b^e=n, где b всегда равен 2, а m и e являются цело-
численными значениями в диапазоне вещественного типа. Эти
значения m и e далее определяют диапазон представления и точность
вещественного типа.
Имеется пять видов вещественных типов: вещественное (Real),
с одинарной точностью (Single), с двойной точностью (Double), с
повышенной точностью (Extended) и сложное (Comp). Действия над
типами с одинарной точностью, с двойной точностью и с повышенной
точностью и над сложным типом могут выполняться только при нали-
чии числового сопроцессора 8087 (который был описан ранее).
Вещественные типы различаются диапазоном и точностью связан-
ных с ними значений (см. Таблицу 4.2).
Диапазон представления
и десятичные цифры для вещественных типов Таблица 4.2
┌───────────────────────┬───────────────────────────┬───────────┐
│ Тип │ Диапазон │ Цифры │
├───────────────────────┼───────────────────────────┼───────────┤
│ вещественное │2.9x10^-39 .. 1.7x10^38 │от 11 до 12│
│ (Real) │ │ │
├───────────────────────┼───────────────────────────┼───────────┤
│ с одинарной точностью │1.5x10^-45 .. 3.4x10^38 │от 7 до 8 │
│ (Single) │ │ │
├───────────────────────┼───────────────────────────┼───────────┤
│ с двойной точностью │5.0x10^-324 .. 1.7x10^308 │от 15 до 16│
│ (Double) │ │ │
├───────────────────────┼───────────────────────────┼───────────┤
│ с повышенной точностью│1.9x10^-4951 .. 1.1x10^4932│от 19 до 20│
│ (Extended) │ │ │
├───────────────────────┼───────────────────────────┼───────────┤
│ сложный тип │ -2^63 + 1 .. 2^63 - 1 │ │
│ (Comp) │ │ │
└───────────────────────┴───────────────────────────┴───────────┘
Примечание: Сложный тип содержит только целочисленные
значения в диапазоне от -2^63+1 до 2^63-1, что приблизи-
тельно равно -9.2x10^18 и 9.2x10^18.
Borland Pascal поддерживает две модели генерации кода для
выполнения действий над вещественными типами: программную для чи-
сел с плавающей точкой и аппаратную для чисел с плавающей точкой.
Выбор соответствующей модели осуществляется с помощью директивы
компилятора $N.