다음을 통해 공유


_status87, _statusfp, _statusfp2

가져오기 부동 상태 단어를 가리킵니다.

unsigned int _status87( void );
unsigned int _statusfp( void );
void _statusfp2(unsigned int *px86, unsigned int *pSSE2)

매개 변수

  • px86
    X87 부동 소수점 단위에 대 한 상태에이 주소가 포함 됩니다.

  • pSSE2
    이 주소는 부동 소수점 유닛 상태 단어의 s s e 2 포함 됩니다.

반환 값

에 대 한 _status87 및 _statusfp, 비트 값 반환 된 부동 소수점 상태를 나타냅니다.FLOAT을 참조 하십시오.H 포함 파일이 반환 되는 비트의 완전 한 정의 대 한 _status87.다양 한 수학 라이브러리 함수는 예상치 못한 결과가 8087/80287 상태 단어를 수정합니다.반환 값에서 _clear87 및 _status87 부동 소수점 상태 단어의 알려진된 상태 간 적은 부동 소수점 연산을 수행 하는 경우 신뢰할 수 있습니다._statusfp2반환 값이 없습니다.

설명

_status87 함수는 부동 소수점 상태 단어를 가져옵니다.상태 단어의 8087/80287/80387 상태와 부동 소수점 스택 오버플로 및 언더플로 8087/80287/80387 예외 처리기를 검색 하는 다른 조건을 조합입니다.마스크 되지 않은 예외 상태 단어의 내용을 반환 하기 전에 대해 검사 됩니다.이 보류 중인 예외의 호출자에 게 알리는 것을 의미 합니다.

_statusfp플랫폼 독립의 휴대용 버전의 _status87.동일 합니다 _status87 인텔 (x86) 플랫폼 및 MIPS 플랫폼에 의해 지원 됩니다.부동 소수점 코드 MIPS에 이식 되어 있는지 확인 하려면 사용 _statusfp.X 86만 대상으로 하는 경우 하나를 플랫폼으로 사용 _status87 또는 _statusfp.

_statusfp2x 87과는 SSE2 부동 소수점 프로세서를 가리키고 있는 칩에 대 한 (예: 펜티엄 IV 및 나중에)를 권장 합니다.에 대 한 _statusfp2, 부동 소수점 상태 word x 87 또는 SSE2 부동 소수점 프로세서를 모두 사용 하 여 주소를 입력 합니다.X87 및 SSE2 부동 소수점 프로세서를 지 원하는 칩을 사용 하는 경우 EM_AMBIGUOUS을 하면 1 설정 되어 _statusfp 또는 _controlfp 사용 하 고 x 87 또는 SSE2 부동 소수점 상태 단어를 참조할 수 있기 때문에 작업이 모호 합니다.

이러한 함수 사용 하 여 컴파일할 때 사용 되지 않습니다 /clr(공용 언어 런타임 컴파일) 또는 /clr:pure 공용 언어 런타임에서 부동 소수점 정밀도 지원 하기 때문입니다.

요구 사항

루틴

필수 헤더

_status87, _statusfp, _statusfp2

<float.h>

추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

// crt_status87.c
// This program creates various floating-point errors and
// then uses _status87 to display messages indicating these problems.
// Compile this program with optimizations disabled (/Od). Otherwise,
// the optimizer removes the code related to the unused floating-
// point values.
//

#include <stdio.h>
#include <float.h>

int main( void )
{
   double a = 1e-40, b;
   float  x, y;

   printf( "Status = %.4x - clear\n",_status87() );

   // Assignment into y is inexact & underflows: 
   y = a;
   printf( "Status = %.4x - inexact, underflow\n", _status87() );

   // y is denormal: 
   b = y;
   printf( "Status = %.4x - inexact underflow, denormal\n", 
           _status87() );

   // Clear user 8087: 
   _clear87();
}
  

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

부동 소수점 지원

_clear87, _clearfp

_control87, _controlfp, __control87_2