Скачиваний:
57
Добавлен:
16.04.2013
Размер:
349.18 Кб
Скачать

5.4.4. Целочисленные неверные операции

Преобразование числа с плавающей точкой в целочисленное, являющееся ошибочным (в смысле IEEE) отмечает ошибку «Исключение: Неверная операция с плавающей точкой». ЕслиIEEEловушка «Неверная операция» запрещена, то результатом является наибольшее (по абсолютной величине) отрицательное целочисленное значение, даже для целочисленных операций без знака.

5.4.5. Определение целочисленных операций

Арифметические операции, работающие с операндами, обрабатывают код каждого операнда как значение, тогда как не арифметические операции выполняют манипулирование битами входных операндов без связи со значениями представляемыми кодами (если только не обнаружено значение NaTVal). Не арифметические инструкции не вызывают ошибки и ловушки «Исключения с плавающей точкой», но могут вызвать ошибку «Недоступный регистр с плавающей точкой».

5.4.6. Определение и распространение значений.

Сигнальные значения NaNимеют нули в старшем дробном бите мантиссы. ТихиеNaNимеют единицы в старшем дробном бите мантиссы. Это определение сигнальных и тихих значенийNaNлегко сохраняет «NaN’овость», при преобразованиях между различными точностями. При распространении значенийNaNв операциях, которые имеют более одного операнда со значениемNaN, результатNaNвыбирается из одного операнда со значениемNaNв следующем порядке приоритета, основанном на кодовых полях регистра: сначалаf4, затемf2 и наконецf3.

5.4.7. Операции, предписанные стандартом ieee, отложенные программно

Следующие операции, предписанные стандартом IEEE, будут реализованы программно:

  • Преобразование строки в число с плавающей точкой

  • Преобразование числа с плавающей точкой в строку

  • Деление (с помощью инструкций frcpaиfprcpa)

  • Вычисление квадратного корня (с помощью инструкций frsqrtaиfpsqrta)

  • Вычисление остатка (с помощью инструкций frcpaиfprcpa)

  • Преобразование значения с плавающей точкой в целочисленное значение

  • Корректная свертка порядка для переполнения и антипереполнения значения с одинарной, двойной или двойной расширенной точностью, как это рекомендовано стандартом IEEE

5.4.8. Дополнения сверх стандарта ieee

  • Объединенные операции умножения и сложения (fma, fms, fnma, fpma, fpms, fpnma), допускающие эффективные программные алгоритмы деления, вычисления остатка и квадратного корня.

  • Расширенный диапазон 17-битового порядка в формате регистра позволяет упростить выполнение многих основных цифровых алгоритмов, осторожным цифровым программистам

  • NaTVal– это естественное расширениеIEEEконцепции значенийNaN. Оно используется для спекулятивных вычислений.

  • Режим FTZ(стремления к нулю) – это дополнительный индустриальный стандарт.

  • Инструкции минимума и максимума позволяют эффективно выполнять внутренние функции Фортрана: MIN(),MAX(),AMIN(),AMAX(), а также идиомы языка С, такие какa<b?a:b.

  • Разрешены все смешанные операции точности. Поддерживается предложение стандарта IEEE, чтобы обработка операндов низкой точности позволяла получать результат высокой точности. Но, не поддерживается предложение стандартаIEEE, чтобы обработка операндов высокой точности не позволяла получать результат низкой точности. Если вычисления с операндами высокой точности привели к результату выходящему за диапазон точности приемника, то в полеISR.codeобеспечивается информация, позволяющая программе однозначно определить истинный результат. Также могут быть вычислены, корректный счетчик свертки и соответствующее количество смещений.

  • Программно поддерживается вещественный тип с четверной точностью в стиле IEEE.

---- Нет рис.5.4-5.9 и 5.12 ---