UD 2

UD 2

UD2

Page d'aide sur l'homonymie Pour les articles homonymes, voir UD et 2 (nombre).

En langage assembleur x86 , l'instruction UD2 est un mnémonique pour Undefined instruction (traduction : Instruction non définie).

Sommaire

Description

L'instruction UD2 produit un opcode invalide, c'est-à-dire, qu'elle mime exactement le même processus dans le cas où le processeur rencontrerait un opcode qu'il ne connaît pas. Cette instruction est à réserver à des fins de tests uniquement, afin de générer spécifiquement et uniquement une erreur d'opcode invalide. C'est le seul et unique but de cette instruction.

Drapeaux affectés

Aucun drapeau n'est affecté.

Exceptions générées

UD2 produit une exception de type UD (Undefined opcode, vecteur d'interruption numéro 6) et ce pour les trois modes d'opérations (Mode réel, Mode virtuel 8086, Mode protégé).

Exemple d'utilisation

Langages C ou C++

  • Microsoft Visual C++ (code non portable)
#include <windows.h>
#include <iostream>
 
bool __ud2(void)
{
	__try{
		__asm{UD2}
	}
    __except(GetExceptionCode() == EXCEPTION_ILLEGAL_INSTRUCTION ? 
             EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH)
	{
		return true;
	}
	return false;
 }
 
int main(void)
{
	if ( __ud2() )
		std::cout << "Exception d'opcode invalide rencontrée";
	else 
		std::cout << "Exception d'opcode invalide non rencontrée";
 
	return 0;
}

Articles connexes

  • Portail de l’informatique Portail de l’informatique
Ce document provient de « UD2 ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article UD 2 de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”