Toegangseisen
Niet van toepassing.
Beschrijving
Computerprogramma’s in een hogere programmeertaal kunnen pas uitgevoerd worden door een computer als ze zijn vertaald naar lager-niveau code. In veel gevallen gebeurt dit door een compiler.
Bij dit vak leren we hoe compilers in verschillende stappen broncode omzetten in assemblycode. We bestuderen de theorie achter compilers, en passen deze toe bij het practicum, in een serie opdrachten waarbij we een eenvoudige compiler construeren.
Onderwerpen die aan de orde komen tijdens de colleges hebben betrekking op het proces van de constructie van een compiler, b.v.: lexical analysis, syntax analysis, semantic analysis, intermediate code generation, code generation, en code optimization.
Aanbevolen voorkennis: Algoritmiek, Fundamentele Informatica 2
Leerdoelen
Inzicht verwerven in de functionaliteit van de verschillende fasen van het compileerproces, en hoe deze fasen aan elkaar gerelateerd zijn. Vertrouwd raken met de verschillende stappen in de constructie van een compiler en de problemen die daarbij optreden.
Rooster
Het meest recente rooster is te vinden op de Studenten-website:
Onderwijsvorm
Hoorcollege, werkcollege en een practicum met vier programmeeropdrachten.
Toetsing
Schriftelijk tentamen aan het eind van het semester. Het eindcijfer van het vak is een gewogen gemiddelde van de cijfers voor het tentamen (50%) en het practicum (50%). Zowel tentamen als (alle) programmeeropdrachten moeten voldoende zijn.
Literatuur
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Compilers: Principles, Techniques, and Tools, second edition, Pearson New International Edition, 2013, ISBN 9781292024349.
Aanmelden
Aanmelden via Usis: Selfservice > Studentencentrum > Inschrijven Activiteitencodes te vinden via de facultaire website
Contact
Onderwijscoördinator Informatica, Riet Derogee