Поделиться через


Использование C или C++ в блоках __asm

Блок, относящийся только к системам Майкрософт

Поскольку инструкции встроенного кода на языке ассемблера можно комбинировать с операторами C или C++, они могут ссылаться на переменные C или C++ по имени и использовать множество других элементов этих языков.

Блок __asm может использовать следующие элементы языка.

  • Символы, включая метки и имена переменных и функций.

  • Константы, включая символьные константы и члены enum.

  • Макросы и директивы препроцессора.

  • Комментарии (/* */ и //).

  • Имена типов (если тип MASM допустим).

  • Имена typedef, обычно используемые с операторами, такими как PTR и TYPE, или для определения членов структуры или объединения.

В блоке __asm можно указать целочисленные константы с помощью нотации C или нотации основания системы счисления ассемблера (например, 0x100 и 100h эквивалентны). Это позволяет определить (с помощью #define) константу в C, а затем использовать ее в C и C++, а также частях сборки программы. Можно также указать константы в восьмеричной системе счисления, поместив перед ними 0. Например, 0777 указывает восьмеричную константу.

Дополнительные сведения

Завершение блока, относящегося только к системам Майкрософт

См. также

Ссылки

Встроенный ассемблер