Verwenden von C oder C++ in __asm-Blöcken
Microsoft-spezifisch
Da inline Assemblyanweisungen mit C# oder C++-Anweisungen kombiniert werden können, können sie C- oder C++-Variablen über den Namen verweisen und viele andere Elemente dieser Sprachen verwenden.
Ein __asm-Block kann die folgenden Sprachelemente verwenden:
Symbole und Bezeichnungen, einschließlich Funktionsnamen und Variablen
Konstanten, einschließlich symbolische Konstanten und enum-Member
Präprozessordirektiven Makros und
Kommentare ( /* */ und // )
Typnamen (wo ein MASM-Typ zulässig wäre)
typedef Namen in der Regel mit Operatoren wie PTR und TYPE oder Struktur oder Gewerkschaftsmitglieder angeben
Innerhalb eines __asm-Blocks können Sie ganzzahlige Konstanten mit C-Schreibweise oder Assembler (Seite schreibweise 0x100 und 100h sind, z).Dadurch können Sie (mit #define) in C eine Konstante zu definieren und sie in C oder C++ und Teile des Programms Assembly zu verwenden.Sie können Konstanten in oktalem auch angeben, indem Sie ihnen mit 0 stehen.0777 gibt z. B. eine oktale Konstante an.
Worüber möchten Sie mehr erfahren?
Microsoft ENDES bestimmten