Ero Kokoonpanijan Ja Kääntäjän Välillä

Ero Kokoonpanijan Ja Kääntäjän Välillä
Ero Kokoonpanijan Ja Kääntäjän Välillä

Video: Ero Kokoonpanijan Ja Kääntäjän Välillä

Video: Ero Kokoonpanijan Ja Kääntäjän Välillä
Video: SUOMI VS USA EROJA 2024, Saattaa
Anonim

Assembler vs Compiler

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. On kuitenkin kääntäjiä, jotka voivat muuntaa Assembly-kielellä kirjoitetun lähdeohjelman ja muuntaa sen konekoodiksi tai objektikoodiksi. Kokoonpanijat ovat sellaisia työkaluja. Joten sekä kokoonpanijat että kääntäjät tuottavat viime kädessä koodin, joka voidaan suorittaa suoraan koneella.

Mikä on kääntäjä?

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 on useimmiten korkean tason kieli ja kohdekieli on matalan tason kieli. Joten kääntäjiä voidaan yleisesti nähdä kääntäjinä, jotka kääntävät kielestä toiseen. Lisäksi kääntäjät suorittavat koodiin joitain optimointeja. Tyypillinen kääntäjä koostuu useista pääkomponenteista. Ensimmäinen komponentti on skanneri (tunnetaan myös nimellä leksikaalinen analysaattori). Skanneri lukee ohjelman ja muuntaa sen merkkijonoksi. Toinen komponentti on jäsennin. Se muuntaa merkkijonon jäsennyspuuksi (tai abstraktiksi syntaksipuuksi), joka sieppaa ohjelman syntaktisen rakenteen. Seuraava komponentti on semanttiset rutiinit, jotka tulkitsevat syntaktisen rakenteen semantiikkaa. Koodin optimoinnit ja lopullinen koodin luominen noudattavat tätä.

Mikä on kokoonpanija?

Assembler on ohjelmisto tai työkalu, joka kääntää kokoonpanokielen konekoodiksi. Joten assembler on kääntäjän tyyppi ja lähdekoodi kirjoitetaan Assembly-kielellä. Assembly on ihmisen luettavissa oleva kieli, mutta sillä on tyypillisesti henkilökohtainen suhde vastaavaan konekoodiin. Siksi kokoonpanijan sanotaan suorittavan isomorfisen (yksi yhteen kartoitus) käännöksen. Edistyneet kokoonpanijat tarjoavat lisäominaisuuksia, jotka tukevat ohjelman kehittämistä ja virheenkorjausprosesseja. Esimerkiksi kokoonpanijoiden tyyppi, jota kutsutaan makroasentajiksi, tarjoaa makrotoiminnon.

Mitä eroa on kokoonpanijalla ja kääntäjällä?

Kääntäjä on tietokoneohjelma, joka lukee yhdellä kielellä kirjoitetun ohjelman ja kääntää sen toiselle kielelle, kun taas kokoonpanijaa voidaan pitää erityistyyppisenä kääntäjänä, joka kääntää vain kokoonpanokielen konekoodiksi. Kääntäjät tuottavat yleensä koneen suoritettavan koodin suoraan korkean tason kielestä, mutta kokoonpanijat tuottavat kohdekoodin, joka saatetaan joutua linkittämään linkkuriohjelmilla koneen suorittamiseksi. Koska Assembly-kielellä on yksitellen kartoitus konekoodilla, kokoonpanijaa voidaan käyttää tuottamaan koodia, joka toimii erittäin tehokkaasti tilanteissa, joissa suorituskyky on erittäin tärkeää (esim. Grafiikkamoottorit, sulautetut järjestelmät, joilla on rajoitetut laitteistoresurssit henkilökohtaiseen tietokoneeseen verrattuna) kuten mikroaaltouunit, pesukoneet jne.).

Suositeltava: