Compiler: Forskelle mellem versioner
Content deleted Content added
Glenn (diskussion | bidrag) →Oversættelsesprocessen: +links, tilføj |
Glenn (diskussion | bidrag) +illu |
||
Linje 23:
*Kommentarer fjernes fra kildekoden.
*Der foretages en [[leksikalsk analyse]], der resulterer i en liste af symboler, som kan genkendes af oversætteren. Eksempelvis gøres
'abekat=abe+kat;'
til
# og evt. i hvert sit objekt:
'abekat', '=', 'abe', '+', 'kat', ';'
Processen håndterer også, at programmeringssprog som [[C (programmeringssprog)|C]] og [[Java (programmeringssprog)|Java]] eksempelvis både bruger '+', '++', '+=', '=' og '=='.
*Der opbygges et [[parsetræ]], ud fra programmeringssprogets grammatik.
Line 33 ⟶ 36:
Der dannes en fil med output for hver fil med kildekode, der kan udføres. Kildefiler, der kun indeholder definitioner af konstanter og variabler resulterer ikke i en outputfil.
[[File:Chaîne de compilation.svg|thumb|700px|center|Kasserne er delprocesserne i oversættelsen. (pt fransk)]]
Resultatet af oversættelsen skal behandles af en en [[assembler]] og siden en [[linker]] før der er kommet et færdigt program ud af det.
|