Turinys:
Apibrėžimas - ką reiškia kompiliatorius?
Kompiliatorius yra programinė įranga, kuri aukšto lygio kodą, kurį kūrėjas užrašė aukšto lygio programavimo kalba, paverčia žemo lygio objekto kodu (dvejetainiu kodu) mašinų kalba, kurį gali suprasti procesorius. Aukšto lygio programavimo konvertavimo į mašinų kalbą procesas yra žinomas kaip kompiliacija.
Procesorius vykdo objekto kodą, kuris nurodo, kada reikia dvejetainių aukštųjų ir žemųjų signalų procesoriaus aritmetiniame loginiame vienete.
„Techopedia“ paaiškina sudarytojas
Kompiliatorius, kuris mašinų kalbą paverčia aukšto lygio natūralia kalba, vadinamas dekompiliatoriumi. Kompiliatoriai, gaminantys objekto kodą, skirtą paleisti sistemoje, yra vadinami kryžminiais kompiliatoriais. Galiausiai kompiliatorius, kuris konvertuoja vieną programavimo kalbą į kitą, vadinamas kalbos vertėju.
Kompiliatorius vykdo keturis pagrindinius veiksmus:
- Nuskaitymas : skaitytuvas nuskaito vieną simbolį vienu metu iš šaltinio kodo ir stebi, kuris simbolis yra toje eilutėje.
- Leksinė analizė : sudarytojas konvertuoja simbolių seką, rodomą šaltinio kode, į ženklų eilutes (žinomas kaip žetonai), kurias susieja konkreti programa, vadinama leksiniu analizatoriumi. Simbolių lentelę leksinis analizatorius naudoja norėdamas išsaugoti pirminio kodo žodžius, kurie atitinka generuojamą žetoną.
- Sintaksinė analizė : Šiame etape atliekama sintaksės analizė, apimanti išankstinį apdorojimą, kad būtų galima nustatyti, ar leksinės analizės metu sukurti žetonai yra tinkama tvarka pagal jų naudojimą. Teisinga raktinių žodžių rinkinio, kuris gali duoti norimą rezultatą, tvarka yra vadinama sintakse. Kompiliatorius turi patikrinti šaltinio kodą, kad būtų užtikrintas sintaksinis tikslumas.
- Semantinė analizė : Šis žingsnis susideda iš kelių tarpinių etapų. Pirmiausia patikrinama žetonų struktūra ir jų eiliškumas atsižvelgiant į gramatiką tam tikra kalba. Prieigos rakto reikšmę išnagrinėja analizatorius ir analizatorius, kad galiausiai sugeneruotų tarpinį kodą, vadinamą objekto kodu. Objekto kodas apima instrukcijas, nurodančias atitinkamo ženklo procesoriaus veiksmus, kai jie aptinkami programoje. Galiausiai visas kodas yra analizuojamas ir aiškinamas siekiant patikrinti, ar įmanoma optimizuoti. Atlikus optimizavimą, atitinkami modifikuoti žetonai įterpiami į objekto kodą, kad būtų sugeneruotas galutinis objekto kodas, kuris išsaugomas faile.
