Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Операции над вещественными данными.
Для значений вещественных типов определены следующие операции. 1) Арифметические операции: а) одноместные + (сохранение знака); – (изменение знака); б) двухместные + (сложение); – (вычитание); * (умножение); / (деление). Все арифметические операции дают тип результата Real (при отсутствии сопроцессора), Extended (при наличии сопроцессора). 2) Операции сравнения: = (равно); < > (не равно); > = (больше или равно); > (больше); < = (меньше или равно); < (меньше). Операции сравнения дают тип результата Boolean. Операции сравнения на точное равенство и неравенство (=, < > ) над вещественными числами определены, но их лучше не использовать, т.к. для обработки вещественных чисел используется приближенная арифметика с ПТ. Встроенные функции, определенные над вещественными данными. Над данными вещественных типов определен ряд встроенных функций, основные из которых представляет таблица 5.9. Таблица 5.9 – Встроенные функции, определенные над вещественными данными
Вопрос 22. Представление вещественных чисел в памяти компьютера описывается стандартом IEEE754 Знак Порядок Мантисса
Single
Double
Extended
Любое действительное число можно записать в стандартном виде M × 10p, где 1 M < 10, p — целое. Например, 120100000 = 1, 201 × 108. Поскольку каждая позиция десятичного числа отличается от соседней на степень числа 10, умножение на 10 эквивалентно сдвигу десятичной запятой на одну позицию вправо. Аналогично деление на 10 сдвигает десятичную запятую на позицию влево. Поэтому приведенный выше пример можно продолжить: 120100000 = 1, 201 × 108 = 0, 1201 × 109 = 12, 01 × 107. Десятичная запятая " плавает" в числе и больше не помечает абсолютное место между целой и дробной частями. В приведенной выше записи M называют мантиссой числа, а p — его порядком. Для того чтобы сохранить максимальную точность, вычислительные машины почти всегда хранят мантиссу в нормализованном виде, что означает, что мантисса в данном случае есть число, лежащее между 1(10) и 2(10) (1 M < 2). Основание системы счисления здесь, как уже отмечалось выше, — число 2. Способ хранения мантиссы с плавающей точкой подразумевает, что двоичная запятая находится на фиксированном месте. Фактически подразумевается, что двоичная запятая следует после первой двоичной цифры, т.е. нормализация мантиссы делает единичным первый бит, помещая тем самым значение между единицей и двойкой. Место, отводимое для числа с плавающей точкой, делится на два поля. Одно поле содержит знак и значение мантиссы, а другое содержит знак и значение порядка.
Если мантисса больше 0, 5, но меньше 1, то число с такой мантиссой считается нормализованным. Вещественные типы в Delphi
Пятый вещественный тип – сложный тип Comp по существу является не вещественным типом с ПТ, а длинным целым типом двойной точности. В памяти машины он занимает формат 8 байт (64 бита) и обеспечивает диапазон представления чисел 63 63 18 18 19 − 2 ÷ 2 − 1 ≈ − 9, 2 ∗ 10 ÷ 9, 2 ∗ 10 ≈ ±10. 117 Тип Comp отнесен к вещественным типам по следующим соображениям. Использование вещественных типов Single, Double, Extended, Comp (т.е. всех типов, кроме Real) возможно только при наличии сопроцессора при включенной опции компилятора {$N+} (сопроцессор математических вычислений; глобальная опция) или при включенной опции {$E+} (полная программная эмуляция работы сопроцессора в случае его отсутствия; локальная опция). Последний режим очень медленный, поэтому его использование без необходимости нежелательно. По умолчанию установлены состояния {$N–} и {$E–}. Если сопроцессор отсутствует, все вычисления с вещественными числами выполняются программно. Поэтому из-за соображений скорости допускаются только действия над переменными типа Real. Представление числа Х = –0, 375 типа Single в памяти машины. 10 0112 X = − 0, 375 = − 0.. Представление числа Х в виде мантиссы и порядка: 0 X = − 0.011 ∗ 2. Таким образом, m = –0.011, p = 0. Порядок представляется в виде характеристики: 0 + 127 = 127. Представление числа Х в виде мантиссы и характеристики: 127 X = − 0.011 ∗ 2. После нормализации мантиссы: 126 X = − 0.11 ∗ 2. Таким образом, с учетом представления характеристики в двоичном коде, а так же скрытого бита мантиссы число –0, 375 типа Single в памяти машины будет представлено так, как иллюстрирует рисунок 5.10. 1 100...00 01111110 знак мантисса характеристика (1 разряд) (23 разряда) (8 разрядов) Формат (4 байта) Рисунок 5.10 – Внутреннее представление числа − 0, 375
Вещественные константы · Форма записи с фиксированной точкой(ФТ): 0.25 -2.48 +31.0 · Форма записи с плавающей точкой(ПТ): 14.3Е5 681Е-2 -5.16Е-3 14.3*105 681*10-2 -5.16*10-3
Популярное:
|
Последнее изменение этой страницы: 2017-03-08; Просмотров: 3012; Нарушение авторского права страницы