Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Sezione specifica Microsoft
La pseudoinstruction _emit definisce un byte nella posizione corrente nel segmento di testo corrente. L '_emit pseudoinstruction è simile alla direttiva DB di MASM.
Nel frammento seguente i byte 0x4A, 0x43 e 0x4B vengono posizionati nel codice:
#define randasm __asm _emit 0x4A __asm _emit 0x43 __asm _emit 0x4B
.
.
.
__asm {
randasm
}
Attenzione
Se _emit genera istruzioni che modificano i registri e l'applicazione viene compilata con le ottimizzazioni, il compilatore non può determinare i registri interessati. Ad esempio, se _emit genera un'istruzione che modifica il registro rax , il compilatore non sa che rax è stato modificato. Il compilatore può quindi basarsi su un presupposto non corretto in relazione al valore nel registro dopo l'esecuzione del codice assembler inline. Di conseguenza, l'applicazione potrebbe comportarsi in modo imprevedibile durante l'esecuzione.
Fine sezione specifica Microsoft