C/Łączenie z innymi językami: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Kj (dyskusja | edycje)
m -link wsteczny
Kj (dyskusja | edycje)
Linia 4:
 
== Język C i [[Asembler|Asembler]] ==
{{infobox|Informacje zawarte w tym rozdziale odnoszą się do komputerów z procesorem i386 i pokrewnych.}}
Łączenie języka C i języka asemblera jest dość powszechnym zjawiskiem. Dzięki możliwości połączenia obu tych języków programowania można było utworzyć bibliotekę dla języka C, która niskopoziomowo komunikuje się z jądrem systemu operacyjnego komputera. Ponieważ zarówno asembler jak i C są językami tłumaczonymi do poziomu kodu maszynowego, za ich łączenie odpowiada program zwany '''linkerem''' (popularny ld). Ponadto niektórzy producenci kompilatorów umożliwiają stosowanie tzw. '''wstawek asemblerowych''', które umieszcza się bezpośrednio w kodzie programu, napisanego w języku C. Kompilator, kompilując taki kod wstawi w miejsce tychże wstawek odpowiedni kod maszynowy, który jest efektem przetłumaczenia kodu asemblera, zawartego w takiej wstawce. Opiszę tu oba sposoby łączenia obydwu języków.