bild
Skolan för
elektroteknik
och datavetenskap

Kursanalys: Maskinnära programmering och datorarkitektur, maskin11

Kursdata

Tid: period 3 läsåret 2010-2011

Poängantal: 7,5 hp

Examination: labbar, tenta

Föreläsningar: 28 timmar

Kursledare och föreläsare: Stefan Nilsson

Antal registrerade: 43

Antal elever som gjort något synligt på kursen: 36

Godkända: 30 (2011-03-31)

Prestations- och examinationsgrad: 83%

Kurslitteratur

  • Computer Science, An Overview, 10th ed., J. Glenn Brookshear.

Mål

Efter fullgjord kurs ska kursdeltagare kunna

  • beskriva hur datorprogram och data lagras i datorn,
  • beskriva hur datorprogram exekveras på olika nivåer,
  • beskriva hur datorer tolkar och exekverar maskinkod
  • beskriva hur datorer är uppbyggda läsa, förstå samt skriva C- och assemblerprogram för x86 arkitekturen i Unix-miljö,
  • använda dina kunskaper för att skriva effektiva datorprogram som utnyttjar datorns uppbyggnad.

Förändringar denna kursomgång

Då kursdeltagarna huvudsakligen kommer från CI och I så har jag minskat fokus på effektiv programmering och x86 och kommer nästa år att helt ta bort dessa moment ur kursen.

Labb 2 har ersatts med en ny labb som handlar om ett fiktivt assembler och maskinspråk NIC.

Labb 3 har ersatts med en ny labb som handlar om webbutveckling i HTML5 och CSS.

Jag har också bytt kursbok, från en smal och specialiserad bok om datorarkitektur för programmere till en översiktbok om datorsystem.

Planerade förändringar inför nästa kursomgång

Jag planerar att uppdatera den första labben så att den blir tydligare, både när det gäller innehåll och instruktioner.

Jag planerar också att utöka den tredje labben till att även behandla JavaScript.

Kursenkät


  • Upplever du kursen som lätt eller svår?

    1. 15% (2 st) Mycket lätt.
    2. 23% (3 st) Lätt.
    3. 62% (8 st) Medel.
    4. 0% (0 st) Ganska svår.
    5. 0% (0 st) Mycket svår.


  • Fick du i början av kursen tillräckligt klart för dig vad kursens mål är?

    1. 62% (8 st) Ja.
    2. 31% (4 st) Tveksam.
    3. 8% (1 st) Nej.


  • Tycker du att kursen är intressant?

    1. 77% (10 st) Ja, mycket.
    2. 23% (3 st) Ja.
    3. 0% (0 st) Neutral.
    4. 0% (0 st) Inte särskilt.
    5. 0% (0 st) Nej.


  • Förkunskapskraven för kursen är DD1320/DD1321. Tycker du att dina förkunskaper var tillräckliga när kursen startade?

    1. 85% (11 st) Ja.
    2. 8% (1 st) Tveksam.
    3. 0% (0 st) Nej.


  • Vad tycker du om kursboken Computer Science, An Overview?

    1. 23% (3 st) Mycket bra.
    2. 54% (7 st) Bra.
    3. 15% (2 st) Hyfsad.
    4. 0% (0 st) Mindre bra.
    5. 0% (0 st) Dålig.
    6. 8% (1 st) Har inte använt den.

    Ev. kommentar om boken:

    Seg på att skickas, men av det lilla jag har läst i den så verkar den välskriven och pedagogisk.
    ---
    Fick boken väldigt sent på grund av leveransfel från Lycknis så det var svårt att komma igång från början. Föreläsningarna har dock täckt upp bra!
    ---
    Med tanke på att vi bara hade användning av mindre del av boken och priset får den betyg 3/5. Vill dock tillägga att de delar vi läste var mycket intressanta och enkelt förklarade.
    ---
    Väldigt bra bok på det sättet att den ger en väldigt bra överblick. Dock kanske något "gund"; det är en svår avvägning.
    ---
    En bra bok som är rakt på sak!
    ---
    Denna bok Computer Science An Overview beskriver allmänt väldigt mycket hur bitoperation, CPU, OS och Nätverk fungerar. Det går att ta in information mer förståeligt med hjälp nyckelorden (begreppen) placerade i kapitlen.
    ---
    Inte särskilt heltäckande men skriven på ett lättilgängligt sätt. Bra bok!
    ---
    Den var lätt och intressant


  • Hur stor del av föreläsningarna har du varit på?

    1. 15% (2 st) Mindre än 20%.
    2. 0% (0 st) 20-40%.
    3. 8% (1 st) 40-60%.
    4. 23% (3 st) 60-80%.
    5. 54% (7 st) Mer än 80%.


  • Vad tycker du om föreläsningarna pedagogiskt sett?

    1. 15% (2 st) Mycket bra.
    2. 54% (7 st) Bra.
    3. 15% (2 st) Acceptabelt.
    4. 8% (1 st) Mindre bra.
    5. 0% (0 st) Dåligt.
    6. 8% (1 st) Har inte deltagit.

    Ev. kommentar (gärna konstruktiv):

    Det vi pratar om är inte alltid helt relevant för kursen, men alltid väldigt intressant och gör att man lär sig mycket och vill lyssna. Svår balansgång, men ligger på en bra nivå.
    ---
    Ostrukturerat.
    ---
    Överlag bra föreläsningar.
    MYCKET bra att föreläsningens olika ämnen/avsnitt skrivits upp på tavlan vare gång!
    Pga ämnet och den lilla klassen har det ofta känts "mysigt" i klassrummet.
    Det negativa har dock varit tendens till att glida ifrån ämnet och in i olika debatter, t.ex. vem/vilka företag som äger kod osv. Inget fel i det OM vi elever engageras som i ett mini-seminarium, annars känns det lite dåligt (i brist på ett bättre ord) att en föreläsare som uppenbart stödjer en sida motvilligt försvarar den andra för att han måste. Bra dock att dessa debatter tas upp, det uppmärksammar oss om problem vi kanske inte visste fanns!

    ---
    Föreläsningarna kunde gärna vart mer ingående, speciellt i början. Föreläsaren summerade föreläsning 1-4 på den 5:e föreläsningen om jag inte minns fel på nr.
    Föreläsaren svävade också iväg på vissa ämnen istället för att fokusera på vad som skulle tas upp. Men det som togs upp togs upp väldigt bra på ett intressant sätt med bra exempel.

    ---
    Att föreläsningen gick igenom de begreppen som ansågs vara viktiga för kursen. Med hjälp av föreläsnings anteckningar kunde begreppen förtydligas i boken.
    ---
    Intressanta och roliga men det var ganska svårt att få ut matterial att plugga på av dem.


  • Förbereder du dig till föreläsningarna (läser igenom relevanta avsnitt i boken/kompendiet etc)?

    1. 8% (1 st) Ja, alltid.
    2. 23% (3 st) Ofta.
    3. 23% (3 st) Ibland.
    4. 15% (2 st) Sällan.
    5. 31% (4 st) Aldrig.


  • Hur stor del av labbarna har du varit på?

    1. 15% (2 st) Mindre än 20%.
    2. 8% (1 st) 20-40%.
    3. 23% (3 st) 40-60%.
    4. 15% (2 st) 60-80%.
    5. 38% (5 st) Mer än 80%.


  • Vad tycker du om labbarna pedagogiskt sett?

    1. 15% (2 st) Mycket bra.
    2. 23% (3 st) Bra.
    3. 23% (3 st) Acceptabelt.
    4. 15% (2 st) Mindre bra.
    5. 8% (1 st) Dåligt.
    6. 15% (2 st) Har inte deltagit.

    Ev. kommentar (gärna konstruktiv):

    Mer info om t.ex. kodspråket som ska användas hade varit bra. T.ex. tog det en vecka efter första labben innan vi fick reda på hur C-kod ska skrivas.
    ---
    Intressanta och användbara laborationer! Det är bra med verklighetsanknytna labbar där man kan relatera till relevanta problem.
    ---
    Katastrofalt dålig förberedelse.
    ---
    Det skulle finnas mer schemalagd labbtid! Oftast var labbtiden den första tiden man kunde labba tillsammans (om man var två) och under den första labbtiden har man oftast inte greppat hur man ska tänka/göra. När man väl gjort det är det dock försent för att få hjälp eftersom labben ska redovisas på nästa tillfälle.
    ---
    Redovisade bara.
    ---
    Jag tycker labb 1 gav dålig föreberedelse till, men lab 2 och 3 hade väldigt bra struktur, och tillräcklig förståelse. Labb 2 skulle jag vilja ge extra kredit eftersom den rent av var rolig och göra!
    ---
    Inför första labben var jag inte alls nöjd, jag tycker vi fick för lite information.. Men de andra har varit superbra, helt klart vad som ska göras!
    ---
    Den första labben var jättesvår medan den andra var lagom och den sista var lätt.


  • Får du den hjälp du behöver på labbarna?

    1. 38% (5 st) Javisst.
    2. 23% (3 st) Javars.
    3. 23% (3 st) Acceptabelt.
    4. 0% (0 st) Sällan.
    5. 0% (0 st) Aldrig.

    Ev. kommentar:

    Svårt med nästan 30 elever och bara en lärare, men med hjälp av varandra lyckades vi lösa det mesta.
    ---
    Skulle varit bra med någon ytterligare assistent under den första laborationen för att hinna förklara oklarheter för studenterna. Ibland är det svårt att flyga första gången man försöker.
    ---
    Man får viss hjälp men oftast uppkommer frågor vid andra tillfällen än labbtiden, och då sitter man där ensam. (Se tidigare svar: "Det skulle finnas mer schemalagd labbtid! Oftast var labbtiden den första tiden man kunde labba tillsammans (om man var två) och under den första labbtiden har man oftast inte greppat hur man ska tänka/göra. När man väl gjort det är det dock försent för att få hjälp eftersom labben ska redovisas på nästa tillfälle.")
    ---
    Redovisade bara.
    ---
    Ett kösystem skulle hjälpa väldigt mycket, men när man fick hjälp så var hjälpen bra.


  • Hur mycket tid ägnade du åt labb 1?

    1. 23% (3 st) Mindre än 9 tim.
    2. 0% (0 st) 9-14 tim.
    3. 38% (5 st) 15-20 tim.
    4. 31% (4 st) Mer än 20 tim.

    Ev. synpunkter på labb 1:

    För svår för att bara svara en del av första modulen.
    ---
    Intressant labb, men det var rätt svårt. Kraven för att få ett A var relativt sett högre i labb 1 än i övriga labbar.
    ---
    Rolig men på tok för svår egentligen. Gör om eller dra ner på antal uppgifter.
    ---
    Lite för tung.
    ---
    Alldeles för svår. Också väldigt svårt att veta när man passerat godkäntgränsen. Visst stog det "X poäng för E" men eftersom man inte riktigt visste hur många poäng man hade (eftersom de lösta uppgifterna viktades) var man VÄLDIGT stressad till en början.
    ---
    Svår. Mycket svår. Kan ha spenderat mer än 20h på den, svårt säga för gjorde lite här och där. För högt betygskriterium jämfört med övriga labbar.
    ---
    Dålig förberedelse inför labben, vissa uppgifter var extremt svåra att göra
    ---
    Laboration1 var väldigt klurig och lärorik. Det krävdes att hitta korta och effektiva lösningar, som gav väldigt hög förståelse över bitoperationer.
    ---
    För lite labbtid för svårt för många uppgifter


  • Hur mycket tid ägnade du åt labb 2?

    1. 31% (4 st) Mindre än 9 tim.
    2. 15% (2 st) 9-14 tim.
    3. 38% (5 st) 15-20 tim.
    4. 8% (1 st) Mer än 20 tim.

    Ev. synpunkter på labb 2:

    Kul labb!
    ---
    Rolig labb! Enklare att visualisera med NIC än labb 1.
    ---
    Mycket givande och kursrelaterad.
    ---
    Favoritlabben! Bra med många olika typer av uppgifter att lösa, som man kunde tolka lite olika och att man fick välja sina "favoriter" att göra på labblydelsen; att man inte behövde göra alla för A.
    Den labb jag tror gett mig mest kunskaper inför framtiden.

    ---
    För lågt betygskriterium jämfört med labb 1. Antingen behöver labb 1 eller labb 2 justeras med avseende på betygskriterierna.
    ---
    Bra labb!!
    ---
    Laboration2 var väldigt lärorik och genomgående inför förståelsen över funktionen hur maskinnära kod exekverar.
    ---
    Bäst! Kändes som en perfekt labb.


  • Bedöm hur lång tid du lägger ner på labb 3

    1. 54% (7 st) Mindre än 10 tim.
    2. 31% (4 st) 10-17 tim.
    3. 0% (0 st) 18-25 tim.
    4. 8% (1 st) Mer än 25 tim.

    Ev. synpunkter på labb 3:

    Lätt ör oss som kan HTML sedan tidigare, men på ok nivå för de som inte kan den. Just HTML är en sån sak som många har lekt med tidigare, och är kanske inte värt en tredjedel av slutbetyget.
    ---
    Lätt att få feedback då man kan uppdatera hemsidan hela tiden! Roligt och lärorikt, men har mindre med maskinnära programmering att göra än övriga moment i kursen.
    ---
    Rolig men känns inte särskilt kopplad till kursen.
    ---
    jag har webbutvecklat tidigare
    ---
    VÄLDIGT kort deadline om man satsar på A och aldrig kodat i HTML tidigare och man har andra kurser samtidigt (som de flesta har...)
    ---
    Har inget i denna kurs att göra. Hade varken med maskinnära programmering eller datorarkitektur att göra enligt mig.
    ---
    bra labb!
    ---
    För laboration3 var det mycket att ta in på kort tid. Men med länkarna till w3shools.com. gick det att lära sig snabbt och effektivt på väldigt kort tid medans html sidan byggdes upp.
    ---
    Tog ca 2,5 tim ( med lite hjälp)


  • Var någon/några av labbarna mer givande än de övriga? (Du kan kryssa för flera alternativ.)

    1. 31% (4 st) Laboration 1
    2. 69% (9 st) Laboration 2
    3. 62% (8 st) Laboration 3


  • Hur tycker du att tentan speglade kursinnehållet?

    1. 31% (4 st) Mycket bra.
    2. 31% (4 st) Bra.
    3. 15% (2 st) Hyfsat.
    4. 0% (0 st) Mindre bra.
    5. 0% (0 st) Dåligt.
    6. 15% (2 st) Tentade inte.


  • Hur många andra kurser har du läst parallellt med den här kursen (i period 1)?

    1. 15% (2 st) En.
    2. 62% (8 st) Två.
    3. 15% (2 st) Tre.
    4. 8% (1 st) Fyra eller fler.


  • Hur stor del av din totala studietid under period 1 har du ägnat åt den här kursen?

    1. 0% (0 st) Mindre än 15%.
    2. 38% (5 st) 15-30%.
    3. 23% (3 st) 30-50%.
    4. 38% (5 st) 50-70%.
    5. 0% (0 st) Mer än 70%.


  • Kursen är på 7,5 hp. Vad tycker du om det jämfört med andra kursers poängantal?

    1. 15% (2 st) Borde vara högst 6 hp.
    2. 85% (11 st) Lagom med 7,5 hp.
    3. 0% (0 st) Borde vara minst 9 hp.


  • Upplever du att du särbehandlats i denna kurs på grund av genus, sexualitet, etnisk tillhörighet eller funktionshinder?

    1. 0% (0 st) Ja.
    2. 0% (0 st) Tveksam.
    3. 100% (13 st) Nej.

    Om ja, på vilket sätt?


  • Förslag till förbättringar av kursen:

    Eventuellt göra Labb1 som en självstående del, och ha labb2 och 3 som en modul.
    ---
    Jag tycker att labbarna har varit givande, och jag har lagt ned nästan lika mycket tid på varje labb. Det skulle kännas bättre om alla labbar fick samma del av slutbetyget.
    ---
    Bättre struktur på föreläsningarna. Gör om labb 1, bitpussel är roligt men tar på tok för lång tid i relation till labbtid och de övriga labbarna.
    ---
    Om det ska diskuteras sociala/juridiska aspekter av det vi lär oss borde 1 föreläsning vigas åt ett seminarium där även vi studenter får deltaga i debatten. Tidmässigt lades det nog ned mer än 2x45min under kursens gång på denna typ av diskusssioner, då det skulle inte skada.
    ---
    Nog för att jag hade nytta av att lära mig HTML och CSS så tycker ändå att det inte något som bör ingå i en kurs om Maskinnära programmering och datorarkitektur.
    ---
    Det skulle behövas mer djupare genomgång över de begreppen för de olika kapitlen i boken för att få mer förståelse. Detta eftersom boken beskriver ibland med dessa begrepp med en kort sammanfattning.
    ---
    Ta upp mer avancerat material.
    ---
    Labb 1 måste förändras, klarades enbart genom klass samarbete


  • Ytterligare kommentarer om kursen:

    Väldigt givande, och väldigt intressant. Ser fram emot tentan om två veckor.
    ---
    Bra jobbat!
    ---
    Jag har kompisar som går Data år 3 som tycker att vi verkar ha fått en "light version" av vad Maskinnära Programmering & Datorarkitektur egentligen är/borde vara. Delvis kan jag hålla med dem; föreläsningarna och kursboken har varit relativt "lätta" och överblickande (OBS! Jag hade inga kunskaper inom något som tagits upp under kursen så det är inte jag som är partisk) men labbarna har varit supersvåra och väldigt tuffa tidsmässigt. Det vore bra om man kunde kolla på denna balans till nästa kursomgång.

    Min favoritkurs på KTH sedan jag började här.

    ---
    Labbarna kändes väldigt obalanserade.
    Labb 1 var ohygligt mycket svårare än de övriga två labbarna med avseende på betygskriterierna. Man behövde så gott som full pott för att få ett A, medans på labb 2 så kunde man utan problem skippa 3-4 uppgifter och ändå få A. Och i labb 3 så var det nästan bara copy / paste från w3schools.com (men som sagt, tycker inte labb 3 hade något i den här kursen att göra).

    Jag tycker även att tentan borde innehålla 1-2 problem till.

    ---
    Kursen var mycket svårare för två år sedan.
    ---
    Trevlig kurs

  • Copyright © Sidansvarig: Stefan Nilsson <snilsson@nada.kth.se>
    Uppdaterad 2011-03-31