Du skriver kode i Python eller C++. Computeren forstår kun binær kode. En compiler er et program, der oversætter kildekode til maskinkode. Den læser hele dit program, kontrollerer for fejl og producerer en eksekverbar fil. Når det er kompileret, kører programmet uden compileren.
Compilere gør mere end at oversætte. De optimerer. En god compiler fjerner overflødige instruktioner, omarrangerer operationer og allokerer registre effektivt. Forskellen mellem en naiv oversættelse og en optimeret kan være ti gange så hurtig.
Faser af kompilering
- Leksikalsk analyse: opdeler kode i tokens
- Parsing: opbygger et syntakstræ
- Semantisk analyse: kontroltyper og omfang
- Optimering: forbedrer ydeevnen
- Kodegenerering: producerer maskinkode
Ikke alle sprog bruger compilere. Fortolkede sprog som Python udfører kode linje for linje. Just-in-time-compilere blander begge tilgange og kompilerer hot code-stier under kørsel. Hver strategi bytter opstartshastighed med udførelseshastighed.
Comments
No comments yet. Be the first to share a thought.
Leave a comment