다음을 통해 공유


_mm_frcz_sd

업데이트: 2011년 3월

Visual Studio 2010 SP1이 필요합니다.

Microsoft 전용

XOP XMM 명령 vfrczsd를 생성하여 두 번째 소스의 하위 배정밀도 부동 소수점 값의 소수 부분을 추출합니다.

__m128d _mm_frcz_sd (
   __m128d high,
   __m128d src
);

매개 변수

  • [in] high
    상위 쿼드워드에 64비트 부동 소수점 값을 포함하는 128비트 매개 변수입니다.

  • [in] src
    하위 쿼드워드에 64비트 부동 소수점 값을 포함하는 128비트 매개 변수입니다.

반환 값

2개의 64비트 부동 소수점 값을 포함하는 128비트 결과 r입니다.

r[0] := fractional_part_of(src[0]);

r[1] := high[1];

요구 사항

내장

아키텍처

_mm_frcz_sd

XOP

헤더 파일 <intrin.h>

설명

src의 하위 배정밀도 부동 소수점 값의 소수 부분이 추출되고 대상에 하위 값으로 저장됩니다. 이 결과 값의 부호는 소스 값의 부호입니다. high에서 상위 배정밀도 부동 소수점 값은 대상에 상위 값으로 저장됩니다.

vfrczsd 명령은 XOP 명령군의 일부입니다. 이 intrinsic을 사용하기 전에 프로세서가 이 명령을 지원하는지 확인해야 합니다. 이 명령에 대한 하드웨어 지원을 확인하려면 InfoType = 0x80000001을 사용하여 __cpuid intrinsic을 호출하고 CPUInfo[2] (ECX)의 비트 11을 확인합니다. 명령이 지원되는 경우 비트는 1이고, 그렇지 않으면 0입니다.

예제

#include <stdio.h>
#include <intrin.h>
main()
{
    __m128d a, b, d;
    int i;
    a.m128d_f64[0] = 1.125;
    a.m128d_f64[1] = -17.875;
    b.m128d_f64[0] = 0.;
    b.m128d_f64[1] = 1.;
    d = _mm_frcz_sd(b, a);
    printf(" %.3lf %.3lf\n", d.m128d_f64[0], d.m128d_f64[1]);
}
  

참고 항목

참조

__cpuid, __cpuidex

기타 리소스

_mm256_frcz_pd

_mm_frcz_ss

Visual Studio 2010 SP1용으로 추가된 XOP 내장 함수

변경 기록

날짜

변경 내용

이유

2011년 3월

이 내용이 추가되었습니다.

SP1 기능 변경