VCVTTSS2USI
Convertir Con Truncation valores en coma flotante de precisión simple escalares en
estableVMJITAOTinstruccion
Codificaciones
| Opcode | Instruccion | Op/En | 64 bits | Compat/Legacy | Descripcion |
|---|---|---|---|---|---|
EVEX.LLIG.F3.0F.W0 78 /r | VCVTTSS2USI r32, xmm1/m32{sae} | A | Valido | Valido | Convertir un valor en coma flotante de precisión simple OR AVX10.1 de xmm1/m32 a un entero sin firma de doble palabra en r32 usando truncation. |
EVEX.LLIG.F3.0F.W1 78 /r | VCVTTSS2USI r64, xmm1/m32{sae} | A | Valido | n.e.1 | Convertir un valor en coma flotante de precisión simple OR AVX10.1 de xmm1/m32 a un entero de cuádpago no firmado en r64 usando truncation. |
Codificacion de operandos
Cada modo es un valor de la columna Op/En de arriba. Dice en que campo de la instruccion codificada va cada operando, en el orden en que se escriben, y si la instruccion lo lee, lo escribe o ambas cosas.
A
modrm.regescriturabyte ModRM, campo reg (bits 5-3)modrm.rmlecturabyte ModRM, campo r/m (bits 2-0); con el byte SIB y el desplazamiento cuando el campo mod los pide
Tupla: Tuple1 Fixed
Coste medido
Cargando las mediciones de arch-data...
Descripción
Convierte con truncation un valor en coma flotante de precisión simple en el operando de origen (el segundo operando) a un entero sin firma de doble palabra (o unsigned quadword integer si tamaño de operando es 64 bits) en el operando de destino (el primer operando). El operando de origen puede ser un registro XMM o una ubicación de memoria. El operando de destino es un registro de proposito general. Cuando el operando de origen es un registro XMM, el valor en coma flotante de precisión simple está contenido en la palabra doble baja del registro.
Cuando una conversión es inexacta, se devuelve un valor truncado (redondo hacia cero).
Si un resultado convertido supera los límites de rango del entero de doble palabra firmado (en modos no-64-bit o modo 64-bit con REX.W/VEX.W/EVEX.W=0), la coma flotante excepción de operación no válida se genera, y si esta excepción está enmascarada, el valor entero FFFFFFFFH es devuelto.
Si un resultado convertido supera los límites de rango de integer de cuádpago firmado (en modo de 64 bits y REX.W/VEX.W/EVEX.W = 1), la coma flotante excepción de operación no válida se genera, y si esta excepción está enmascarada, el valor entero FFFFFF FFFFH es devuelto.
Versión EVEX.W1: promueve la instrucción para producir datos de 64 bits en modo de 64 bits.
Nota: EVEX.vvvv está reservado y debe ser 1111b, de lo contrario las instrucciones #UD.
Operación
VCVTTSS2USI (EVEX Encoded Version)
IF 64-bit Mode and OperandSize = 64
THEN
DEST[63:0] := Convert_Single_Precision_Floating_Point_To_UInteger_Truncate(SRC[31:0]);
ELSE
DEST[31:0] := Convert_Single_Precision_Floating_Point_To_UInteger_Truncate(SRC[31:0]);
FI;Intel C/C++ compilador intrínseco
VCVTTSS2USI unsigned int _mm_cvttss_u32( __m128 a);
VCVTTSS2USI unsigned int _mm_cvtt_roundss_u32( __m128 a, int sae);
VCVTTSS2USI unsigned __int64 _mm_cvttss_u64( __m128 a);
VCVTTSS2USI unsigned __int64 _mm_cvtt_roundss_u64( __m128 a, int sae);SIMD coma flotante Excepciones
Invalid, Precision.
Otras excepciones
Instrucciones codificadas por EVEX, ver Tabla 2-50, "Tipo E3NF Clase Condiciones de Excepción."