Kursplan för Maskinorienterad programmering

Kursplan fastställd 2021-02-17 av programansvarig (eller motsvarande).

Kursöversikt

  • Engelskt namnMachine oriented programming
  • KurskodDAT017
  • Omfattning7,5 Högskolepoäng
  • ÄgareTKITE
  • UtbildningsnivåGrundnivå
  • HuvudområdeDatateknik, Informationsteknik
  • InstitutionDATA- OCH INFORMATIONSTEKNIK
  • BetygsskalaTH - Mycket väl godkänd (5), Väl godkänd (4), Godkänd (3), Underkänd

Kurstillfälle 1

  • Undervisningsspråk Svenska
  • Anmälningskod 52126
  • Max antal deltagare160
  • Sökbar för utbytesstudenterNej
  • Endast studenter med kurstillfället i programplan.

Poängfördelning

0116 Laboration 3 hp
Betygsskala: UG
0 hp0 hp3 hp0 hp0 hp0 hp
0216 Tentamen 4,5 hp
Betygsskala: TH
0 hp0 hp4,5 hp0 hp0 hp0 hp
  • 11 Mar 2024 em J
  • 31 Maj 2024 fm J
  • 23 Aug 2024 fm J

I program

Examinator

Gå till kurshemsidan (Öppnas i ny flik)

Behörighet

Grundläggande behörighet för grundnivå
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Särskild behörighet

Samma behörighet som det kursägande programmet.
Sökande med en programregistrering på ett program där kursen ingår i programplanen undantas från ovan krav.

Kursspecifika förkunskaper

En kurs i grundläggande imperativ programmering och en kurs i grundläggande datorteknik.

Syfte

Kursens syfte är att vara en introduktion till konstruktion av små inbyggda system och att ge en förståelse för hur imperativa styrstrukturer översätts till assembler samt för de svårigheter som uppstår vid programmering av händelsestyrda system med flera indatakällor.

Lärandemål (efter fullgjord kurs ska studenten kunna)

  • skriva enkla assemblerprogram med användande av den valda arkitekturens instruktionsuppsättning.
  • skriva enkla maskinorienterade C-program med användande av programspråkets datatyper och styrstrukturer.
  • beskriva motsvarigheten i assembler till typiska programstrukturer i C.
  • utnyttja de i kursen använda verktygen för programutveckling på ett adekvat sätt.
  • medverka vid konstruktion och programmering av enkla inbyggda system med givna komponenter.
  • konstruera system innefattande olika typer av undantag (interna undantag, avbrott, återstart).
  • beskriva och exemplifiera några olika typer av digitala kringkomponenter och deras användning.

Innehåll

Programutveckling i C och assemblerspråk, test och felsökning. Strukturerad assemblerprogrammering, grunder för kodgenerering. Första nivåns systemprogrammering, dvs. hur datorn programmeras för start från spänningstillslag och hantering av olika typer av undantag så som interna fel, händelser och avbrott. Programmering av kretsar för parallell in- och utmatning, tidshantering och programmering av räknarkretsar. Grunderna för datorkommunikation och programmering av kretsar för seriekommunikation. Dessutom implementeras ett enkelt tidsdelningssystem ( i C och assemblerspråk) med speciell tonvikt på användning av periferikretsar.

Organisation

Schemalagd undervisning består av föreläsningar, demonstrationer och handledda simulerings- och kodningsövningar. Dessutom utförs handledda obligatoriska laborationer. Under kursen konstruerar eleven större och större programblock i assembler och C. Teorin inhämtas genom föreläsningar och demonstrationer. Eleven konstruerar sina programoch testar dessa med hjälp av simulatorer under simuleringsövningar och självstudier. Inför laborationer anpassar eleven sina program så att funktionen dessutom kan verifieras i hårdvara.

Litteratur

Se kursens hemsida.

Examination inklusive obligatoriska moment

För att bli godkänd på kursen krävs godkänd skriftlig tentamen samt godkända laborationer. Baserat på tentamensresultatet ges betygen U, 3, 4 eller 5.

Kursens examinator får examinera enstaka studenter på annat sätt än vad som anges ovan om särskilda skäl föreligger, till exempel om en student har ett beslut från Chalmers om pedagogiskt stöd på grund av funktionsnedsättning.