Engelsk   Dansk
Velkommen til Københavns Universitets kursuskatalog

NDAA04011U  Oversættere (OV) Årgang 2014/2015

Engelsk titel
Introduction to Compilers (OV)

Kursusinformation

SprogEngelsk
Point7,5 ECTS
NiveauBachelor
Varighed1 blok
Placering
Blok 2
Skemagruppe
C (man 13-17 + ons 8-17)
KursuskapacitetNo limit
Efter- og videreuddannelse
StudienævnStudienævn for Matematik og Datalogi
Udbydende institut
  • Datalogisk Institut
Kursusansvarlig
  • Cosmin Eugen Oancea (13-667276706c713172647166686443676c316e7831676e)
Gemt den 04-12-2014
Uddannelse
Bacheloruddannelsen i datalogi
Kursusindhold

 

Formål: At give de studerende indsigt i, hvordan programmer skrevet i højniveausprog oversættes til kode på maskiniveau.

I undervisningen gennemgås de forskellige faser af en oversætter:
Leksikalsk analyse, syntaksanalyse, typecheck, kodegenerering samt registerallokering. De grundlæggende metoder til disse faser
gennemgås, inklusive brug og virkemåde af semi-automatiske værktøjer.  Forskelle mellem fortolkning og oversættelse beskrives.

I forbindelse med leksikalsk analyse og syntaksanalyse vises det,
hvordan beskrivelser, der er bekvemme for mennesker (hhv. regulære udtryk og kontekstfri grammatikker), bliver omformet til automater, som er bekvemme for datamater. Disse omformninger er grundlaget for værktøjer, der automatisk kan lave leksikalske analysatorer og syntaksanalysatorer ud fra beskrivelser.

I forbindelse med generering af mellem- og maskinkode gennemgås,
hvordan man på basis af den syntaktiske struktur af et program kan danne maskinkode. Der bliver vist forskellige metoder til at
administrere lager for oversatte programmer, og hvordan det fårindflydelse på, hvilken kode man genererer. Desuden gennemgås metoder til typecheck af programmer, registerallokering og optimering.

 

Målbeskrivelser

Kompetencer

 

  • at designe og implementere en oversætter fra et højniveaussprog til maskinkod;
  • at vurdere og bruge passende værktøjer og biblioteker til oversættelsesprocessen;
  • at vurdere ressourceforbrug (tid og plads) af højniveausprogrammer fra deres oversættelse til maskinkod.

Færdigheder

 

 

  • at bruge værktøjer til leksikalsk og syntaktisk analyse kompetent;
  • at beskrive og vurdere oversætterudvikling i skriftlig form.

Viden

 

 

  • at redegøre faseopdeling af oversættelsesprocessen og deres særlige formål
  • at anvende teoretisk indsigt på: Formelle sprog, regulært udtryk, kontekstfri grammatikker, graffarvning;
  • at forklare hvordan oversætterværktøjer arbejder, og deres begrænsninger

 

Undervisningsmateriale

Se Absalon når kurset er blevet oprettet. Forventes at være: Torben Mogensen, "Introduction to Compiler Design", Springer, 2011.

Undervisningsform
Undervisningen vil foregå med en kombination af forelæsninger, øvelser og en praktisk project (med rapport). Rapportopgaven stilles ved kursets start og afleveres I to uger før examen, og løses i grupper på indtil tre personer, Desuden er der fem mindre ndividuelle opgaver.
Faglige forudsætninger
Kendskab til maskinkodeprogrammering samt programmering i Standard ML.
Tilmelding
Selvbetjeningen på KUnet
Eksamen
Point7,5 ECTS
Prøveform
Skriftlig prøve, 4 timer med opsyn.
Skriftlig prøve med visse hjælpemidler (skriftlige hjælpemedler), 4 time.
Krav til indstilling til eksamen1. Projekt-rapporten skal være godkendt.
2. Mindst fire ud af de fem ugeopgaver skal være godkendt. Der er mulighed for genaflevering af de fire første ugeopgaver, såfremt de ikke godkendes i første omgang.
Af hensyn til tidsrammen er det ikke muligt at genaflevere project-rapporten eller den femte ugeopgave.
HjælpemidlerSkriftlige hjælpemidler tilladt
Bedømmelsesform7-trins skala
CensurformEkstern censur
ReeksamenMundtlig prøve (30 min. inkl. votering) med forberedelse (30 min) med skriftlige hjælpemidler. Ved mere end 10 tilmeldte afholdes 4 timers skriftlig prøve med skriftlige hjælpemidler (som ordinær eksamen).
Kriterier for bedømmelse

Se målbeskrivelse.

Arbejdsbelastning
KategoriTimer
Forelæsninger28
Eksamen4
Projektarbejde80
Praktiske øvelser14
Forberedelse80
I alt206
Gemt den 04-12-2014