fcmpu(Floating Compare Unordered) 명령어

용도

두 부동 소수점 레지스터의 내용을 비교합니다.

구문

비트
0-5 63
6-8 BF
9 - 10 //
11-15 FRA
16-20 FRB
21-30 0
31 /
항목 설명
fcmpu BF, FRA, FRB

설명

Fcmpu 명령은 부동 소수점 레지스터(FPR) FRA의 64비트 배정밀도 부동 소수점 피연산자를 FPR FRB의 64비트 배정밀도 부동 소수점 피연산자와 비교합니다. 부동 소수점 상태 및 제어 레지스터(FPSCR)의 부동 소수점 조건 코드 필드(FPCC)는 피연산자 FRB에 대한 피연산자 FRA의 값을 반영하도록 설정됩니다. BF 값은 조건 레지스터의 어떤 필드가 4개의 FPCC 비트를 수신할지 결정합니다.

Fcmpu 명령어를 사용할 때는 다음 사항을 고려하세요:

  • 피연산자 중 하나가 조용한 NaN 또는 신호 NaN, 경우, 부동 소수점 조건 코드는 정렬되지 않은(FU) 것을 반영하도록 설정됩니다.
  • 피연산자 중 하나가 시그널링 NaN, 부동 소수점 상태 및 제어 레지스터의 부동 소수점 유효하지 않은 연산 예외 비트 VXSNAN이 설정됩니다.

Fcmpu 명령은 하나의 구문 형식을 가지며 항상 FPSCR의 FT, FG, FE, FU 및 VXSNAN 비트에 영향을 미칩니다.

매개변수

항목 설명
BF 조건 레지스터에서 4개의 FPCC 비트를 수신하는 필드를 지정합니다.
FRA 소스 부동 소수점 레지스터를 지정합니다.
FRB 소스 부동 소수점 레지스터를 지정합니다.

다음 코드는 FPR 5와 FPR 4의 내용을 비교한 것입니다:


# Assume FPR 5 holds 0xC053 4000 0000 0000.
# Assume FPR 4 holds 0x400C 0000 0000 0000.
# Assume CR = 0 and FPSCR = 0.
fcmpu 6,4,5
# CR now contains 0x0000 0040.
# FPSCR now contains 0x0000 4000.