Skip to main content

Co je to kompilátor?

Kompilátor je speciální typ počítačového programu, který převádí lidský čitelný textový soubor do formuláře, kterému může počítač snadněji porozumět.Na své nejzákladnější úrovni může počítač porozumět pouze dvěma věci, 1 a A 0. Na této úrovni bude člověk pracovat velmi pomalu a najde informace obsažené v dlouhém řetězci 1S a 0s nepochopitelných.Kompilátor je počítačový program, který tuto mezeru překlenuje.

Na začátku byly kompilátoři velmi jednoduché programy, které mohly překládat symboly pouze do bitů , 1S a 0s, počítač pochopil.Programy byly také velmi jednoduché, složené z řady kroků, které byly původně přeloženy ručně do dat, kterým počítač mohl pochopit.Byl to velmi časově náročný úkol, takže části tohoto úkolu byly automatizovány nebo naprogramovány a první kompilátor byl napsán.Tento program sestavil nebo sestavil kroky potřebné k provedení programu krok za krokem.

Tyto jednoduché kompilátory byly použity k psaní sofistikovanějšího kompilátoru.S novější verzí by mohlo být do programu kompilátoru přidáno více pravidel, aby lidský programátor umožnil pracovat s přirozenějším jazykem.To usnadnilo psaní programů a umožnilo více lidem začít psát programy.Když více lidí začalo psát programy, bylo nabídnuto více představ o psaní a zvyklých vytvořit sofistikovanější kompilátory.Tímto způsobem se programy kompilátoru nadále vyvíjejí, zlepšují se a snadněji se používají.Některé jazykové struktury jsou vhodnější pro konkrétní úkol než jiné, takže pro konkrétní úkoly nebo jazyky byly vyvinuty specifické kompilátory.Někteří kompilátoři jsou

multistage

nebo více průchodů .První průchod by mohl vzít velmi přirozený jazyk a přiblížit se k počítačovému jazyku.Druhá nebo dokonce třetí průchod by ji mohl vzít do závěrečné fáze, spustitelný soubor. Meziprodukční výstup ve vícestupňovém kompilátoru se obvykle nazývá

pseudo-kód

, protože počítač není použitelný.Pseudo-kód je velmi strukturovaný, jako je počítačový program, ne volný a podrobný jako přirozenější jazyk.Konečný výstup se nazývá soubor spustitelný soubor , protože to je to, co je ve skutečnosti prováděn nebo spuštěn počítačem.Rozdělení úkolu, jako je tento, usnadnilo psaní sofistikovanějších kompilátorů, protože každý dílčí úkol je jiný.Rovněž usnadnilo to, aby počítač poukázal na to, kde má potíže s pochopením toho, o co se požaduje. Chyby, které omezují kompilátor při porozumění programu, se nazývají

Syntaxe chyby

.Chyby ve způsobu, jakým se funkce programu nazývají logické chyby .Logické chyby je mnohem těžší najít a opravit.Chyby syntaxe jsou jako pravopisné chyby, zatímco logické chyby jsou trochu spíše jako gramatické chyby.Křížový kompilátor umožňuje, aby textový soubor pokynů napsal pro jeden počítač navržený konkrétním výrobcem, který má být kompilován a spuštěn pro jiný počítač jiným výrobcem.Například program, který byl napsán pro spuštění na počítači Intel, může být někdy kompilován pro spuštění A na počítači vyvinuté společností Motorola.To často nefunguje moc dobře.Na úrovni, na které počítačové programy fungují, může počítačový hardware vypadat velmi odlišně, i když mohou vypadat podobně vám. Kompilace Cross se liší od jednoho počítače napodobující jiný počítač.Pokud počítač emuluje jiný počítač, předstírá, že je to jiný počítač.Emulace je často pomalejší než kompilace Cross, protože dva programy běží najednou, program, který předstírá, že je druhým počítačem a spuštěným programem.Pro kompilaci Cross však potřebujete oba originálText přirozeného jazyka, který popisuje program a počítač, který je dostatečně podobný původnímu počítači, na kterém může program fungovat pro spuštění na jiném počítači.To není vždy možné, takže se používají obě techniky.