Skip to main content

Co to jest montaż wbudowany?

Zespół inline mdash;nazywany także językiem asemblera lub asembler i mdash;to blok kodu języka asemblera, który jest wstawiany bezpośrednio do funkcji i kodu źródłowego dla innego języka.Umożliwia to programistę wstawienia bloku czystego języka asemblera do programu, w którym reszta programu używa języka nie do montażu.Zdolność jest obsługiwana w niektórych językach mdash;takie jak C, C ++ i Pascal Mdash;ale jest cechą określonego kompilatora używanego i niekoniecznie jest częścią standardu językowego.W wielu przypadkach montaż wbudowany służy do dostępu do specjalnych funkcji w środkowej jednostce przetwarzania (CPU), do optymalizacji kodu lub do wykonywania operatorów na bardzo niskim poziomie, takim jak napięcie pamięci.Chociaż określony kompilator lub język programowania może mieć obsługę tworzenia wykonywania krzyżowych, użycie zespołu wbudowanego zwykle ogranicza program do systemów, które mogą zastosować określone instrukcje montażu lub mieć dopasowaną architekturę.

Istnieje kilka sposobów, w jakie język języklub kompilator umożliwia włączenie zespołu inline w standardowym pliku kodu źródłowego.Jedną z najłatwiejszych metod jest po prostu zdefiniowanie początku bloku montażowego, po czym wszystkie polecenia są interpretowane jako montaż bezpośredni.Niektóre zintegrowane środowiska programistyczne (IDES) i kompilatory faktycznie pozwalają kodowi inline na użycie zmiennych zdefiniowanych w programie lub funkcji bez wyraźnego ładowania ich do rejestrów.

Inny sposób, w jaki montaż wbudowany jest zdefiniowany w pliku źródłowym, jest użyciededykowana funkcja montażowego w języku.W takim przypadku kodu wbudowanego zwykle nie można łączyć z kodem nie do montażu, takim jak instrukcja sterowania lub instrukcja zwrotu.Po wdrożeniu w ten sposób funkcja wbudowana zwykle musi również wyraźnie popychać zmienne i wysypią w stos, aby używać zmiennych lokalnych lub przekazywania wartości poza funkcją.

Jednym z najczęstszych zastosowań kodu montażowego jest optymalizacja dla optymalizacjiMałe segmenty programu.W zależności od sposobu zintegrowania kodu wbudowanego, może to oznaczać użycie bardziej ludzkich poleceń językowych owinięte wokół kodu wbudowanego, które bezpośrednio wykonują pewne działanie bardzo szybko i wydajnie.Ponadto, jeśli system docelowy jest znany, kod może korzystać z rejestrów i poleceń specyficznych dla sprzętu, które mogą sprawić, że program może być znacznie szybszy.

Zespół wbudowany może być używany do dostępu do części systemu operacyjnego, procesora lub nawet portów sprzętowych bezpośrednio, gdy bezpośrednio w przypadku portów sprzętowychInne metody mogą zawieść lub spowodować błąd systemu.Można to użyć do szybkiej zmiany ram na karcie graficznej lub do wysyłania sygnałów bezpośrednio do określonego portu przerwania lub sprzętu.Jednym z niebezpieczeństw związanych z użyciem kodu montażowego w ten sposób jest jednak to, że małe błędy mogą być trudne do znalezienia lub spowodować, że program nieoczekiwanie awansuje na niektóre systemy.