Tietokoneen toiminta, Syksy 2003 - testi
Tämä aikataulu- ja sisältösivu päivittyy aina tarpeen tullen eli siis aika usein. Tarkkailkaa tätä sivua ainakin viikoittain kurssin aikana. Kurssin sisältö voi vielä jonkin verran muuttua aika myöhäänkin.
Jos olette ilmoittautuneet kurssille ryhmään 98 (Uusijat), niin ottakaa minuun henkilökohtaisesti yhteyttä tälle luentokurssille osallistumista varten. Yhteydenotto tulee tehdä ennen ensimmäisiä laskuharjoituksia.
Laskuharjoitusryhmät ovat hyvin täynnä. Opiskelijoiden tulee varmistaa paikkansa niissä osallistumalla heti ensimmäiseen laskuharjoitustilaisuuteen. Vapautuvat paikat täytetään jonottajilla. Jos ette voi osallistua ensimmäiseen laskuharjoitustilaisuuteen, mutta haluatte silti pitää paikkanne siinä, niin ilmoittakaa asiasta luennoitsijalle sähköpostitse.
Suoritusmuoto ja kurssimateriaali
Tämä on luentokurssi, jossa on jonkin verran verkko-opetusmateriaalia mukana. Kurssiin sisältyy pareittain tehtävä ryhmätyö. Laskuharjoituksiin osallistuminen ja ryhmätyön tekeminen ovat kurssin pakollisia osioita.
Kurssimateriaali
- [Häkk98], luentomoniste - ainoa suomenkielinen "kurssikirja"
- [Stal03], luvut 1-2, 3-3.1, 4.1, 5-5.2, 6-6.1, 7-7.5, 8-8.2, 9-9.2, 10
(tai [Stal99], luvut 1-2, 3-3.1, 4-4.2, 5-5.1, 6-6.5, 7-7.2, 8-8.2, 9) - [Tane99], luvut 4.2, 7.3-7.4
- [Häkk98], luvut 4-5 eli esimerkkitietokoneen ttk-91 konekielisimulaattori KOKSI
- Luentokalvot, harjoitustehtävät ja kertauskysymykset
- Ryhmätyö, ryhmät ja ryhmätyön UKK
- Kurssikuulustelu (vain tämän luentokurssin aktiivisille osallistujille)
How to do it in English?
There may be one practice session in English, if there is demand for it. If you want the practice session in English, please let me know about it (E.g., via email). However, providing practice session (and other) information in English is time consuming, so I would appreciate it if you would be serious in attending the course. So far (23.10.2003) I have received no requests for material in English. Currently it looks likely that there would be a practice session in English this semester.
Guidelines for English speaking students who can not follow the Finnish language lectures:
- For each week, follow the schedule ("Aikataulu") given below. First, if you understand some Finnish, read the lecture notes to get a grasp of the main ideas. Second, read the corresponding chapters from the text book (to fully understand the material). Third, do the exercises given for that week (to test that you have learned the material). Fourth, attend the Tuesday practice session given in English (to show me that you have learned the material, and to better understand the material). Repeat this for six weeks and then study for the course exam.
- The course includes a small team project. Please consult the instructor for details.
- Please start working at the same time when lectures begin. If you wait until the first homework is due, it will probably be too late to catch up. The course is short and it is set up with tight schedule.
- Course bookkeeping, grades, and exam grading guidelines (in Finnish only, sorry) are in the Web.
Yleistä
Kurssiin liittyvät yleiset asiat (siis muut kuin erityisesti tähän tämän lukukauden kurssiin liittyvät asiat) ovat kurssin kotisivulla http://www.cs.helsinki.fi/teemu.kerola/tito/index.html.
Kurssiin liittyvää lisämateriaalia (muut kuin kirjan kuvat) on myös kurssikansiossa salissa A413.
Kurssin uutisryhmä on hy.opiskelu.tktl.tito. Uutisryhmä on tarkoitettu lähinnä opiskelijoiden keskinäiseen kommunikointiin. Jos haluatte (nopeaa) reagointia luennoitsijalta, niin käyttäkää sähköpostia. Kaikkia kurssilaisia kiinnostavat asiat julkaistaan luennoitsijan puolesta mieluummin tällä tämän lukukauden aikataulu- ja sisältösivulla kuin uutisryhmässä.
Luentokalvot (pdf, html), harjoitustehtävät, ryhmätyö ja kertauskysymykset julkaistaan verkossa.
Kurssiin liittyy yksi kurssikuulustelu, josta voi saada 46 pistettä ja siitä täytyy saada vähintään 23 pistettä. Harjoituksista voi saada 12 pistettä ja niistä täytyy saada vähintään yksi piste. Ryhmätyöstä voi saada 6 pistettä ja siitä täytyy saada vähintään 1 piste. Yhteensä välikokeesta, harjoituksista ja ryhmätyöstä tulee saada vähintään 30 pistettä (64 mahdollisesta) kurssin läpipääsyyn.
Kustakin tavallisesta harjoitustehtävästä saa yhden harjoitustehtäväpisteen (htp) ja joistakin vaikeammista tehtäistä voi saada useammankin htp:n. Noin 30% maksimi htp:stä tuottaa yhden arvosanaan vaikuttavan pisteen ja noin 83% tuottaa maksimin 12 pistettä. Muut pisteet annetaan suurinpiirtein lineaarisesti tuolta väliltä.
Esimerkki: 6 laskaria á 5 htp = 30 htp. Tällöin 9 htp:tä tuottaa 1 pisteen ja 25 htp:tä tuottaa 12 pistettä.
Pisteet karttuvat siis hyvin nopeasti ensimmäisen pisteen jälkeen, minkä toivotaan motivoivan opiskelijoita tekemään paljon tehtäviä. Karkeasti ottaen voisi sanoa, että on pakollista tehdä kahden harjoituksen verran tehtäviä ja seuraavista harjoituksista saa kaikki tehtävät tekemällä kustakin yhden pykälän verran paremman arvosanan.
Käytäntö on osoittanut, että kurssin läpäisy on vaikeata, jos ei tee runsaasti harjoituksia. Tällä tavoin sekä oppii asiat että saa samalla paremman arvosanan. Koetulosten ja tehtyjen harjoitustehtävien korrelaatiot joidenkin luentokurssien (K2001, S2000 ja K2000) osalta ovat nähtävissä verkossa. Tiedän kyllä, että korrelaatiosta ei seuraa kausaalisuutta. Voihan se olla niinkin, että hyvin asioista perillä olevat opiskelijat muuten vain haluavat tehdä paljon tehtäviä. Toisaalta, harjoitustehtävät on suunniteltu siten, että niitä varten lukemalla ja niitä tekemällä oppii kurssin asioita pintaa syvällisemmin ja sillä perusteella pärjäisi myös kokeessa.
On mahdollista, että yksi laskuharjoitusryhmä on englanniksi. Jos näin tapahtuu, niin kyseisessä ryhmässä kaikki toiminta (kysymykset, vastaukset, keskustelu, harjoitustehtävien esittämiset, jne) on englanniksi.
Kurssimoniste, luentokalvot, luennot ja pääosa kertauskysymyksistä ovat suomeksi. Valinnaisesti käytettävät oppikirjat ovat englanniksi.
Ryhmätyö tehdään 2 hengen ryhmissä. Ryhmät muodostetaan kurssin alkaessa ja julkistetaan aikanaan tässä. Ryhmätyö on pakollinen osa kurssia ja sitä ei voi palauttaa myöhässä. Ryhmätyön Usein Kysyttyjen Kysymysten lista on verkossa.
Kurssin kirjanpitotilasto on luettavissa laitoksen intranetissä. Selain kysyy tietojenkäsittelytieteen laitoksen myöntämää atk-järjestelmien käyttäjätunnusta ja salasanaa. Kirjanpitolistasta näkyy laskuharjoituspisteet ja koetulokset. Jos ette halua omia tilastojanne näkyville tässä tai siinä on mielestänne jotain puutteita, ottakaa yhteys luennoijaan. Tilastosta on poistettu näkyvistä ne opiskelijat, jotka harjoitusaktiivisuuden mukaan ilmeisesti eivät osallistu kurssille. Jos teidän nimenne on vahingossa poistettu näkyvistä, ilmoittakaa siitä luennoijalle.
Kurssin tulokset ja kokeen arvosteluperusteet näkyvät tällä paikalla (intranetissä) lyhyen aikaa (muutaman viikon) kokeen arvostelun jälkeen. Kurssin arvostelu korjattiin kaikkien opiskelijoiden osalta 28.5 laskuharjoituksista annettavien pisterajojen suhteen. Pisterajat olivat virheellisesti vähän liian korkeat (83% antoi vain 10p, eikä 12p kuten oli luvattu). Olen pahoillani, jos tästä virheestä aiheutui teille harmia.
Opetus, kokeet
Luennot: |
28.10-9.12.2003 (ei luentoja 2-4.12) |
ti 14-16 to 8:25-10 |
(Auditorio) | Teemu Kerola |
---|---|---|---|---|
Harjoitukset: |
3.11-12.12.2003 | ma 12-14 | (A216) | Kimmo Airamaa |
ti 16-18 | (A320) | Jani Hohto | ||
ke 8-10 | (A320) | Jani Hohto | ||
pe 12-14 | (A216) | Kimmo Airamaa | ||
pe 14-16 | (A320) | Kimmo Airamaa | ||
Harjoitustyön palautus: |
15.12.2003 | (myöhästyneitä töitä ei oteta vastaan) | ||
Kurssikuulustelu: |
15.12.2003 | ma 12-16 | Sali 1 | (päärakennus) |
Sisältö ja aikataulu
Luentokalvojen ja harjoitusten linkit aktivoituvat aikanaan, hyvissä ajoin ennen ko. luentoa tai harjoitusta. Jos ongelmia ilmenee, niin ottakaa yhteys luennoitsijaan. HTML-versiot toiminevat hyvin ainakin v. 4.0 tai sitä tuoreemmissa IE-selaimissa. Muiden selainten kanssa on hieman ongelmia. Sorry.
- Luento 0 (ti 28.10.2003): Hallintoa, ryhmien muodostaminen
(Administration)- Luentokalvot (lu0) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Ryhmätyö
- Luento 1 (ti 28.10): Järjestelmän rakenne
(Overall system structure)- Luentokalvot (lu1) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 1 [Stal03] tai Ch 1 [Stal99] (luku 1 [Häkk98])
- Kertauskysymyksiä
- Luento 2 (to 30.10): TTK-91 -tietokone ja sen KOKSI simulaattori
(TTK-91 computer and the KOKSI simulator for it)- Luentokalvot (lu2) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 3.1, 10.1-3 [Stal03] tai Ch 3.1, 9.1-3 [Stal99] (luku 4 [Häkk98])
- Kertauskysymyksiä
- Harjoitukset 1 (3-17.11): LH 1 HW 1
- Luento 3 (ti 3.11): Konekielinen ohjelmointi
(Assembly language programming)- Luentokalvot (lu3) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 10.4-6 [Stal03] tai Ch 9.4-6 [Stal99] (luku 5 [Häkk98])
- Kertauskysymyksiä
- Luento 4 (to 6.11): Aliohjelmien toteutus konekielen tasolla
(Assembly language subroutine implementation)- Luentokalvot (lu4) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 10.4 [Stal03] tai Ch 9.4 [Stal99] (luku 5 [Häkk98])
- Kertauskysymyksiä
- Harjoitukset 2 (10-14.11): LH 2
- Luento 5 (ti 11.11): Suoritin (CPU) ja väylä
(Processor and bus)- Luentokalvot (lu5) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 3.1, 3.3 [Stal03] tai Ch 3.1, 3.3 [Stal99] (luku 3, 9 [Häkk98])
- Kertauskysymyksiä
- Luento 6 (to 13.11): Tiedon esitysmuodot
(Data representation)- Luentokalvot (lu6) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 10.1-3 [Stal03] tai Ch 9.1-3 [Stal99] (luku 2.1-2.3 [Häkk98])
- Kertauskysymyksiä
- Harjoitukset 3 (17-21.11): LH 3
- Luento 7 (ti 18.11): Tiedon muuttumattomuus ja järjestelmän sisäinen
muisti
(Internal memory and error correction)- Luentokalvot (lu7) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 4.1, 5.1-2 [Stal03] tai Ch 4.1, 4.2 (Types of RAM, Error Correction) [Stal99] (luvut 2.4 ja 9.1-9.2 [Häkk98])
- Kertauskysymyksiä
- Luento 8 (to 20.11): Ohjelman toteutus järjestelmässä
(Program implementation in the system)- Luentokalvot (lu8) pdf: mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 8.1-2 [Stal03] tai Ch 7.1-2 [Stal99] (luku 8.1-8.3 [Häkk98])
- Kertauskysymyksiä
- Harjoitukset 4 (24-28.11): LH 4
- Luento 9 (ti 25.11): Järjestelmän ulkoinen muisti, I/O-laitteet,
I/O:n toteutus
(External memory, I/O-devices)- Luentokalvot (lu9) mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 6.1, 7.1-5 [Stal03] tai Ch 5.1, 6.1-5 [Stal99] (luvut 10-11 [Häkk98])
- Kertauskysymyksiä
- Luento 10 (verkkoluentona): Käännös, linkitys ja lataus
(Compilation, linking and loading)- Luentokalvot (lu10) mv 2/sivu mv 6/sivu väri 1/sivu html
- Interaktiivinen verkkoluento html,
vaatii oman liitospalikan (Macromedia
Authorware Web Player) selaimeen. Tätä ei (valitettavasti)
voi itse asentaa laitoksen koneisiin, kuten ei muitakaan selainten liitospalikoita.
Sen voi vapaasti asentaa kotikoneisiin. Proto toimii ainakin toistaiseksi
ainoastaan Windows ympäristöissä. Liitospalikka on asennettu
laitoksen koneisiin (ainoastaan IE selaimeen) Porkkala-1 ... Porkkala-6
(A214) ja Tauvo-1 ... Tauvo-6 (D423). Luennoitsijalla on kuulokkeita
lainattavissa tietokonesalikäyttöä varten.
Kirjallisesti 15.12.03 mennessä annetusta verkkoluennon arvioinnista ja/tai siihen liittyvistä rakentavista kommenteista voi saada kurssin arvosanaan vaikuttavia lisäpisteitä (max 3). - Viitteet: Ch 7.3, 7.4 [Tane99] (luku 6 [Häkk98])
- Kertauskysymyksiä
- Harjoitukset 5 (1-5.12): LH 5
- Luento 11 (to 27.11): Tulkinta ja emulointi
(Interpretation and emulation)- Luentokalvot (lu11) mv 2/sivu mv 6/sivu väri 1/sivu html
- Viitteet: Ch 4.2 [Tane99] (luku 6 [Häkk98])
- Kertauskysymyksiä
- Luento 12 (ti 9.12): Yhteenveto ja kertausta
(Summary)- Luentokalvot (lu12) mv 2/sivu mv 6/sivu väri 1/sivu html
- Harjoitukset 6 (8-12.12): LH 6
- Ryhmätyön palautus viimeistään maanantaina 15.12.2003
- Kurssikuulustelu maanantaina 15.12.2003 klo 12-16 (Sali 1, päärakennus)
Kirjallisuutta ja muita viitteitä
- [Häkk98] Auvo Häkkinen, Tietokoneen toiminta, opetusmoniste D390, Tietojenkäsittelytieteen
laitos, Helsingin yliopisto, 30.1.1998. Monistetta voi ostaa TKTL:n monistemyynnistä
(B435, avoinna ma-pe kello 12.00-13.00) hintaan 15€. (kurssimoniste)
Huom: ohjelmaesimerkeissä on v. 1998 ja sen jälkeisissä painoksissa käytetty Java-kieltä, aiemmissa Pascalia.- Monisteen painovirhelista
löytyy verkosta.
- Monisteen painovirhelista
löytyy verkosta.
- [Stal03] William
Stallings, Computer Organization and Architecture - Designing for Performance,
6th Ed., Prentice Hall, 2003.
- 19.8.2002 Asta Vuori Yliopistokirjakaupasta sanoi, että kirjaa oli hyllyssä 38 kpl hintaan 70€.
- William Stallings'in kotisivu.
- William Stallings'in oma tukisivu kurssikirjaa käyttäville opiskelijoille ja opettajille.
- Otan mielelläni vastaan opiskelijoiden tietoja siitä, mistä tätä kirjaa kulloinkin on saatavana mihinkin hintaan. Välitän tietoja eteenpäin muille opiskelijoille tällä foorumilla.
- Kirjan uusin painovirhelista
Stallingsilta .
(Latest Errata Page
)
- [Stal99] William
Stallings, Computer Organization and Architecture, 5th Ed., Prentice
Hall, 1999.
- William Stallings'in oma tukisivu kurssikirjaa käyttäville opiskelijoille ja opettajille.
- Kirjan uusin painovirhelista
Stallingsilta. (Latest Errata
Page )
- [Tane99] Andrew S. Tanenbaum, Structured Computer Organization, 4th Ed, Prentice-Hall, 1999.
- [PaHe98] Patterson & Hennessy, Computer Organization and Design - The Hardware/Software Interface, 2nd Ed, Morgan Kaufmann, 1998.
- [Scra92] Greg W. Scragg, Computer Organization - A Top Down Approach, McGraw-Hill, 1991.
- Konekielisimulaattori KOKSI (koksi.zip)
on kopioitavissa verkosta, Auvo Häkkisen sivuilta.
- KOKSIn käyttöohje
- esimerkkikoneen TTK-91 käskykannan kuvaus.
- Kimmo Palinin Linux TTK-91 simulaattori. Käyttö omalla vastuulla. Käyttö-ohjeita löytynee Kimmo Palinilta itseltään (ja uutisryhmistä).
- Heikki Lindholmin dosemu_ohje.txt
Koksin (alkup. Windows-version) käyttämiseen tehokkaassa Linux-PC:ssä
Dos-emulaattorin avulla. Käyttö omalla vastuulla.
- Luennolla käytettyjä (ja muita) KOKSI esimerkkejä sekä aikaisempien kurssien esimerkkejä on myös verkossa. Kopioikaa ne omaan käyttöönne omaan koksi-hakemistoonne.
Koksi references in English
- KOKSI simulator: koksi.zip
- [KariA] Introduction to the KOKSI simulator by Kalle Karinen (student project)
- [KariB] A summary of TTK-91 instructions by Kalle Karinen (student project)
- [Liu] TTK-91 Memory addressing by Song Liu (student project)
- The KOKSI simulator itself (koksi.zip) can be downloaded from here. Download it into some directory (e.g., koksi) and unzip the files contained.
- KOKSI examples and older examples. To use them please make copies of them into your own koksi directory.
Sanakirjoja
- Sanakirjoja
- Slides for
Principles Of Computer Architecture, Miles J. Murdocca and Vincent P.
Heuring
(vähän Titoa vastaavan kurssin luentokalvot) - Uusi suomalainen merkistöstandardi, Erkki Kolehmainen, TIEKE (joulukuu 1999)
- ISO Latin 9 as compared with ISO Latin 1, Jukka Korpela, TKK (14.3.2000)
- The Java Virtual Machine Specification, Second Edition, Tim Lindholm, Frank Yellin, Sun Microsystems (1999)
- IEEE-754 Calculators Christopher Vickery, Computer Science Department at Queens College of CUNY (The City University of New York)
Teemu Kerola