Pseudo-instruction de _emit
Spécifique à Microsoft
La pseudo-instruction de _emit définit un octet vers la position actuelle dans le segment de texte actuel.La pseudo-instruction de _emit ressemble à la directive de Modèle de base de données MASM.
Le fragment de code suivant définit les octets 0x4A, 0x43, et 0x4B dans le code :
#define randasm __asm _emit 0x4A __asm _emit 0x43 __asm _emit 0x4B
.
.
.
__asm {
randasm
}
Attention |
---|
Si _emit génère des instructions qui modifient les registres, et vous compiler l'application avec les optimisations, le compilateur ne peut pas déterminer les registres sont affectés.Par exemple, si _emit génère une instruction qui modifie le registre d' rax , le compilateur ne connaît pas qu' rax a changé.Le compilateur peut ensuite effectuer une hypothèse incorrecte sur la valeur dans le registre après le code assembleur inline exécute.Par conséquent, votre application peut présenter un comportement imprévisible lorsqu'il s'exécute. |
Spécifiques à Microsoft FIN