Přehled inline Assembler
Konkrétní společnosti Microsoft
Inline assembler umožňuje vložit pokyny pro sestavení jazyk c a C++ programy zdroje bez nutnosti dodatečných kroků sestavení a propojení.Inline assembler je integrována v kompilátoru – nepotřebujete samostatné assembler například Assembler jazyk (Microsoft makro MASM).
Protože inline assembler nevyžaduje zvláštní shromáždění a propojení kroky, je pohodlnější než samostatné assembler.Sestavení kód můžete použít jakýkoli c nebo C++ proměnné nebo funkce, název, který je v oboru, takže je lze snadno integrovat s kódem c a C++ váš program.A protože sestavení kódu lze smíchat s c a C++ příkazy, provést úkoly, které jsou náročný nebo v c nebo C++ samostatně.
__Asm klíčové slovo vyvolá inline assembler a se může objevit, ať je právní prohlášení c nebo C++.Nemůže být použit samostatně.Musí následovat instrukce sestavení skupiny pokyny, které jsou uzavřeny ve složených závorkách, nebo přinejmenším, prázdný pár závorek.Pojem "__asm bloku" zde odkazuje na všechny instrukce nebo skupiny pokyny ve složených závorkách.
Následující kód je jednoduchý __asm blok, které jsou uzavřeny ve složených závorkách.(Kód je vlastní funkci Posloupnost prologu).
// asm_overview.cpp
// processor: x86
void __declspec(naked) main()
{
// Naked functions must provide their own prolog...
__asm {
push ebp
mov ebp, esp
sub esp, __LOCAL_SIZE
}
// ... and epilog
__asm {
pop ebp
ret
}
}
Alternativně můžete umístit __asm z každého sestavení instrukce:
__asm push ebp __asm mov ebp, esp __asm sub esp, __LOCAL_SIZE
Protože __asm klíčové slovo je oddělovač prohlášení, pokyny pro sestavení můžete také umístit na stejném řádku:
__asm push ebp
__asm mov ebp, esp
__asm sub esp, __LOCAL_SIZE
Konec konkrétní společnosti Microsoft