Toegangseisen
Algoritmiek, Fundamentele Informatica 2.
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.
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 LIACS 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, & Tools, second edition, Pearson / Addison Wesley, 2007, ISBN: 978-0-321-49169-5
Aanmelden
Aanmelden via Usis: Selfservice > Studentencentrum > Inschrijven
Activiteitencodes te vinden via de facultaire website
Contact
Onderwijscoördinator Informatica, Riet Derogee