Usando símbolos de C ou C++ em blocos __asm
Específico da Microsoft
Um bloco de __asm pode fazer referência a qualquer símbolo de 2.0 C ou C++ no escopo do bloco é exibida. (Os símbolos de 2.0 C e C++ são nomes de variável, nomes de função, e rótulos; ou seja, nomes que não são constantes ou membros simbólicos de enum . Você não pode chamar funções de membro C++.)
Algumas restrições se aplicam ao uso de símbolos de 2.0 C e C++:
Cada instrução de linguagem assembly pode conter apenas um símbolo de 2.0 C ou C++. Vários símbolos podem aparecer na mesma instrução de assembly apenas com LENGTH, TIPO, e expressões de TAMANHO .
As funções referenciadas em um bloco de __asm devem ser declaradas (protótipo) anteriores no programa. Caso contrário, o compilador não é possível distinguir entre os nomes de função e rótulos no bloco de __asm .
Um bloco de __asm não poderá usar nenhuma símbolos de 2.0 C ou C++ com a mesma ortografia que palavras reservadas MASM (independentemente dos casos). MASM palavras reservadas incluir nomes de instrução como PUSH e nomes de registro como o SI.
As marcas da estrutura e de união não são reconhecidos em blocos de __asm .
FINALIZAR Específico da Microsoft