Compartir a través de


Usar símbolos de C o C++ en bloques __asm

Específicos de Microsoft

Un bloque __asm puede hacer referencia a cualquier símbolo de C o C++ en el ámbito donde aparece el bloque. (Los símbolos de C y C++ son nombres de variable, nombres de función y etiquetas; es decir, nombres que no sean constantes simbólicas ni miembros de enum. No puede llamar a las funciones de miembros de C++.)

Se aplican algunas restricciones al uso de los símbolos de C y C++:

  • Cada instrucción del lenguaje de ensamblado solo puede contener un símbolo de C o C++. Pueden aparecer varios símbolos en la misma instrucción de ensamblado solo con las expresiones LENGTH, TYPE y SIZE.

  • Las funciones a las que se hace referencia en un bloque __asm se deben declarar antes (mediante prototipo) en el programa. De lo contrario, el compilador no podrá distinguir los nombres de función y las etiquetas en el bloque __asm.

  • En un bloque __asm no puede haber ningún símbolo de C o C++ escrito igual que las palabras reservadas de MASM (independientemente de si es en mayúsculas o minúsculas). Las palabras reservadas de MASM incluyen nombres de instrucciones, como PUSH, y nombres de registro, como SI.

  • Las etiquetas de estructura y unión no se reconocen en los bloques __asm.

FIN de Específicos de Microsoft

Consulte también

Uso de C o C++ en bloques __asm