CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
_control87
_control87
Функция Манипулирует словом управления операций с плавающей
точкой.
Синтаксис #include<float.h>
unsigned int _control87(unsigned int newcw,
unsigned int mask);
Файл, содержащий float.h
прототип
Описание _control87 извлекает и изменяет слово управления
операциями с плавающей точкой.
Слово управления плавающей точки имеет тип unsigned
int, в котором бит за битом перечислены режимы
операций с плавающей точкой, а именно: режимы
точности, бесконечности и округления. Изменение
этих режимов позволяет маскировать исключительные
состояния операций с плавающей точкой.
_control87 сравнивает биты в mask с битами в newcw.
Если бит в mask равен 1, то соответствующий бит в
new содержит новое значение для такого же бита в
слове управления операций с плавающей точкой, а
_control87 устанавливает этот бит в слове
управления в новое значение.
Пример:
Исходное слово управления: 0100 0011 0110 0011
mask 1000 0001 0100 1111
newcw 1110 1001 0000 0101
Изменяющиеся биты 1xxx xxx1 x0xx 0101
Если mask равен 0, то _control87 возвращает слово
управления операциями с плавающей точкой без
изменения.
_control87 не изменяет бит Denormal, поскольку
Borland C++ использует ненормальную обработку
исключительных ситуаций.
Возвращаемое Биты в возвращаемом значении представляют собой
значение новое слово управления операциями с плавающей
точкой. Полное описание битов, возвращаемых
функцией _control87, приведено в в файле float.h.
Переносимость _control87 уникальна для DOS.
Смотрите также _clear87, _fpreset, signal, _status87.
Пример: control.c
