Razlika med prevajalcem in tolmačem

Sestavljanka in tolmač

Ko pišete programe v jeziku na visoki ravni, ga računalnik ne bo mogel razumeti. Da bo uporabna, jo morate pretvoriti v nekaj, kar računalnik razume. Tu pridejo prevajalniki in tolmači, saj oba opravljata isto funkcijo. Glavna razlika med prevajalnikom in tolmačem je, ko izvršijo kodo. S tolmačem se koda izvede takoj, ko tolmač interpretira kodo v računalnik. Za primerjavo, prevajalnik kode ne izvrši. Namesto tega končno kodo zapiše na disk. Koda, zapisana na disk, se lahko nato kadar koli izvede.

Glavna razlika med tolmačem in prevajalcem sproži drugo. Ker je tolmač potreben, ko zaženete program, morate imeti nameščen tolmač, če želite program izvesti v svoji napravi. Pri prevajalniku ni tako. Ko je program sestavljen, potrebujete samo sestavljeni program in ne prevajalnik ali izvirno kodo.

Prednost uporabe tolmača in ne prevajalnika je sposobnost izvajanja programa v računalnikih z različnimi operacijskimi sistemi; glede na to, da imate ustreznega tolmača. Ko sestavite program, bi bil za določen operacijski sistem in ne bi deloval na drugih. Če želite omogočiti delovanje v drugem operacijskem sistemu, morate optimizirati kodo za ta operacijski sistem in jo znova sestaviti.

Slaba stran uporabe tolmača je dodaten režijski strošek. Tolmač bi potreboval nekaj procesorske moči in vsaka vrstica kode bi bila interpretirana med izvajanjem. To ne velja, če imate sestavljen program, ker ga lahko operacijski sistem prebere neposredno in izvede vsak ukaz. Z dodatnim korakom interpretacije kode se interpretirani program izvaja bistveno počasneje kot sestavljena koda. Tolmač tudi ne bi mogel izkoristiti specifičnih optimizacij za OS, ki bi omogočile, da se sestavljeni program izvaja učinkoviteje.

Izbira med prevajalnikom in tolmačem mora biti odvisna od tega, ali želite prenosljivost ali zmogljivost.

Povzetek:

  1. Tolmač kodo neposredno izvede, prevajalnik pa ne
  2. V ciljnem stroju mora biti na voljo tolmač, medtem ko prevajalnik ne
  3. Interpretirani program se bo izvajal na več platformah, medtem ko sestavljeni program ne bo
  4. Interpretirani program bo tekel počasneje kot sestavljen program