BLSR
Reset Lowest Set Bit
estableVMJITAOTinstruccion
Codificaciones
| Opcode | Instruccion | Op/En | 64 bits | Compat/Legacy | Descripcion |
|---|---|---|---|---|---|
VEX.LZ.0F38.W0 F3 /1 | BLSR r32, r/m32 | VM | Valido | Valido | Reiniciar el bit más bajo de r/m32, mantener todos los otros bits de r/m32 y escribir resultado a r32. |
VEX.LZ.0F38.W1 F3 /1 | BLSR r64, r/m64 | VM | Valido | No codificable | Reiniciar el bit más bajo de r/m64, mantener todos los otros bits de r/m64 y escribir resultado a r64. |
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.
VM
vex.vvvvescrituraprefijo VEX, campo vvvv (invertido)modrm.rmlecturabyte ModRM, campo r/m (bits 2-0); con el byte SIB y el desplazamiento cuando el campo mod los pide
Coste medido
Cargando las mediciones de arch-data...
Banderas nombradas
CFAcarreoPFParidadAFAcarreo auxiliarZFCeroSFSignoOFDesbordamiento
Descripción
Copia todos los bits del operando de origen al operando de destino y resetea (=0) la posición del bit en el operando de destino que corresponde al bit más bajo del operando de origen. Si el operando de origen es cero BLSR sets CF.
Esta instrucción no es compatible en modo real y modo virtual-8086. El tamaño de operando es siempre 32 bits si no en modo de 64 bits. En modo de 64 bits tamaño de operando 64 requiere VEX.W1. VEX.W1 es ignorado en modos no-64-bit. Un intento de ejecutar esta instrucción con VEX.L no igual a 0 causará #UD.
Operación
temp := (SRC-1) bitwiseAND ( SRC );
SF := temp[OperandSize -1];
ZF := (temp = 0);
IF SRC = 0
CF := 1;
ELSE
CF := 0;
FI
DEST := temp;Banderas afectadas
Las banderas ZF y SF se actualizan sobre la base del resultado. CF se establece si la fuente es cero. De la bandera se pone a cero. AF y PF banderas quedan indefinidas.
Intel C/C++ compilador intrínseco
BLSR unsigned __int32 _blsr_u32(unsigned __int32 src);
BLSR unsigned __int64 _blsr_u64(unsigned __int64 src);SIMD coma flotante Excepciones
None.
Otras excepciones
Ver Tabla 2-29, "Tipo 13 Condiciones de Excepción de Clase".