Mi az a fordító, vagy Hogyan érjük el a számítógéppel, hogy mit akarsz tőle?

Tartalomjegyzék:

Mi az a fordító, vagy Hogyan érjük el a számítógéppel, hogy mit akarsz tőle?
Mi az a fordító, vagy Hogyan érjük el a számítógéppel, hogy mit akarsz tőle?

Videó: Mi az a fordító, vagy Hogyan érjük el a számítógéppel, hogy mit akarsz tőle?

Videó: Mi az a fordító, vagy Hogyan érjük el a számítógéppel, hogy mit akarsz tőle?
Videó: JELEK, HOGY SZERELMES BELÉD!! 2024, November
Anonim

A programkészítés utolsó szakasza az egyik programozási nyelven (C/C++, Pascal stb.) írt algoritmus lefordítása alacsony szintű gépi nyelvre. Ennek oka az a tény, hogy bármilyen feladat elvégzéséhez a számítógépeknek egy általuk értett, a binárishoz közeli és primitív adatstruktúrákkal (bit, bájt vagy szó) működő nyelven kell parancsokat adni. A magas szintű nyelvek tartományspecifikus utasításainak bináris kódba való lefordításának folyamatát fordításnak nevezik. Két fordítási mód létezik: az összeállítás és a tolmácsolás.

fordító az
fordító az

Fordító – mi ez?

A "fordító" és a "összeállítás" kifejezések sokféle értelmezésének elemzése lehetővé teszi számunkra, hogy kiemeljük a következő meghatározást. A fordítóprogram egy olyan program, amelyet arra terveztek, hogy egy forrásalgoritmus szövegét egy magas szintű nyelvről egyenértékű utasításkészletre fordítsa le gépi orientált nyelven. Ez az úgynevezett objektumkód, amely a kapott objektumkód későbbi összeállítására szolgál egy használatra kész programmodulba.

Fordító és értelmező – hasonlóságok és különbségek

A tolmács egy olyan segédprogram, amelyvalamint egy fordító, amelyet arra terveztek, hogy a forráskódot gépi kódra fordítsa. A fordítótól eltérően azonban a tolmács minden alkalommal a programmal együtt fut, és soronként hajtja végre a fordítást.

Elmondhatjuk, hogy a fordító és az értelmező olyan nyelvi processzorok, amelyek lehetővé teszik a számítógép számára, hogy felismerje és végrehajtsa a programozó által adott parancsokat.

Fordító besorolása

a fordító egy program
a fordító egy program

A fordítókat főként a gyakorlati alkalmazási területükhöz kapcsolódó jellemzők alapján osztályozzák.

A vektorizáló fordító egy olyan segédprogram, amely a forráskódot objektumkóddá fordítja, és vektorprocesszorokkal felszerelt számítógépekhez készült.

A rugalmas fordító modulárisan magas szintű nyelven van programozva. Kezelése táblázatok segítségével történik. Lehetőség van a fordítók fordítójával is végrehajtani.

A növekményes fordító egy olyan nyelvi processzor, amely újrafordítja a forráskód különálló részeit és kiegészítéseit. Azonban elkerüli a teljes alkalmazás újrafordítását.

Az értelmező (léptető) fordító egy olyan segédprogram, amely szekvenciálisan hajtja végre a magas szintű forráskód minden egyes utasításának vagy parancsának független fordítását.

A fordítók fordítója olyan fordító, amely képes elfogadni egy programozási nyelv formális leírását, és önállóan generálni fordítóprogramot bármely nyelvhez.

fordító és tolmács
fordító és tolmács

A hibakereső fordító lehetővé teszi, hogy megtalálja és kijavítsa a forráskód írásakor elkövetett bizonyos szintaktikai hibákat

Egy állandó fordítóprogram állandó helyet foglal el a RAM-ban, ezért számos feladathoz újra felhasználható.

A saját készítésű fordítóprogram ugyanazon a nyelven készült, mint a fordítás.

Az univerzális fordító a beviteli nyelv szemantikai és szintaktikai paramétereinek formális leírásán alapul. Egy ilyen segédprogram fő összetevői a mag-, szintaktikai és szemantikai betöltők.

Fordítóeszköz

A fordító és egy linker minden fordító középpontjában áll. Fordításkor gyakran külső linkert használnak, és maga a fordító csak a fordítási funkciót látja el. Az is előfordul, hogy a fordító egyfajta kezelőprogramként kerül megvalósításra, amely a fordítóval (vagy fordítókkal, ha különböző programozási nyelveket használtak a forráskód írásakor) és a linkerrel társítva, és szükség esetén elindítja azok végrehajtását.

Programozási nyelvek és fordítási módszerek

nyelvi fordító
nyelvi fordító

Annak ellenére, hogy bármely programozási nyelven írt program lefordítható és értelmezhető is, sok magas szintű nyelv hajlamos egyik vagy másik fordítási módra. Tehát a C nyelvet eredetileg fordításra, a Java-t pedig az írott program értelmezésére tervezték. Fejlesztés alatt állnakA C fordítók meglehetősen egyszerűek, köszönhetően viszonylag alacsony szintjének és kevés szerkezeti elemének.

A fordítók és tolmácsok előnyei és hátrányai. Alkalmazások

Ne feledje, hogy a lefordított alkalmazások gyorsabbak, mint az értelmezettek, ugyanakkor a fordítás eredményeként kapott gépi kód hardverplatformtól függ. Tehát egy Windowsra írt és lefordított program nem fog működni például Linux alatt. Ezért az internetes alkalmazások esetében, amikor nem lehet előre megmondani, hogy milyen környezetben fognak működni, akkor interpretációt vagy bájtkódot használnak (ebben az esetben a forrásprogramot egy köztes formává alakítják, amely különféle hardvereken végrehajtható platformok).

Ajánlott: