UD

Instrucción indefinida

estableVMJITAOTinstruccion

Codificaciones

OpcodeInstruccionOp/En64 bitsCompat/LegacyDescripcion
0F FF /rUD01 r32, r/m32RMValidoValidoRaise excepción de código de operación no válido.
0F B9 /rUD1 r32, r/m32RMValidoValidoRaise excepción de código de operación no válido.
0F 0BUD2ZOValidoValidoRaise excepción de código de operación no válido.
D6UDBZOValidoNo codificableRaise excepción de código de operación no válido.

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.

RM

  1. modrm.reg lecturabyte 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

Coste medido

Sin medir: no se ejecuta en procesadores de 64 bits.

Descripción

Genera una excepción de código de operación no válido. Esta instrucción se proporciona para la prueba de software para generar explícitamente una excepción de código de operación no válido. Los códigos de operación para esta instrucción están reservados para este propósito. Aparte de criar la excepción de código de operación no válido, esta instrucción no tiene efecto en el estado del procesador o la memoria. A pesar de que es la ejecución de la instrucción UD que causa la excepción de código de operación no válido, el puntero de instruccion salvado por la entrega de la excepción referencia la instrucción UD (y no la siguiente instrucción). La operación de esta instrucción es la misma en modos no-64-bit y modo 64-bit.

Operación

#UD (* Generates invalid opcode exception *);

Banderas afectadas

None.

Excepciones

Modo real
#UDEleve una excepción de código de operación no válido en todos los modos operativos. (UDB lo hace sólo en modo 64-bit.)
Modo protegido
#UDEleve una excepción de código de operación no válido en todos los modos operativos. (UDB lo hace sólo en modo 64-bit.)
Modo virtual-8086
#UDEleve una excepción de código de operación no válido en todos los modos operativos. (UDB lo hace sólo en modo 64-bit.)
Modo de compatibilidad
#UDEleve una excepción de código de operación no válido en todos los modos operativos. (UDB lo hace sólo en modo 64-bit.)
Modo de 64 bits
#UDEleve una excepción de código de operación no válido en todos los modos operativos. (UDB lo hace sólo en modo 64-bit.)

Fuentes