Yliopiston etusivulle Suomeksi På svenska In English
Helsingin yliopisto Tietojenkäsittelytieteen laitos
 

Tietojenkäsittelytieteen laitos

in English suomeksi

Kurssin aikataulu ja sisältö

Tietokoneen toiminta (4 op), Kevät 2010
Computer Organization I (4 cr), Spring 2010

Tämä aikataulu- ja sisältösivu päivittyy aina tarpeen tullen eli siis aika usein o. Tarkkailkaa tätä sivua ainakin viikoittain kurssin aikana. Kurssin sisältö voi vielä jonkin verran muuttua aika myöhäänkin. Olen kiitollinen kaikista ilmoituksista koskien materiaalin puutteita. Kiitos.

18.10.2010 TitoTrainer on muuttanut. Uusi osoite on http://titotrainer2.users.cs.helsinki.fi. o

20.5.2010 Kurssin arvostelu on valmistunut. Kurssin tulokset ja kurssikuulustelun arvosteluperusteet ovat näkyvillä verkossa muutaman viikon ajan. o
Course grading is completed. Course results and exam grading guidelines (only in Finnish, sorry) are in the web for a few weeks. o

31.3.2010 Kirjanpitolistalta on poistettu opiskelijat, joilla ei ole suorituksia vielä. Jos teitä ei tarkistuslistalla, mutta olette vielä suorittamassa kurssia, pyytäkää luennoitsijaa palauttamaan teidät listoille. o
Seemingly passive students have been removed from the bookkeeping list. If there is an error in your part, please contact the lecturer. o

22.3.2010 Kaikkien tulisi olla tämän viikon jälkeen opintopiirissä eli kaikkien nimi tulisi löytyä projektin 2 statussivulta. Jos teillä ei ole vielä opintopiiriä ja haluatte minun yrittää löytävän teille opintopiiripartnerin tai kaksi, mailatkaa minulle asiasta 26.3 klo 12:00 mennessä. Opintopiirikavereita voi myös yrittää paikallistaa vielä tämän viikon harjoitustilaisuudessa.
Evrybody should be in study circles after this week and find their names in project 2 status page. If you still do not have a study circle and want me to find you partners for it, please email me about it by 26.3. noon. Please mention "English speaking only" in your email so that I do not pair you up someone not willing to speak English. One can also try to locate study circle partners in this week practice session.

19.3.2010 Palvelin http://db.cs.helsinki.fi bootattiin eilen illalla, jonka jälkeen Titotrainer2 ei toiminut. Asia korjattiin tänään noin klo 10:30.
Server http://db.cs.helsinki.fi was booted yesterday evening and Titotrainer2 has been down since. Problem was solved today around 10:30.

HUOM: Ohjeita on aika paljon, mutta kurssin suoritusmenetelmä vaatii niiden kaikkien lukemista ja noudattamista. Ohjeiden lukemiseen käytetty 15 minuuttia säästää varmasti ainakin 60 minuuttia aikaanne jatkossa. Lukekaa kaikki ohjeet, erityisesti tämä aikataulusivu. Kiitos.

Ryhmätapaamiset alkavat heti kurssin ensimmäisellä viikolla. Opintopiirit muodostetaan tuossa ensimmäisessä tapaamisessa. Poissaolijoiden tilalle otetaan uusia opiskelijoita. Jos ette ensimmäisen viikon jälkeen vielä kuulu mihinkään opintopiiriin ja aiotte silti osallistua tähän kurssiin, teidän tulisi ensi tilassa ottaa yhteys omaan ohjaajaanne. Opintopiireihin kuulumattomat opiskelijat poistetaan kurssin listoilta toisen viikon jälkeen. Opintopiirit ja niihin kuuluvat opiskelijat ovat näkyvissä projektin pr2 statussivulla.

Jos keskeytätte kurssin, niin olisi kohteliasta ilmoittaa omalle opintopiirille asiasta, jotta muille opintopiiriläisille ei koituisi keskeyttämisenne vuoksi turhaa haittaa. Muihin opintopiiriläisiin saa helposti yhteyden sähköpostitse tai puhelimitse. Jos opintopiirin jäsenestä ei ole vähään aikaan (2-3 päivään?) kuulunut mitään, niin opintopiiri voi katsoa kyseisen opiskelijan keskeyttäneeksi ja toimia sen mukaisesti. Opintopiirin ei kannata lykätä uudelleenjärjestäytymistä turhan pitkään, koska kurssi on vain 6 viikkoa pitkä.

Huom 1: Kaikilla oppilailla tulee olla TKTL:n käyttäjätunnus laitoksen Linux- ja Windows-järjestelmien käyttämistä varten. Sivuaineopiskelijoilla tulee olla ensin haettuna Tietotekniikkaosaston UNIX-tunnus eli ns. cc-tunnus

Huom 2: Kaikkien tulee olla ilmoittautunut kurssikirjanpitoa varten tälle kurssille TKTL:n ILMO järjestelmään. Jos et ole tehnyt sitä vielä, niin tee se ystävällisesti nyt heti. Laita myös opiskelijanumerosi ILMOon. Kiitos.

Sisältö


Tavoite

Päätavoitteena on ymmärtää tietokonejärjestelmän keskeiset piirteet suoritettavan ohjelman näkökulmasta: miten tietokonejärjestelmä on rakennettu ja miten se suorittaa sille annettua ohjelmaa. Pääpaino on yhden ohjelman suorituksella konekielen tasolla. Tavoitteena on myös ymmärtää käyttöjärjestelmän perustoiminnot ja rooli ohjelman suorituksen kannalta.

Tavoite on tarkemmin kuvattu kurssikuvauksessa ja oppimistavoitteissa.

Kurssin muoto: opintopiiri- ja verkkokurssi

Kurssi toteutetaan opintopiirejä käyttäen. Tämä tarkoittaa sitä, että opiskelijat ryhmäytyvät pienryhmiin (opintopiireihin), joissa tehdään sekä tavanomaisia laskuharjoituksia että suurempia projekteja. Kantavana ajatuksena ja ideana opintopiireissä on se, että yhdessä opiskellen oppii paremmin. Kun selittää asiaa toiselle, niin oppii itsekin ja/tai huomaa aukkoja omassa osaamisessaan. Sen lisäksi opintopiirit voivat tavata itse sopiminaan aikoina eri tiloissa yliopistolla.

Tämä kurssi toteutetaan verkkokurssina. Siihen sisältyy siten tiedotuksen lisäksi merkittävä määrä verkossa olevan materiaalin käyttöä ja verkon käyttöä suunnitelmalliseen kurssin sisäisen kommunikointiin. Kurssin toteutus verkkokurssina ei tarkoita, että kurssin voisi suorittaa puhtaasti etäopiskeluna. Läsnäolo kampuksella kurssin aikana on aika ajoin välttämätöntä.

Tavallisina luentoja on yksi viikossa. Sen muotona on yhteenveto- ja keskusteluluento, joka käsittelee aikataulun mukaan edeltävän viikon asioita.

Yleistä

  • Kurssiin liittyvät yleiset asiat (siis muut kuin erityisesti tähän verkkokurssiin liittyvät asiat) ovat kurssin kotisivulla.
  • Tällä aikataulusivulla on tämänkertaisen kurssin perustiedot.
  • Jos haluatte (nopeaa) reagointia (esim. jokin verkkosivu ei aukea tms) luennoitsijalta, niin käyttäkää sähköpostia. Kaikkia kurssilaisia kiinnostavat asiat julkaistaan luennoitsijan puolesta tällä sivulla.

Ohjausajat (Instruction Schedule)

Ohjausajoilla tarkoitetaan niitä aikoja, jolloin kurssin vastuuhenkilö tai ohjaaja on henkilökohtaisesti paikalla.

Luennot

Lectures

Suomeksi
15.3.-26.4.2010

ma 12-14 (CK112)
Teemu Kerola

In English in English
15.3.2010 Intro 26.4.2010 Summary

Mon 14-16 (C220) Teemu
Kerola



Harjoitukset


Practice Meetings

HUOM:
alkavat heti
1. viikolla!

15.3-30.4.2010

NOTE: Starting on 1st week of lectures!

ti 12-14 (C222)
Päivi Kuuppelomäki

ke 14-16 (B119)
Wed 14-16
Some/all tables
in English in English

Teemu
Kerola
ke 16-18 (C222) Heikki
Korhola

pe 12-14 (C222)

Päivi Kuuppelomäki
Kurssikuulustelu
Exam
3.5.2010
16-19 (A111)

Kokeet/Exams K2010 check!

Teemu Kerola

Arviointi

Yhteensä jaossa yli 60 p, joista 30 p tarvitaan läpipääsyyn. Normaalit arvosanarajat ovat: 1 (30 p), 2 (35 p), 3 (40 p), 4 (45 p) ja 5 (50 p). Näitä voidaan tarpeen vaatiessa muuttaa.

Kurssin osiot, niiden maksimipistemäärät ja minimivaatimukset:

  • Harjoitustehtävät (mukaanlukien osa TitoTrainer tehtävistä): 6 p, minimivaatimus 1 p
    • Tehtävät arvioidaan harjoitustehtäväpisteinä (htp), jotka skaalataan lineaarisesti arvosanaan vaikuttaviksi pisteiksi. Maksimipisteet saa noin 90%'lla max htp:stä.
  • Projektit: 14 p, minimivaatimus 1 p
    • Projektit arvioidaan projektipisteinä (pp), jotka skaalataan lineaarisesti arvosanaan vaikuttaviksi pisteiksi.
    • Projekti pr1: TitoTrainer tehtävät, 12 pp, minimivaatimus 0 pp
    • Projekti pr2: Kertaustehtävien laadinta, 16 pp (8pp molemmista osista a ja b), minimivaatimus 0 pp
  • Kurssikuulustelu: 40 p, minimivaatimus 20 p
    • Koepisteet vaikuttavat sellaisenaan arvosanaan
  • Yhteensä: 60 p, minimivaatimus 30 p

Kirjanpitolistalla näkyy kaikki kurssikirjanpito. Sieltä poistetaan ilmeisesti passiiviset opiskelijat näkyviltä. Jos listalla on puutteita tai ette halua nimeänne näkyville, ottakaa yhteys luennoitsijaan. Projektit pr1, pr2a ja pr2b näkyvät kirjanpidossa sarakkeilla HT1, HT2 ja HT3. Kurssin arvostelun valmistuttua tulokset ja kurssikuulustelun arvosteluperusteet ovat näkyvillä verkossa muutaman viikon ajan.

Opintopiirit

Kaikki opiskelijat osallistuvat opintopiiritoimintaan. Opintopiiri ovat samat koko kurssin ajan ja ne muodostetaan ensimmäisellä harjoituskerralla vähän keinotekoisesti, mikä ei nyt paljoakaan poikkea työelämän enemmän tai vähemmän satunnaisesta tiimien muodostamisesta. Ensisijaisena ryhmäytymisen perusteena on samantyyppiset suoritustavoitteet ja toissijaisena perusteena sopivat tapaamisajat, joten ottakaa kalenterit mukaan. Opintopiirin koko on 2-4 opiskelijaa. Poikkeustapauksena opintopiirin voi muodostaa myös vain yksi opiskelija, mutta työmäärä tulee tällöin aika suureksi. Ja miksi opiskella yksin, kun sen voisi tehdä paremmin muiden kanssa!

Opintopiirien jäsenet ovat usein hyvinkin heterogeenisia, mikä ei myöskään poikkea paljoakaan työelämästä. Opintopiirien yleisiä käytäntöjä on esitetty ohjeessa Opiskelijan opas [Kurhila & Lokki, "Opintopiirikurssien opettajan opas", Liite 5]. Saman lähteen mukainen Opintopiirisopimus allekirjoitetaan opintopiirien muodostamistilaisuudessa.

Harjoitustehtävät ja harjoitustilaisuudet

Kotitehtävät tehdään itsenäisesti tai oman opintopiirin kanssa yhdessä. Hyvä menettelytapa olisi esimerkiksi sellainen, että kukin pohtii ensin tehtävät läpi itsenäisesti ja sitten niitä puidaan yhdessä opintopiirissä. Jokaisen tulisi oppia tehtävien asiat täydellisesti, mielellään jo ennen tehtävien käsittelyä viikoittaisessa ryhmätapaamisessa. Tehtävistä saa arvosanaan vaikuttavia pisteitä (htp) niiden vaativuuden mukaan, mutta vain tehdyistä tehtävistä ja vain harjoitustilaisuudessa koko ajan läsnäolleille.

Jos haluatte tehdä harjoitustehtäviä (tai muuten vain opiskella) yhdessä muiden opiskelijoiden kanssa, niin kurssin Moodle-sivulla on keskustelupalsta, jonka avulla voi koordinoida tällaista toimintaa. Esimerkiksi "Hei, Maija ja Matti ovat tekemässä laskareita salissa XYZ klo 14:30 alkaen. Mukaan mahtuuu muitakin." tai "Aloitimme juuri tekemään laskaria ABC salissa XYZ. Kukas tulisi auttamaan?". Synkronointikeskusteluryhmän käyttö on ihan kiinni itsestänne.

Harjoitustilaisuuksissa kokeillaan käytäntöä, jossa kaikki tehtävät käydään tehtäväkohtaisesti läpi opiskelijavetoisesti keskustellen. Ohjaaja jakaa opiskelijat harjoitustilaisuudessa pöytäkuntiin, joihin pyritään saamaan kuhunkin tehtävään ainakin yksi sen tehtävän ratkaissut opiskelija. Pöydissä voi otaksua, että opiskelijat ovat tutustuneet tehtäviin etukäteen ja ainakin yrittäneet ratkaista niitä. Jos opiskelija ei ole tutustunut tehtäviin etukäteen, hän ei pysty hyödyntämään harjoitustilaisuutta kunnolla. Harjoitustilaisuuden aika ei riitä kaikkien tehtävien huolelliseen läpikäyntiin, ellei tehtäviin ole perehdytty etukäteen.

Harjoitustehtävistä annetaan harjoitustilaisuudessa oikeat ratkaisut sillä tarkkuudella, että pöytäkunnat voivat itse tarkistaa tekemiensä ratkaisujen oikeellisuuden. Oikeita ratkaisuja laitetaan verkkoon seuraavalla viikolla. Jos/kun harjoitustehtävät on käyty läpi, pöytäkunta jatkaa keskustelua tilaisuudessa annettavien aihepiirien pohjalta. Jos pöytäkunta toteaa olevansa täysin valmis, sen jäsenet voivat siirtyä muihin pöytiin asiantunteviksi konsulteiksi. Kaikki ovat kuitenkin paikalla tilaisuuden loppuun asti.

Englanninkielisessä harjoitusryhmässä yksi tai useampi pöytäkunta voi olla englanniksi, jos tarvetta ilmenee. Jos pöytäkunta on englanniksi, niin se on sitten kokonaan englanniksi (tehtävien esittämiset, kysymykset ja vastaukset, kaikki keskustelu). Kaikkien englanninkieliseen harjoitusryhmään osallistuvien suomenkielisten opiskelijoiden tulee varautua siihen, että heidät voidaan sijoittaa englanninkieliseen pöytäkuntaan.

On erityisen opettavaista ja omaa oppimista tukevaa selittää asioita jollekin toiselle, joka myös on työskennellyt tehtävän ratkaisemiseksi. Muiden opiskelijoiden auttaminen hyödyntää kumpaakin osapuolta ja yleensä opastajaa enemmän. Älkää kuitenkaan pilatko harjoitustehtävän hyötyä toiselle antamalla sen vastausta suoraan. Eihän siitä juurikaan kostu kumpikaan. Hyvää oppimista saa aikaan vuorottelemalla (a) omaa opiskelua, (b) ongelmien ratkaisuja ja (c) keskusteluja ongelmista ja niiden ratkaisuista muiden opiskelijoiden kanssa.

Harjoitustehtävien tavoitteena on oppiminen, ei pinnojen kalastelu kurssin läpäisemiseksi tai paremman arvosanan saamiseksi. Oppiminen tapahtuu nimenomaan silloin, kun ajattelee ja tekee itse merkittävän osan ongelman ratkaisua sekä keskustelee ratkaisustaan ja ratkaisumenetelmästään muiden kanssa. Valmiiden vastausten lukemisella ei opi yhtä hyvin. Samanlaisia esimerkkejä on luennoilla ja kirjoissa, joten harjoitustehtävien valmiiden ratkaisujen käyttö pelkästään luettavina esimerkkeinä on oppimisen kannalta hyvien harjoitustehtävien hukkaan heittämistä.

Tilaisuuden ohjaaja toimii konsulttina kaikille pöytäkunnille.

Verkkoluennot

Verkkoluennon seuraaminen vaatii oman liitospalikan (Macromedia Authorware Web Player) selaimeen. Sen kuuluu Windows'in vakioasennukseen laitoksen opiskelijakäyttöön tarkoitetuissa tiloissa. (Sitä ei voi itse asentaa laitoksen koneisiin, kuten ei muitakaan selainten liitospalikoita.) Liitospalikka on olemassa ainoastaan Windows ympäristöön ja luotettavimmin se toimii Internet Explorer'issa. Sorry. Voitte kokeilla liitospalikan toimivuutta tästä. Järjestelmä antaa liitospalikkaa käynnistettäessä erilaisia asiaan kuuluvia varoituksia, mutta nähdäkseni liitospalikka on turvallinen käyttää. Liitospalikka toimii myös Firefox-selaimella, mutta yleensä vasta sen jälkeen kun oikeudet on asetettu oikein IE'n avulla. Joissakin tapauksissa palautelomakkeet eivät aina toimi kunnolla Firefox'illa - lähettäkää palaute tällöin esim. sähköpostitse täsmällisten luento/aliluku/sivu-tietojen kera.

HUOM: Verkkoluennoista on nyt myös flash-versiot, joita voi katsoa (ja kuunnella) tavallisella selaimen Flash-liitospalikalla missä tahansa ympäristössä. Flash-versioissa ei kuitenkaan ole interaktiivista toimivuutta, vaan kukin luento muodostaa yhden selattavan jatkumon. Flash-versioiden koko on aika suuri, 6-23 MB per luento.

HUOM2: Flash-versioiden tekemisen jälkeen verkkoluentojen kehitystyötä ei enää jatketa, joten rakentavia kommentteja Authorware-luennoista ei enää kannata lähetellä. Flash-versioista niitä ei suoraan voikaan lähettää. Suuremmista puutteista tai palvelimien alhaallaolosta voi raportoida sähköpostitse.

Autorware verkkoluennot Macintosh-ympäristöissä

Macintosh-ympäristöjen käyttö on täysin testaamatta, koska tekijällä ei ole Macintosh'ia käytössään. Toisaalta, ainakin Patrik Jansson on keväällä 2006 saanut verkkoluennot toimimaan iBook'issa Safari-selaimella. Firefox ei toiminut. Verkkoluentoa avatessa Safari herjaa automaattisesti Authorwaren puuttumisesta ja ehdottaa sen lataamista. Hyväksymisen jälkeen selain ohjautuu Macromedian lataus-sivulle, josta voi ladata Authorwaren liitospalikan. Asennuksen jälkeen täytyy Safari käynnistää uudelleen, että sivu näkyy oikein. Joissakin kohdin tulee virheilmoitus "Xtra not found" ja sivun tausta saattaa jäädä puuttumaan. Flash-animaatio (luennon 1 lopussa) ei toimi. Lisätietoja annetaan mahdollisesti lisää tällä foorumilla.

Niko Kivelä (2008): Lisäinfoa että myös minä sain Intel iMac OSX Leopard käyttäjänä Authorware luennot toimimaan käyttäen Safari selainta. Tämä vaati melkoisen paljon säätöä, aikaa ja rutkasti Googlettamista. Pluginista selaimeen piti etsiä Adoben vaihtoehtoinen Web soitin sekä selain piti käynnistää Rosetta avulla.

Windows 2003 Terminal Server

Windows 2003 Terminal Server -palvelimen avulla Authorware-verkkoluentoa voi seurata myös Linux-ympäristöissä Tietojenkäsittelytieteenlaitoksen koneilta. Palvelin mahdollistaa Windows-ympäristön käytön ohjelmistoineen etänä, jopa Linux-koneilta. Palvelimen käyttö laitoksen Linux-koneilta onnistuu yksinkertaisesti komennolla "windows". Tämä avaa ruudulle Windows-järjestelmän sisäänkirjautumisruudun. Kirjautuminen tapahtuu normaaleilla TKTL-käyttäjätunnuksilla. Palvelimen IE'ssä on valmiiksi asennettuna Authorware liitospalikka. Mikäli haluatte tarkemman kontrollin etäkäyttöohjelmistoon, voitte käyttää suoraan rdesktop (http://www.rdesktop.org) ohjelmistoa komennolla "/usr/local/bin/rdesktop winserver".

Pärtel Martin'in ohje (kevät 2007) laitoksen Windows palvelimen etäkäyttöön Linux'issa kotoa käsin:

Jos kotikoneessa on Mac tai Linux, voi verkkoluentoja katsoa ilmaisella
rdesktop-ohjelmalla ( http://www.rdesktop.org/ ). Komento on
rdesktop -z -r sound winserver.cs.helsinki.fi

Lisäksi optiolla -f saa kokoruutumoodin (poistuminen Ctrl+Alt+Enter), ja -g
optiolla voi asettaa resoluution itse (esim -g 1000x700  mahtuu hyvin
ikkunaan jos näyttösi resoluutio on 1024x768).

Kovin hitailla nettiyhteyksillä ääni valitettavasti pätkii.

Windows palvelinta voi käyttää myös Windows-järjestelmistä etäkäyttönä esimerkiksi keskustakampukselta. Tällöin Authorware liitospalikaa ei tarvitse asentaa käytettävälle koneelle. Käyttö tapahtuu ensin käynnistämällä etätyöpöytä ("start / All Programs / Accessories / Communications / Remote Desktop Connection"), jonka avulla yhteys luodaaan palvelimelle "winserver.cs.helsinki.fi". Siellä käynnistetään selain (IE on luotettavampi) ja avataan verkkoluennot tavalliseen tapaan.

Ongelmia?

Jos Authorware Web Player -liitospalikan käytössä on ongelmia, raportoikaa niistä kurssin vastuuhenkilölle.

Verkkoluentojen käyttöön on olemassa Käyttöohje ja Usein Kysyttyjen Kysymysten lista, jotka löytyvät verkosta ja ovat myös suoraan käytettävissä verkkoluennoista.

Verkkoluennot on linkitetty helposti käytettäväksi niiden yhteiselle sisällysluettelosivulle.

Titokone ja TitoTrainer

Kurssilla tutustutaan konekieliseen ohjelmointiin Auvo Häkkisen opetuskäyttöä varten suunnitteleman ttk-91 tietokoneen ja sen konekielen avulla [Häkk98]. Ttk-91 -ohjelmien kehitystä, suoritusta ja animointia varten käytettävissä on Titokone simulaattoriympäristö, jonka avulla pääosa konekielisestä ohjelmoinnista tehdään. Titokoneeseen on oma asennusohjeensa.

Sen lisäksi kurssikomponenttina on TitoTrainer (versio 2, TitoTrainer2), jonka avulla voidaan automaattisesti tarkistaa (Titokoneelle tehtyjen) ttk-91 -ohjelmien oikeellisuus. TitoTrainer pitää kirjaa suoritetuista tehtävistä ja niistä saa arvosanaan vaikuttavia pisteitä. Osa tehtävistä tehdään tavallisina harjoitustehtävinä ja loput projektissa pr1.

TitoTrainer'illä (versio 2) voi olla vielä lastentauteja. Lähettäkää tietoja uusista piirteistä ja ongelmista kurssin vastuuhenkilölle. Kertokaa myös, jos tehtävän asettelu tuntuu epäselvältä. Tehtävien määrittelyjä säädetään jatkuvasti palautteen perusteella paremmiksi. Kiitos.

TitoTraineriin tarvitaan oma tunnus ja salasana. Voit luoda ne TitoTrainerin kirjautumissivulla. Kirjaa tunnuksesi samalla TitoTrainer-kurssille "Kevät 2010".

TitoTrainer-tehtävissä on niiden nimen alussa luokittelutietoa (esim. a-150 Simppeli koodisegmentti), jossa ensimmäisenä oleva kirjain kertoo päätason:

  1. aloittelija, yksinkertainen koodi, if-then-else, silmukat
  2. monimutkaisempaa koodia, tietorakenteiden käyttö
  3. aliohjelmien kutsuminen, konekielen hyvä ymmärrys, koodin optimointi
  4. aliohjelmien toteutus, moniulotteiset taulukot
  5. kokonaiset ohjelmat aliohjelmineen, laiteajuri
  6. itse muokkaavaa koodia, ihan mitä vain

Päätason perässä oleva kolminumeroinen luku kertoo päätason sisällä vaikeusasteen (100=helppo, 900=vaikea). On suositeltavaa, että tehtävät tehdään tasojärjestyksessä helpoimmasta vaikeampaan. Vaikeusasteella 700 tehtävät millä tahansa tasolla voivat olla haastavia. Vaikeusasteen 900 tehtävät menevät jo syventävien oppimistavoitteiden puolelle.

Titokoneen on toteuttanut Koski-ohjelmistotuotantoryhmä kevällä 2004. TitoTrainerin on toteuttanut Kohahdus-ohjelmistotuotantoryhmä syksyllä 2006, hyödyntäen aikaisemman Koskelo-ohjelmistotuotantoryhmän prototyyppiä syksyltä 2004. TitoTrainer2:n toteutti alustavasti NextTito-ohjelmistotuotantoryhmä syksyllä 2008 hyödyntäen alkuperäisen TitoTrainerin spesifikaatioita ja määrittelyjä. Tuotantokäyttöön TitoTrainer2:n viimeisteli ja toteutti Martin Pärtel keväällä 2009. TitoTrainer2 on käytössä myös Aalto yliopistossa.

Projektit

Projekti 1 (pr1) tehdään itsenäisesti ja siihen kuuluu lisää ttk-91 ohjelmointiharjoittelua TitoTrainerin avulla.

Projekti 2 (pr2) tehdään opintopiirissä ja se käsittää kahden uuden kertaustehtävän laatimisen. Projekti palautetaan kahdessa osassa (pr2a ja pr2b).

Projekteista saa projektipisteitä (pp) projektin tulosten ja myös osittain opintopiirin toimintaan osallistumisen mukaan (pr2).

HY Moodle

HY Moodle on Helsingin yliopiston Moodle-installointi. Se on yleinen oppimisalusta verkko-opetukseen ja sitä käytetään tällä kurssilla lähinnä keskustelualueiden toteutukseen. Kurssin "titoK2010" avain on "titomoodle".

Kaikille yhteisellä alueella on keskustelupalstoja, mukaan lukien em. laskuharjoitusten yhdessä tekemisen synkronointipalsta.

Opintopiirit voivat halutessaan saada oman alueensa (ryhmän) kurssin Moodle-sivustolle. Tällöin (a) jokaisen opintopiirin jäsenten tulee ensin kirjautua kurssin Moodle-sivustolle yhden kerran, (b) mailatkaa ryhmän muodostamishalusta tieto luennoijalle (mukana valitsemanne ryhmän nimi ja kaikkien opintopiirin jäsenten nimet) ja (c) luennoija muodostaa ryhmän. Opintopiirin omalla alueella on joitakin työkaluja kuten wiki ja oma keskusteluryhmä. Jos tarvitsette lisää työkaluja, mailatkaa luennoijalle.

in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English
The English schedule page has most the information above, but none of the information below.
The information in English is given with green color below.
in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English in English

Sisältö ja aikataulu (Contents and Schedule)

Kurssikirjat täydentävät verkkoluentoja. Niissä on erilainen esitystapa ja enemmän detaljeja. Lue asiat myös kurssikirjasta kyseisen luennonkohdalla annetusta kohdasta.

Huomatkaa, että luennoista 1-11 on olemassa myös (vähän vanhat, v. 2003) pdf-kalvot, joihin pääsee helposti käsiksi vasemmalla olevan linkkipalkin kautta.

Text books give different view and more thorough presentation to the same topics as the web lectures. Please read the corresponding material (also) in text books.

Viikko 10 (8-12.3.2010) Week 10

  • Tutustu verkkomateriaaliin (Familiarize your self with course web-material)
    • Aikataulu, kurssikuvaus, oppimistavoitteet (Schedule, course description, learning goals)
  • Kotitehtävät : lh1, esitietojen perusteella (Homeworks: lh1E, based on prerequisite knowledge)

Viikko 11 (15-19.3.2010) Week 11

  • in English 15.3.2010 12-14 Aloitusluento suomeksi.  Hallintoa, kurssin suoritusosiot, opintopiiritoiminta, verkkokomponentit
    Tärkeätä olla paikalla, kiitos.
    • hallintoa, luento 1, lu00 pdf mv2 mv6 vä1 (suomeksi)
  • in English 15.3.2010 14-16 Opening lecture, in English. Admin, course components, study circles, web components.
    Important to be present, please.
    • Lecture notes lu00e, pdf bw2 bw6 co1 (in English)
  • Harjoitukset (Practice Session)
    Tärkeätä olla paikalla, kiitos. (Very important to be present, please! in English)
    • opintopiirien muodostaminen (Study circle creation)
    • yhteystietojen vaihto, tapaamissuunnitelma (Swapping contact information, meeting plans)
    • projektien aikataulutus (Schedule for projects)
    • opintopiirisopimuksen läpikäynti ja allekirjoitus (Study circle contract and signatures)
    • tehtävien läpikäyntiä pienryhmissä: lh1 (Discussion in small groups: lh1E)
    • vastaukset harj. tehtäviin lh1_answers (Answers to homeworks)
  • Itseopiskelua, luento 1:  Järjestelmän rakenne (System structure, self study)
    • Verkkoluento lu01 (Authorware versio vain Windows'issa, ei W7)
      (Authorware Web lecture lu01e 
      in English, only in Windows, not in W7)
    • Ch 1 [Stal10]     (Ch 1 [Stal06], Ch 1 [Stal03] )
    • Kertauskysymyksiä (Practice Problems, some in English)
  • Itseopiskelua, luento 2:  TTK-91 -tietokone ja sen simulaattori (independent study, Ttk-91 and the simulator for it)
  • Itseopiskelua, luento 3:  Konekielinen ohjelmointi (Self study, Assembly language programming)
  • Kotitehtävät lh2 (homeworks lh2E)
  • Aloita projekti pr1: TitoTrainer tekemällä kaikki tehtävät tasolla A
    (Start pr1E: TitoTrainer by doing all problems at level A)
  • Opintopiiriprojekti alkaa: pr2 (Study circle project begins: pr2E)

Viikko 12 (22-26.3.2010) Week 13

  • 22.3.2010 Kertausluento, luennot 1-3. (Summary lecture, in Finnish only. Sorry.)
  • Ryhmätapaaminen (Group meeting)
    • tehtävien läpikäynti: lh2 (Discussion lh2E)
    • vastaukset harj. tehtäviin lh2_answers (Answers to homeworks)
    • keskustelua: Titokone, TitoTrainer (Discussion)
  • Itseopiskelua, luento 4:  Aliohjelmien toteutus konekielen tasolla (Self study: Assembly language subroutine implementation)
  • Itseopiskelua, luento 5:  Suoritin (CPU) ja väylä (Self study: CPU and bus)
  • Itseopiskelua, luento 6:  Tiedon esitysmuodot (Self study: Data representation)
  • Kotitehtävät lh3 (homeworks lh3E)
  • TitoTrainer tehtävät tasolla B (TitoTrainer problems at Level B)

Viikot 13-14 (29-31.3.2010, 8-9.4.2010) Weeks 13-14

  • 29.3.2010 Kertausluento, luennot 4-6. (Summary lecture, in Finnish only. Sorry.)
  • Pääsiäisloma 1-7.4.2010 (Easter Break)
    • Muista projektin pr2 (osa a) palautus pian pääsiäisen jälkeen
      (Remember that project pr2 (part a) must be completed soon after Easter)
  • Itseopiskelua, luento 7:  Tiedon muuttumattomuus ja järjestelmän sisäinen muisti
    (Self study: Error recovery and internal memory)
  • Itseopiskelua, luento 8:  Ohjelman toteutus järjestelmässä
    (Self study: Program implementation in the system)
  • Ryhmätapaaminen (Group meeting)
    • tehtävien läpikäynti: lh3 (Discussion lh3E)
    • vastaukset harj. tehtäviin lh3_answers (Answers to homeworks)
  • Kotitehtävät lh4 (Homeworks lh4E)
  • TitoTrainer tehtävät tasolla C (TitoTrainer problems at Level C)

Viikko 15 (12-16.4.2010) Week 15

  • 12.4.2010 klo 12:00 Projekti valmistuu: pr2 (osa a) (Project pr2E (part a) completes)
    • palauta paperikopio, tekijöiden työprosenttiosuudet ja sähköpostitse linkki verkossa toimivaan kertaustehtävään
      (return paper copy, author contribution percents, and email a link to the practice problem to be tried out in web)
  • 12.4.2010 Kertausluento, luennot 7-8. (Summary lecture, in Finnish only. Sorry.)
  • Itseopiskelua, luento 9:  Järjestelmän ulkoinen muisti, I/O-laitteet, I/O:n toteutus (Self study: External memory, I/O-devices, I/O implementation)
  • Itseopiskelua, luento 10:  Käännös, linkitys ja lataus (Self study: Compilation, linking and loading)
  • Ryhmätapaaminen (Group meeting)
    • tehtävien läpikäynti: lh4 (Discussion lh4E)
    • vastaukset harj. tehtäviin lh4_answers (Answers to homeworks)
  • Kotitehtävät lh5 (Homeworks lh5E)
  • TitoTrainer tehtävät tasolla D (TitoTrainer problems at Level D)

Viikko 16 (19-23.4.2010) Week 16

  • 12.4.2010 Kertausluento, luennot 9-10. (Summary lecture, in Finnish only. Sorry.)
  • Itseopiskelua, luento 11:  Tulkinta ja emulointi (Self study: Interpretation and emulation)
  • Ryhmätapaaminen (Group meeting)
    • tehtävien läpikäynti: lh5 (Discussion lh5E)
    • vastaukset harj. tehtäviin lh5_answers (Answers to homeworks)
  • Kotitehtävät lh6 (Homeworks lh6E)  
  • TitoTrainer tehtävät tasolla E (TitoTrainer problems at Level E)

Viikko 17 (26-30.4.2010) Week 17

  • in English 26.4.2010 12-14 Kertaus- (luento 11) ja yhteenvetoluento (luento 12) suomeksi,
  • in English 26.4.2010 14-16 Summary lecture (lecture 12) in English
    • Lecture notes pdf bw2 bw6 co1 (in English)
    • Will be cancelled if only Finnish speakers present!
  • Ryhmätapaaminen (Group meeting)
    • tehtävien läpikäynti: lh6 (Discussion lh6E)
    • vastaukset harj. tehtäviin lh6_answers (Answers to homeworks)
  • TitoTrainer tehtävät tasolla F (TitoTrainer problems at Level F)

Viikko 18 (3-7.5.2010) Week 18

  • 3.5.2010 klo 09:00 Projekti valmistuu: pr2 (part b) (Project pr2E (part b) completes)
  • 3.5.2010 klo 09:00 Arvosanaan vaikuttavien TitoTrainer tehtävien (pr1) tekemisen deadline.
    (Deadline to do TitoTrainer problems (pr1) that count towards your grade)
  • 3.5.2010 Kurssikuulustelu (Course examination)

Viikko 23 (7-11.6.2010) Week 23

  • 11.6.2010 Tietokoneen toiminta -erilliskuulustelu, joka toimii myös tämän luentokurssin uusintakuulusteluna
    (CO-I final exam, that also is a make-up exam for Course Examination for this lecture course)
    • kokeeseen pitää ilmoittautua Ilmossa erikseen (you need to sign up for this exam with Ilmo)
    • mainitse koepaperissa uusintakuulustelusta (write down "make-up exam" in your exam paper)

Kirjallisuutta ja muita viitteitä (References)


Teemu Kerola