Viimeinen vaihe ohjelman luomisessa onjollakin ohjelmointikielellä (C / C ++, Pascal jne.) kirjoitetun algoritmin käännös matalan tason konekielelle. Tämä johtuu siitä, että tietokoneiden on suoritettava komennot ymmärretyllä kielellä, joka on lähellä binaaria ja toimii primitiivisillä tietorakenteilla (bitti, tavu tai sana) tehtävän suorittamiseksi. Korkean tason kielten ongelmakeskeisten operaattoreiden kääntämistä binaarikoodiksi kutsutaan käännökseksi. Kääntämismenetelmiä on kaksi - kokoaminen ja tulkinta.
Termien ”kääntäjä” ja “kokoaminen” monien tulkintojen analysointi antaa meille mahdollisuuden korostaa seuraavaa määritelmää. kääntäjä Onko käännösohjelmaalkuperäisen algoritmin teksti korkean tason kielestä vastaavaksi ohjejoukkoksi konekeskeisellä kielellä. Tämä on ns. Objektikoodi tuloksena olevan objektikoodin seuraavaa kokoamista varten käyttövalmiiksi ohjelmoduuliksi.
tulkki Onko apuohjelma, kuten kääntäjä,suunniteltu kääntämään lähdekoodi konekoodiksi. Toisin kuin kääntäjä, tulkki kuitenkin käynnistetään joka kerta ohjelman mukana ja suorittaa käännöksen riviltä.
Voimme sanoa, että kääntäjä ja tulkki ovat kieliprosessoreita, joiden avulla tietokone tunnistaa ja suorittaa ohjelmoijan antamat komennot.
Kääntäjät luokitellaan pääasiassa niiden käytännön alaan liittyvien ominaisuuksien perusteella.
Vektorisoiva kääntäjä On apuohjelma, joka kääntää lähdekoodin objektikoodiksi ja on sovitettu tietokoneille, jotka on varustettu vektoriprosessoreilla.
Joustava kääntäjä ohjelmoitu korkean tason kielellä modulaarisesti. Sen hallinta tapahtuu taulukoiden avulla. Se on myös mahdollista suorittaa kääntäjän avulla.
Inkrementaalinen kääntäjä - Tämä on kieliprosessori, joka kääntää lähdekoodin yksittäiset fragmentit ja lisäykset siihen. Se eliminoi kuitenkin koko sovelluksen kokoamisen uudelleen.
Tulkkaus (askel askeleelta) kääntäjä On apuohjelma, joka kokoaa peräkkäin itsenäisesti jokaisen lausekkeen tai komennon korkean tason lähdekoodista.
Kääntäjä kääntäjä - kääntäjä, joka kykenee havaitsemaan muodollisen kuvauksen ohjelmointikielelle ja tuottamaan itsenäisesti kääntäjän mille tahansa kielelle.
Debug-kääntäjä antaa sinun löytää ja poistaa tietyn tyyppisiä syntaksivirheitä kirjoitettaessa lähdekoodia
Kotimainen kääntäjä miehittää pysyvän paikan RAM-muistissa ja on siksi käytettävissä uudelleen käytettäväksi monenlaisissa tehtävissä.
Itse koottu kääntäjä Se on kirjoitettu samalla kielellä, jolla lähetys suoritetaan.
Universal kääntäjä perustuu syöttökielen semanttisten ja syntaktisten parametrien muodolliseen kuvaukseen. Tällaisen apuohjelman pääkomponentit ovat ydin, syntaktiset ja semanttiset kuormaajat.
Mikä tahansa kääntäjä perustuu kääntäjään jalinkkeri. Usein käännettäessä käytetään ulkoista linkittäjää, ja kääntäjä itse suorittaa vain käännöstoiminnon. On myös käynyt niin, että kääntäjä toteutetaan eräänlaisena hallintaohjelmana, joka liittyy kääntäjään (tai kääntäjiin, jos lähdekoodia kirjoitettaessa käytettiin erilaisia ohjelmointikieliä) ja linkkeriin ja käynnistetään ne tarvittaessa.
Vaikka ohjelma on kirjoitettumikä tahansa ohjelmointikieli, voit joko kääntää tai tulkita, monet korkean tason kielet ovat alttiita tietylle käännösmenetelmälle. Joten C-kieli oli alun perin suunniteltu kokoamiseen ja Java - kirjoitetun ohjelman tulkintaan. C-kääntäjiä kehitetään melko helposti johtuen sen suhteellisen matalasta tasosta ja pienestä määrästä rakenneosia.
Huomaa, että käännetyillä sovelluksilla onnopea verrattuna tulkintaan, mutta samalla kokoamisen tuloksena saatu konekoodi riippuu laitteistoalustasta. Joten Windowsille kirjoitettu ja koottu ohjelma ei toimi esimerkiksi Linuxissa. Siksi Internet-sovellusten tapauksessa, kun on mahdotonta sanoa etukäteen, missä ympäristössä ne toimivat, he käyttävät tulkintaa tai tavukoodia (tässä tapauksessa alkuperäinen ohjelma muunnetaan välimuodoksi, joka voidaan suorittaa useilla laitteistoalustoilla).