Skirtumas tarp kompiliatoriaus ir vertėjo

Skirtumas tarp kompiliatoriaus ir vertėjo
Skirtumas tarp kompiliatoriaus ir vertėjo

Video: Skirtumas tarp kompiliatoriaus ir vertėjo

Video: Skirtumas tarp kompiliatoriaus ir vertėjo
Video: Что такое гекльберри? Чем она отличается от черники? 2024, Lapkritis
Anonim

Kompiliatorius prieš vertėją

Kompiliatorius ir vertėjas – abu iš esmės atlieka tą patį tikslą. Jie konvertuoja vieną kalbos lygį į kitą. Kompiliatorius konvertuoja aukšto lygio komandas į mašinų kalbą, o vertėjas konvertuoja aukšto lygio komandas į tam tikrą tarpinę formą ir po to instrukcija vykdoma.

Kompiliatorius

Kompiliatorius apibrėžiamas kaip kompiuterio programa, naudojama aukšto lygio instrukcijoms ar kalbai konvertuoti į kompiuteriui suprantamą formą. Kadangi kompiuteris gali suprasti tik dvejetainiais skaičiais, tai spragai užpildyti naudojamas kompiliatorius, kitaip žmogui būtų buvę sunku rasti informaciją 0 ir 1 formose.

Anksčiau kompiliatoriai buvo paprastos programos, kurios buvo naudojamos simboliams konvertuoti į bitus. Programos taip pat buvo labai paprastos ir jose buvo keli žingsniai, ranka išversti į duomenis. Tačiau tai buvo labai daug laiko reikalaujantis procesas. Taigi, kai kurios dalys buvo užprogramuotos arba automatizuotos. Taip buvo sukurtas pirmasis kompiliatorius.

Sudėtingesni sudarytojai sukuriami naudojant paprastesnius. Su kiekviena nauja versija pridedama daugiau taisyklių ir sukuriama natūralesnė kalbos aplinka žmogaus programuotojui. Kompiuterinės programos tobulėja tokiu būdu, todėl jas lengviau naudoti.

Yra specialių tam tikrų kalbų ar užduočių vykdytojų. Vykdytojai gali būti daugiapakopiai arba daugiapakopiai. Pirmuoju žingsniu aukšto lygio kalbą galima konvertuoti į kalbą, artimesnę kompiuterio kalbai. Tada tolesni važiavimai gali paversti jį galutine stadija vykdymo tikslais.

Vertėjas

Programos, sukurtos aukšto lygio kalbomis, gali būti vykdomos dviem skirtingais būdais. Pirmasis yra kompiliatoriaus naudojimas, o kitas metodas yra vertėjo naudojimas. Aukšto lygio mokymą ar kalbą vertėjas paverčia vidutine. Vertėjo naudojimo pranašumas yra tas, kad aukšto lygio instrukcija nepraeina per kompiliavimo etapą, o tai gali būti daug laiko reikalaujantis metodas. Taigi, naudojant vertėją, aukšto lygio programa vykdoma tiesiogiai. Štai kodėl kai kurie programuotojai, kurdami mažas dalis, naudoja vertėjus, nes tai taupo laiką.

Beveik visos aukšto lygio programavimo kalbos turi kompiliatorius ir vertėjus. Tačiau kai kurios kalbos, pvz., LISP ir BASIC, yra sukurtos taip, kad naudojant jas sukurtas programas vykdo vertėjas.

Skirtumas tarp kompiliatoriaus ir vertėjo

• Vykdytojas aukšto lygio instrukcijas konvertuoja į mašinų kalbą, o vertėjas aukšto lygio instrukcijas konvertuoja į tarpinę formą.

• Prieš vykdymą visą programą vykdo kompiliatorius, o išvertus pirmąją eilutę, vertėjas ją vykdo ir pan.

• Klaidų sąrašą sukuria kompiliatorius po kompiliavimo proceso, o vertėjas nustoja versti po pirmosios klaidos.

• Kompiliatorius sukuria nepriklausomą vykdomąjį failą, o interpretuotojas reikalingas interpretuotai programai kiekvieną kartą.

Rekomenduojamas: