Kääntäjä ja tulkki

Anonim

Kääntäjä vs. tulkki

Kun kirjoitat ohjelmia korkealla kielellä, tietokone ei voi ymmärtää sitä. Jotta se olisi käyttökelpoinen, sinun täytyy muuntaa se tietokoneen ymmärtämiksi. Tässä kääntäjät ja tulkit tulevat, koska molemmat tekevät samoja tehtäviä. Suurin ero kääntäjän ja tulkin välillä on, kun he suorittavat koodin. Tulkin avulla koodi suoritetaan välittömästi, kun tulkinta välittää tulkittun koodin tietokoneelle. Vertailun vuoksi kääntäjä ei suorita koodia. Sen sijaan se kirjoittaa valmiin koodin levylle. Levylle kirjoitettu koodi voidaan sitten suorittaa milloin tahansa.

Tärkein ero tulkin ja kääntäjän välillä kertoo toisen. Koska tulkki on tarpeen, kun suoritat ohjelman, sinun on asennettava tulkki, jos haluat suorittaa ohjelman koneellasi. Näin ei ole kääntäjän kanssa. Kun ohjelma on koottu, tarvitset vain kootun ohjelman eikä kääntäjän tai alkuperäisen koodin.

Etuna tulkinnan käytöstä kääntäjän sijaan on kyky suorittaa ohjelma eri käyttöjärjestelmissä toimivissa tietokoneissa; koska sinulla on asianmukainen tulkki. Kun kokoat ohjelman, se olisi vain tietyssä käyttöjärjestelmässä eikä se toimi muiden kanssa. Jos haluat käyttää sitä toisessa käyttöjärjestelmässä, sinun on optimoi kyseisen käyttöjärjestelmän koodi ja koota se uudelleen.

Tulkin käyttöön liittyvä haittapuoli on lisätty yleiskustannus. Tulkki tarvitsee jonkinasteista prosessointitehoa ja jokainen koodirivi tulkittaisiin ajon aikana. Näin ei ole silloin, kun sinulla on koottu ohjelma, koska käyttöjärjestelmä voi lukea sen suoraan ja suorittaa jokaisen komennon. Koodin tulkinnan lisävaihe tekee tulkittua ohjelmaa suoritettavaksi huomattavasti hitaammin kuin koottu koodi. Tulkki ei myöskään voi hyödyntää käyttöjärjestelmän erityisoptimointeja, joiden avulla käännetty ohjelma toimii tehokkaammin.

Kääntäjän ja tulkin välinen valinta riippuu siitä, haluatko siirrettävyyden tai suorituskyvyn.

Yhteenveto:

  1. Tulkki suorittaa koodin suoraan, kun kääntäjä ei
  2. Tulkki on oltava saatavilla kohdelaitteessa, kun kääntäjä ei ole
  3. Tulkittu ohjelma toimii useilla alustoilla, kun koottu ohjelma ei
  4. Tulkittu ohjelma toimii hitaammin kuin koottu ohjelma