Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Specyficzne dla firmy Microsoft
Wbudowany asembler umożliwia osadzanie instrukcji języka zestawów bezpośrednio w programach źródłowych języka C bez dodatkowych kroków zestawów i linków. Wbudowany asembler jest wbudowany w kompilator — nie potrzebujesz oddzielnego asemblera, takiego jak Microsoft Macro Assembler (MASM).
Ponieważ asembler wbudowany nie wymaga oddzielnych kroków zestawów i łączy, jest wygodniejszy niż oddzielny asemblera. Wbudowany kod zestawu może używać dowolnej zmiennej języka C lub nazwy funkcji, która jest w zakresie, więc łatwo ją zintegrować z kodem C programu. Ponieważ kod zestawu może być mieszany z instrukcjami języka C, może wykonywać zadania, które są kłopotliwe lub niemożliwe w samym języku C.
Słowo __asm
kluczowe wywołuje asemblera wbudowanego i może pojawić się wszędzie tam, gdzie instrukcja C jest legalna. Nie może się pojawić samodzielnie. Należy wykonać instrukcję zestawu, grupę instrukcji ujętych w nawiasy klamrowe lub co najmniej pustą parę nawiasów klamrowych. Termin "__asm
blok" w tym miejscu odnosi się do dowolnej instrukcji lub grupy instrukcji, niezależnie od tego, czy w nawiasach klamrowych.
Poniższy kod jest prostym __asm
blokiem ujętym w nawiasy klamrowe. (Kod jest niestandardową sekwencją prologu funkcji).
__asm
{
push ebp
mov ebp, esp
sub esp, __LOCAL_SIZE
}
Alternatywnie można umieścić __asm
przed każdą instrukcją zestawu:
__asm push ebp
__asm mov ebp, esp
__asm sub esp, __LOCAL_SIZE
__asm
Ponieważ słowo kluczowe jest separatorem instrukcji instrukcji, można również umieścić instrukcje zestawu w tym samym wierszu:
__asm push ebp __asm mov ebp, esp __asm sub esp, __LOCAL_SIZE
END Microsoft Specific