FCOS

Cosine

estableVMJITAOTinstruccion

Codificaciones

OpcodeInstruccionOp/En64 bitsCompat/LegacyDescripcion
D9 FFFCOSValidoValidoReemplazar ST(0) con su cosina aproximada.

Coste medido

Cargando las mediciones de arch-data...

Descripción

Computa el cosine aproximado del operando de origen en el registro ST(0) y almacena el resultado en ST(0). El operando de origen debe ser dado en radians y debe estar dentro del rango -263 a +263. La siguiente tabla muestra el

resultados obtenidos al tomar el cosine de varias clases de números.

Resultados FCOS

ST(0) SRCST(0) DEST
-*
-F-1 to +1
-0+1
+0+1
+F- 1 to + 1
+*
NanNan

Operación

IF |ST(0)| < 263
THEN

    C2 := 0;
    ST(0) := FCOS(ST(0)); // approximation of cosine
ELSE (* Source operand is out-of-range *)
    C2 := 1;
FI;


FPU Flags Affected

C1                  Set to 0 if stack underflow occurred.

                    Set if result was rounded up; cleared otherwise.

                    Undefined if C2 is 1.

C2                  Set to 1 if outside range (-263 < source operand < +263); otherwise, set to 0.

C0, C3              Undefined.

Excepciones coma flotante

#IS                 Stack underflow occurred.
#IA                 Source operand is an SNaN value, , or unsupported format.
#D                  Source is a denormal value.
#P                  Value cannot be represented exactly in destination format.

Excepciones

Modo protegido
#NMCR0.EM[bit 2] o CR0.TS[bit 3] = 1.
#MFSi hay una excepción x87 FPU pendiente.
#UDSi se utiliza el prefijo LOCK.
Modo real
Las mismas excepciones que en modo protegido.
Modo virtual-8086
Las mismas excepciones que en modo protegido.
Modo de compatibilidad
Las mismas excepciones que en modo protegido.
Modo de 64 bits
Las mismas excepciones que en modo protegido.

Fuentes