DV1584 Kompilator- och översättarteknik

Programkurs, 7,5 Högskolepoäng, Grundnivå, vårterminen 2021

Denna kurs är del av program och går inte att söka till.

Målet med kursen är att studenten ska skaffa sig:

  • grundläggande kunskaper i teorin för översättning av programspråk
  • praktisk erfarenhet av kompilatorkonstruktion.

Kursen omfattar bland annat följande moment:

  • teori för formella språk, grammatik och översättning.
  • principer för lexikalisk, syntaktisk och semantisk analys.
  • konstruktion av en kompilator.

Fakta

  • Undervisningsform: Campus, dagtid, deltid 50%
  • Period: 2021 vecka 03 till 2021 vecka 12
  • Nivå: G1F
  • Anmälan: Denna kurs är del av program och går inte att söka till.
  • Språk: Undervisningen ges på engelska.
  • Ort: Karlskrona
  • Huvudområde: Datavetenskap
  • Kursplan: Ladda ner
  • Välkomstbrev: Denna kurs är en del av ett program och saknar välkomstbrev.
  • Förkunskapskrav: För tillträde till kursen ska studenten har avklarat 22,5 högskolepoäng i programmering inklusive datastrukturer och algoritmer.

Innehåll

Kursen innehåller följande:
• Grundläggande teori för formella språk, grammatik och översättning.
• Principer för lexikalisk, syntaktisk och semantisk analys.
• Kodgenerering.
• Exekveringsstrukturer.
• Orientering om verktyg för kompilatorkonstruktion.
• Konstruktion av en kompilator.

Lärandemål

Kunskap och förståelse
Efter genomförd kurs skall studenten:
• kunna använda grundläggande teori för formella språk, grammatik och översättning.
• kunna använda principer för lexikalisk, syntaktiskt och semantisk analys.
Färdighet och förmåga
Efter genomförd kurs skall studenten:
• kunna utforma, implementera och analysera lexikala analyser och tolkningar av symboler och satser i ett språk.
• kunna utforma, implementera och analysera en kodgenerator för ett språk.
• kunna utforma, implementera och analysera testserie som garanterar språktäckning.

Värderingsförmåga och förhållningssätt
Efter genomförd kurs skall studenten:
• kunna bedöma effekten av val av representation och algoritmer vid implementation av en kompilator.

Kurslitteratur och övriga läromedel

Material distribueras från institutionen

Kurslitteratur och övriga läromedel

Material distribueras från institutionen

Lärande och undervisning

Kursen består av föreläsningar, lärarledda laborationer och projektarbete. Föreläsningarna ger det teoretiska innehållet. Laborationerna används inledningsvis för grundläggande övningar och fungerar därefter som handledningsstöd under projektarbetet, som är uppdelat i två delar för att möjliggöra feedback tidigt i processen.

Arbetslivsanknytning

Ingen praktik ingår i planerade lärtillfällen. BTH strävar efter tät kontakt med näringslivet vid utveckling av kurser och program.

Lärare

Examinator
  1. Andrew Moss
Kursansvarig
  1. Andrew Moss

Tidsåtgång

I genomsnitt bör en student räkna med att studera 200 timmar för att nå lärandemålen.
I denna tid ingår alla olika förekommande lärandeaktiviteter (föreläsningar, självstudier, examination m. m.).
Tidsuppskattningen baseras på att ett akademiskt år omfattar 60 högskolepoäng (motsvarar 60 ECTS credits),
som svarar mot en total studietid på ca 1 600 timmar. Den faktiska studietiden varierar individuellt.

Bedömning

Examinationsmoment för kursen
Kod Benämning Högskolepoäng Betyg
1805 Projektuppgift del 1 1.5 G-U
1815 Projektuppgift del 2 3 A-F
1825 Projektuppgift del 3 3 A-F

Betyg

Kursen bedöms med betygen A Utmärkt, B Mycket bra, C Bra, D Tillfredsställande, E Tillräckligt, FX Otillräckligt, komplettering krävs, F Underkänd.

Kommande tentamenstillfällen

Inga kommande centralt samordnade tentamenstillfällen hittades för denna kurs.

För att få delta vid ett centralt samordnat tentamenstillfälle måste du ha anmält dig i Studentportalen senast 15 dagar innan tentamensdagen.


Lokal och tidpunkt publiceras ca 5 dagar innan tentamensdagen.


Det kan finnas andra planerade examinationstillfällen. Information om de finns i It's Learning eller på annan plats som kursansvarig hänvisar till.

Kursutvärdering

Kursansvarig ansvarar för att studenternas synpunkter på kursen systematiskt och regelbundet inhämtas och att resultaten av utvärderingar i olika former påverkar kursens utformning och utveckling.