Innehållsförteckning:
Definition - Vad betyder Compiler?
En kompilator är ett program som omvandlar källkod på hög nivå som är skriven av en utvecklare på ett programmeringsspråk på hög nivå till en objektskod på låg nivå (binär kod) på maskinspråk, vilket kan förstås av processorn. Processen att konvertera programmering på hög nivå till maskinspråk kallas kompilering.
Processorn kör objektkod, vilket indikerar när binära höga och låga signaler krävs i processorns aritmetiska logiska enhet.
Techopedia förklarar Compiler
En kompilator som omvandlar maskinspråk till naturligt högspråk kallas en dekompilerare. Kompilatorer som producerar objektkoden som är avsedda att köras på ett system kallas tvärkompilatorer. Slutligen kallas en kompilator som konverterar ett programmeringsspråk till ett annat en språköversättare.
En kompilator utför fyra huvudsteg:
- Skanning : Skannern läser ett tecken i taget från källkoden och håller reda på vilket tecken som finns i vilken rad.
- Lexikalisk analys : Compilern konverterar sekvensen med tecken som visas i källkoden till en serie teckensträngar (känd som tokens), som är associerade av en specifik regel av ett program som kallas en leksikalisk analysator. En symboltabell används av den leksikala analysatorn för att lagra orden i källkoden som motsvarar det genererade token.
- Syntaktisk analys : I detta steg utförs syntaxanalys, som involverar förbehandling för att avgöra om de token som skapats under lexikalisk analys är i rätt ordning enligt deras användning. Rätt ordning för en uppsättning nyckelord, som kan ge ett önskat resultat, kallas syntax. Kompilatorn måste kontrollera källkoden för att säkerställa syntaktisk noggrannhet.
- Semantisk analys : Detta steg består av flera mellansteg. Först kontrolleras tokens struktur tillsammans med deras ordning med avseende på grammatiken på ett visst språk. Betydelsen av tokenstrukturen tolkas av parsaren och analysatorn för att slutligen generera en mellanliggande kod, kallad objektkod. Objektkoden innehåller instruktioner som representerar processoråtgärden för ett motsvarande token när de stöter på i programmet. Slutligen analyseras och tolkas hela koden för att kontrollera om några optimeringar är möjliga. När optimeringarna väl kan utföras infogas lämpliga modifierade token i objektkoden för att generera den slutliga objektkoden, som sparas i en fil.
