Video: Vaihe Ja Läpäisy Ero Kääntäjässä
2024 Kirjoittaja: Mildred Bawerman | [email protected]. Viimeksi muokattu: 2023-12-16 08:38
Vaihe vs läpäisy kääntäjässä
Yleensä kääntäjä on tietokoneohjelma, joka lukee yhdellä kielellä kirjoitetun ohjelman, jota kutsutaan lähdekieleksi, ja kääntää sen toiselle kielelle, jota kutsutaan kohdekieleksi. Lähdekieli oli perinteisesti korkean tason kieli, kuten C ++, ja kohdekieli oli matalan tason kieli, kuten Assembly-kieli. Joten kääntäjiä voidaan yleisesti nähdä kääntäjinä, jotka kääntävät kielestä toiseen. Pass ja Phase ovat kaksi termiä, joita käytetään usein kääntäjien kanssa. Kääntäjän läpikertojen lukumäärä tarkoittaa sitä, kuinka monta kertaa se käy lähteen (tai jonkinlaisen esityksen muodossa). Kääntäjä on jaoteltu osiin rakentamisen helpottamiseksi. Vaihetta käytetään usein kääntäjän sellaisen yksittäisen itsenäisen osan kutsumiseen.
Mikä on käännös kääntäjässä?
Tavallinen tapa luokitella kääntäjiä on "läpäisyjen" lukumäärä. Yleensä kokoaminen on suhteellisen resursseja kuluttava prosessi, ja alun perin tietokoneilla ei ollut tarpeeksi muistia sellaisen työn suorittamiseen, joka teki koko työn. Tästä johtuen laitteistoresurssien rajoituksesta varhaisissa tietokoneissa, kääntäjät jaettiin pienempiin alaohjelmiin, jotka tekivät osittaisen tehtävän käymällä läpi lähdekoodin ("siirtäneet" lähteen tai jonkin muun sen) ja suorittaneet analyysin, muunnokset ja käännöstehtävät erikseen. Joten, tästä luokituksesta riippuen, kääntäjät yksilöidään yhden tai monen läpimenon kääntäjinä.
Kuten nimestä voi päätellä, yhden kierroksen kääntäjät kääntyvät yhdellä kertaa. Yksivaiheinen kääntäjä on helpompi kirjoittaa, ja myös ne toimivat nopeammin kuin monipäästökääntäjät. Siksi, jopa silloin, kun sinulla oli resurssirajoituksia, kielet suunniteltiin siten, että ne voitaisiin koota yhdellä kertaa (esim. Pascal). Toisaalta tyypillinen monipäästöinen kääntäjä koostuu useista päävaiheista. Ensimmäinen vaihe on skanneri (tunnetaan myös nimellä leksikaalinen analysaattori). Skanneri lukee ohjelman ja muuntaa sen merkkijonoksi. Toinen vaihe on jäsennin. Se muuntaa merkkijonon jäsennyspuuksi (tai abstraktiksi syntaksipuuksi), joka sieppaa ohjelman syntaktisen rakenteen. Seuraava vaihe on se, joka tulkitsee syntaktisen rakenteen semantiikkaa. Koodin optimointivaiheet ja lopullinen koodin luontivaihe seuraavat tätä.
Mikä on kääntäjän vaihe?
Termi vaihe tulee usein esiin, kun puhut kääntäjän rakentamisesta. Alun perin kääntäjät olivat yksinkertaisia paloja yksittäisiä, monoliittisia ohjelmistoja, jotka yksi henkilö oli kirjoittanut yksinkertaisen kielen kokoamiseksi. Mutta kun käännettävän kielen lähdekoodista tulee monimutkainen ja suuri, kääntäjä jaettiin useisiin (suhteellisen itsenäisiin) vaiheisiin. Eri vaiheiden etuna on, että kääntäjän kehitys voidaan jakaa kehittäjien joukkueelle. Lisäksi se parantaa modulaarisuutta ja uudelleenkäyttöä sallimalla vaiheiden korvaamisen paremmilla tai lisävaiheiden (kuten lisäoptimointien) lisäämisen kääntäjään. Kokoomuksen jakamisen vaiheisiin esitteli Carnegie Melon Universityn PQCC (Production Quality Compiler-Compiler Project). He esittivät termit etupää, keskipää ja takapää. Useimmilla kääntäjillä on vähintään kaksi vaihetta. Mutta yleensä takapää ja etupää kapseloivat nämä vaiheet.
Mitä eroa on vaiheen ja läpäisyn välillä kääntäjässä?
Phase ja Pass ovat kaksi termiä, joita käytetään kääntäjien alueella. Pass on yksi kerta, jolloin kääntäjä kulkee (käy läpi) lähdekoodin tai jonkin muun esityksen siitä. Tyypillisesti useimmilla kääntäjillä on vähintään kaksi vaihetta, joita kutsutaan käyttöliittymäksi ja takapääksi, kun taas ne voivat olla joko yksi- tai monipäästöisiä. Vaihetta käytetään luokittelemaan kääntäjät rakenteen mukaan, kun taas passia käytetään luokittelemaan kääntäjät niiden toiminnan mukaan.
Suositeltava:
Symmetristen Ja Epäsymmetristen Ylämolekyylien Välinen Ero
Keskeinen ero symmetristen ja epäsymmetristen huippumolekyylien välillä on se, että symmetrisillä huippumolekyyleillä on yksi oikea pyörimisakseli ja kaksi hitausmomenttia
Ero Siirtogeenisten Ja Koputtavien Hiirten Välillä
Tärkein ero siirtogeenisten hiirien ja tyrmäyshiirien välillä on, että siirtogeenisten hiirten genomiin on lisätty vieraita geenejä, kun taas knockout-hiirillä on func
Cisgenesiksen Ja Intrageneesin Ero
Keskeinen ero sisigeneesin ja intrageneesin välillä on se, että sisigeneesissä geenit lisätään tekemättä mitään muutoksia DNA-sekvenssiin ja ge
Ero Nousevan Ja Laskevan Paperikromatografian Välillä
Keskeinen ero nousevan ja laskevan paperikromatografian välillä on se, että nouseva paperikromatografia käsittää liuottimen liikkeen
Vaihe-eron Ja Polkueron Välinen Ero
Vaihe-ero vs polkuero Vaihe-ero ja polkuero ovat kaksi hyvin tärkeää käsiteoptiikkaa. Nämä ilmiöt nähdään