Különbség Az összeállító és A Fordító Között

Különbség Az összeállító és A Fordító Között
Különbség Az összeállító és A Fordító Között

Videó: Különbség Az összeállító és A Fordító Között

Videó: Különbség Az összeállító és A Fordító Között
Videó: Egyszerű múlt és befejezett jelen idő: mikor melyiket? 2024, November
Anonim

Összeszerelő vs fordító

Általában a fordító olyan számítógépes program, amely beolvassa az egyik nyelven írt programot, amelyet forrásnyelvnek neveznek, és lefordítja egy másik nyelvre, amelyet célnyelvnek neveznek. Hagyományosan a forrásnyelv olyan magas szintű nyelv volt, mint a C ++, a célnyelv pedig alacsony szintű, például az Assembly nyelv. Vannak azonban olyan fordítók, amelyek konvertálni tudnak egy Assembly nyelven írt forrásprogramot és konvertálhatnak gépi kódra vagy objektumkódra. Az összeszerelők ilyen eszközök. Tehát mind az összeszerelők, mind a fordítók olyan kódot állítanak elő, amelyet közvetlenül egy gépen lehet végrehajtani.

Mi az a fordító?

A Compiler olyan számítógépes program, amely beolvassa az egyik nyelven írt programot, amelyet forrásnyelvnek neveznek, és lefordítja egy másik nyelvre, amelyet célnyelvnek neveznek. Leggyakrabban a forrásnyelv magas szintű nyelv, a célnyelv pedig alacsony szintű nyelv. Tehát általában a fordítók fordítóknak tekinthetők, akik egyik nyelvről a másikra fordítanak. Ezenkívül a fordítók néhány optimalizálást hajtanak végre a kódban. Egy tipikus fordító több fő összetevőből áll. Az első komponens a szkenner (más néven lexikális elemző). A szkenner elolvassa a programot, és konvertálja azt zsetonok sorozatává. A második komponens az elemző. A tokenek karakterláncát elemző fává (vagy absztrakt szintaxis fává) alakítja, amely megragadja a program szintaktikai felépítését. A következő komponens a szemantikai rutinok, amelyek értelmezik a szintaktikai szerkezet szemantikáját. A kódoptimalizálás és a végső kódgenerálás ezt követi.

Mi az a szerelő?

Az Assembler olyan szoftver vagy eszköz, amely lefordítja az összeállítási nyelvet gépi kódra. Tehát az assembler egy fordítótípus, és a forráskód az Assembly nyelvén van megírva. Az összeállítás egy ember által olvasható nyelv, de általában egy az egyben viszonyban van a megfelelő gépi kóddal. Ezért azt mondják, hogy az összeszerelő izomorf (egy-egy leképezés) fordítást végez. A haladó összeállítók további szolgáltatásokat nyújtanak, amelyek támogatják a programfejlesztést és a hibakeresési folyamatokat. Például a makró-összeállítóknak nevezett összeszerelők típusa nyújt makro-lehetőséget.

Mi a különbség az összeállító és a fordító között?

A Compiler olyan számítógépes program, amely elolvassa az egyik nyelven írt programot és lefordítja egy másik nyelvre, míg az assembler speciális fordítótípusnak tekinthető, amely csak az Assembly nyelvet fordítja gépi kódra. A fordítók általában közvetlenül a magas szintű nyelvből állítják elő a gépen futtatható kódot, de az összeállítók olyan objektumkódot állítanak elő, amelyet összekapcsoló programok segítségével lehet összekapcsolni a gépen való futtatáshoz. Mivel az Assembly nyelvnek egy az egyhez van hozzárendelve a gépi kóddal, egy assembler használható olyan kódok előállítására, amelyek nagyon hatékonyan futnak olyan esetekben, amikor a teljesítmény nagyon fontos (például grafikus motorok, beágyazott rendszerek korlátozott hardvererőforrásokkal, mint a személyi számítógépek) mikrohullámú sütők, mosógépek stb.).

Ajánlott: