Koncept v definici ABC
Různé / / July 04, 2021
Guillem Alsina González, v září 2017
Jak můžeme vyjít s někým, s kým nemáme společný jazyk? Přes překladatele. Tato funkce překladu provádí a překladač proměnit se v kód spustitelný zdrojový kód napsaný programátorem.
Kompilace je proces, kterým je program napsaný v jazyce vyšší úrovně přeložen do strojového kódu používaného určitou počítačovou architekturou pro jeho provedení Přímo.
Proto a podle vysvětlení, které jsme právě navrhli, vyžaduje tento systém volbu a architektura cíl, který se může v každém případě lišit a bude nás nutit sestavovat samostatně pro každou z různých architektur, ve kterých chceme, aby náš program běžel.
Například můžeme postupovat v určitém programu pro 32bitovou architekturu x86, 64bitovou x86, PowerPC nebo ARM také rozlišují 32 a 64 bitů, v závislosti na typu zařízení, ve kterém chceme spusť to.
Kromě toho musíme vzít v úvahu různé operační systémy, i když pracujeme pro stejnou platformu Hardware, protože každý z nich má jiný způsob interakce s fyzickým strojem
Vezměme si jako příklad 64bitovou platformu x86. Možná budeme chtít sestavit pro
OknaGNU / Linux nebo macOS, nebo pro každý z nich, což znamená tři samostatné procesy kompilace.To nás někdy donutí mírně vyladit zdrojový kód, přičemž si často ponecháme tři samostatné verze (nebo více, podle toho) případ), aby mohli správně interagovat se zvláštnostmi a odlišnostmi cílové platformy.
Proces kompilace sleduje řadu kroků, například detekci syntaktických chyb ve zdrojovém kódu, poté a předem zpracované, aby bylo možné znát zdroje, které program potřebuje, a nakonec propojení s knihovnami a prostředky, které jsou k tomu nezbytné provedení.
Tímto způsobem a soubor spustitelný soubor obsahující všechny zdroje nezbytné pro jeho provedení a pokyny nezbytné pro přístup k externím prostředkům, jako jsou knihovny sdíleného kódu (sdílené).
Proces kompilace se provádí pomocí konkrétního nástroje nebo nástrojů (kompilátor), ačkoli je běžné, že je to integrováno do vývojových prostředí (IDE), což usnadňuje jeho použití.
Každý jazyk programování Má svůj vlastní kompilátor, i když po dlouhou dobu byl kompilátor odpovídající jazyku a prostředí schopen generovat spustitelné soubory pro různé platformy. software odlišný.
Existuje alternativní možnost procesu sestavení? Ano, a jsou to tlumočené jazyky.
Interpretované jazyky jsou ty, které jsou překládány za běhu a nejsou kompilovány.
Proto je jejich zdrojový kód vždy k dispozici a to, co potřebují, je v operační systém na kterém jsou popraveni, je tlumočník.
Pokud se vyhnete procesu kompilace, je-li tlumočník k dispozici pro více platforem, bude možné spustit program přímo na každém z nich, obvykle beze změn.
jiný soustředit se Alternativou, na půli cesty mezi kompilovanými a interpretovanými jazyky, jsou ty, které vyžadují běh virtuálního stroje, například Java.
Programovací jazyky, které běží na virtualizační vrstvě (virtuální stroj), vyžadují přechodný proces podobný tomu z kompilace, ale výsledkem je kód, který není přímo spustitelný, i když optimalizovanější než kód prováděný jazykem interpretován.
V těchto případech to vyžaduje proces podobný ve formě kompilace, ale který dává jiný výsledek a který stále vyžaduje, v každém případě, instalace a runtime v operačním systému, ve kterém chceme spustit náš program.
Fotografie: Fotolia - Alexander Pokusay / Onot
Témata v kompilaci