VCVTTSH2USI

Convertir con Truncation Low FP16 Valor a un entero sin firma

estableVMJITAOTinstruccion

Codificaciones

OpcodeInstruccionOp/En64 bitsCompat/LegacyDescripcion
EVEX.LLIG.F3.MAP5.W0 78 /rVCVTTSH2USI r32, xmm1/m16 {sae}AValidov1Convertir valor FP16 en el elemento bajo de OR AVX10.1 xmm1/m16 a un entero sin firma de doble palabra y almacenar el resultado en r32 utilizando truncation.
EVEX.LLIG.F3.MAP5.W1 78 /rVCVTTSH2USI r64, xmm1/m16 {sae}AValidoNo codificableConvertir valor FP16 en el elemento bajo de OR AVX10.1 xmm1/m16 en un entero de cuádpago no firmado y almacenar el resultado en r64 utilizando 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

  1. modrm.reg escriturabyte ModRM, campo reg (bits 5-3)
  2. modrm.rm lecturabyte ModRM, campo r/m (bits 2-0); con el byte SIB y el desplazamiento cuando el campo mod los pide

Tupla: Scalar

Coste medido

Cargando las mediciones de arch-data...

Descripción

Esta instrucción convierte el elemento FP16 bajo en el operando de origen a un entero sin firmar en el destino registro de proposito general.

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.

Operación

VCVTTSH2USI dest, src
IF 64-mode and OperandSize == 64:

    DEST.qword := Convert_fp16_to_unsigned_integer64_truncate(SRC.fp16[0])
ELSE:

    DEST.dword := Convert_fp16_to_unsigned_integer32_truncate(SRC.fp16[0])

Intel C/C++ compilador intrínseco

VCVTTSH2USI unsigned int _mm_cvtt_roundsh_u32 (__m128h a, int sae);
VCVTTSH2USI unsigned __int64 _mm_cvtt_roundsh_u64 (__m128h a, int sae);
VCVTTSH2USI unsigned int _mm_cvttsh_u32 (__m128h a);
VCVTTSH2USI unsigned __int64 _mm_cvttsh_u64 (__m128h a);

SIMD coma flotante Excepciones

Invalid, Precision.

Otras excepciones

Instrucciones codificadas por EVEX, ver Tabla 2-50, "Tipo E3NF Clase Condiciones de Excepción."

Fuentes