Tietokoneen toiminta, Kesä 2002
Avoin yliopisto
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.
Kaikki ilmoittautumis- ja muut hallintoasiat hoidetaan suoraan Avoimen
yliopiston kautta. Kaikkien tulee olla ilmoittautunut ja hyväksytty
opiskelemaan tälle kurssille Avoimessa yliopistossa. Kurssikirjanpitoa varten
kaikkien (Avoimeen yliopistoon jo ilmoittautuneiden ja kurssille hyväksyttyjen)
tulisi ilmoittautua myös TKTL:n ILMO
järjestelmään.
This is a condenced intensive version of normal lecture course. It is not
recommended for foreign students. All lectures and practice sessions will be in
Finnish only.
Suoritusmuoto
Tämä on erityisesti muuntokoulutettaville ja avoimeen yliopistoon suunniteltu
tiivistetty luentokurssi, jonka sisältö vastaa tavanomaista Tietokoneen
toiminta (2 ov) luentokurssia. Opetusta on yhteensä sama määrä kuin
tavanomaisella luentokurssilla. Luennot ovat tavallisia, mutta tavanomaiset
laskuharjoitukset on korvattu ohjatuilla harjoitusten tekemisillä. Kaikki
harjoitukset on siis tarkoitus tehdä paikan päällä
harjoitustilaisuudessa itsenäisesti ohjauksen avustuksella.
Kurssi on pedagogisesti tiivis paketti, joten se vaatii osallistujilta tavanomaista enemmän työtä. Seitsemän viikon kurssi on tiivistetty kolmeen viikkoon. Tiivistä aikataulua on hieman kompensoitu tehostetulla opetuksella, mutta kurssin seuraaminen edellyttää silti merkittävän määrän opiskelijan omaa panosta. Kurssi alkaa täysipainoisesti heti ensimmäisellä luentokerralla.
Kurssimateriaali
- [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 ja harjoitustehtävät (tulevat verkkoon aikanaan)
- Kurssikuulustelu (vain tämän kurssin aktiivisille osallistujille)
- Uusintakuulustelut (2 kpl, vain tälle kurssille aktiivisesti osallistuneille)
Kaikkien osallistujien kannattaa hankkia ainakin Häkkisen luentomoniste [Häkk98]. Sen voi ostaa laitoksen monistemyynnistä (B435, 4. krs), joka on auki ma-pe klo 12-13. Suosittelen, että hankitte oheislukemistoksi käyttöönne myös Stallingsin kirjan ([Stal03] tai [Stal99]), vaikka se ei olekaan ihan välttämätön aktiivisesti luennoilla kuunteleville.
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.
- Kurssin jutusteluhuone (chat room) löytyy laitoksen chat palvelimelta https://www.cs.helsinki.fi/intranet/chat.shtml. Selain kysyy tietojenkäsittelytieteen laitoksen myöntämää atk-järjestelmien käyttäjätunnusta ja salasanaa. Jutusteluhuone Tito_ks2002 on tarkoitettu vain tämän luentokurssin osallistujille ja sinne pääsemiseen vaadittava salasana annetaan luennolla. Jutusteluhuone on tarkoitettu opiskelijoiden realiaikaiseen keskinäiseen kommunikointiin. Jutusteluhuoneessa voi aika ajoin olla paikalla myös kurssin luennoija ja/tai ohjaajia.
- Kurssin uutisryhmä on hy.opiskelu.tktl.tito . Uutisryhmä on tarkoitettu opiskelijoiden ei-realiaikaiseen keskinäiseen kommunikointiin.
- Jos haluatte (nopeaa) reagointia (esim. jokin verkkosivu ei aukea ajoissa) luennoitsijalta, niin käyttäkää sähköpostia. Kaikkia kurssilaisia kiinnostavat asiat julkaistaan luennoitsijan puolesta mieluummin tällä foorumilla (tämä sivu) kuin uutisryhmässä tai jutusteluhuoneessa.
- Kaikilla oppilailla tulisi olla TKTL:n tunnus/salasana laitoksen Linux- ja
Windows-järjestelmien käyttämistä varten. Yliopiston opiskelijat (joilla
on jo ATK-osaston UNIX-tunnus) pyytävät TKTL-tunnusta tktl-luvat@cs.helsinki.fi
:stä (ks. ohjeet http://www.cs.helsinki.fi/compfac/ohjeet/Luvat/uusi.html#sivuainelupa).
Jos sinulla ei vielä ole TKTL-tunnusta, niin saat tilapäisen tunnuksen
kurssin ajaksi käyttöösi harjoitusten vetäjältä. Tilapäinen tunnus
lakkaa toimimasta 30.9.2002, ellet ole siihen mennessä hakenut siihen
jatkoaikaa Pekka Niklanderilta (huone B425).
- Luentokalvot ja harjoitustehtävät julkaistaan verkossa.
- Kurssiin liittyvää lisämateriaalia (muut kuin kirjan kuvat) on myös kurssikansiossa salissa A413.
- Kurssimoniste, luentokalvot ja luennot ovat suomeksi. Valinnaisesti
käytettävät oppikirjat ovat englanniksi.
- Kurssiin liittyy yksi kurssikuulustelu, josta voi saada 48 pistettä ja siitä täytyy saada vähintään 24 pistettä. Harjoituksista voi saada 12 pistettä ja niistä täytyy saada vähintään yksi piste. Yhteensä välikokeesta ja harjoituksista tulee saada vähintään 30 pistettä 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
yliopiston luentokurssien kevät
2001, syksy
2000 ja kevät
2000 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.
- 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
. Tilastossa on mukana vain ne opiskelijat, jotka ilmeisesti eivät todella osallistuvat kurssille. Jos ette halua omia tilastojanne näkyville tässä tai siinä on mielestänne jotain puutteita, ottakaa yhteys luennoijaan.
- Kurssin tulokset
ja kokeen arvosteluperusteet
näkyvät tällä paikalla (intranetissä) lyhyen aikaa (muutaman viikon) kokeen arvostelun jälkeen.
Opetus, kokeet
Luennot | 19-30.8.2002 | ma, ke, pe | 12:15-16 | (A217) | Teemu Kerola |
Harjoitukset Ryhmä 1 |
20.8-3.9.2002 30.8.2002 |
ti, to pe |
12:15-14 9:15-11 |
(A215) | Kimmo Airamaa ja Pekka Simola |
Harjoitukset Ryhmä 2 |
20.8-3.9.2002 30.8.2002 |
ti, to pe |
14:15-16 17:15-19 |
(A215) | Kimmo Airamaa ja Pekka Simola |
Kurssikuulustelu | 6.9.2002 | pe | 16:00-20 | (Auditorio) | Varsinainen koeaika 3.5 t |
Uusintakuulustelut | 5.10.2002 2.11.2002 |
la ma |
9:00-13 17:00-21 |
(Auditorio) (Auditorio) |
Varsinainen koeaika 3.5 t |
Sisältö ja aikataulu
Luentokalvojen ja harjoitusten linkit aktivoituvat aikanaan, hyvissä ajoin ennen ko. luentoa tai harjoitusta. Luennoista annetaan myös postscript kopiot, koska joillakin opiskelijoilla on ilmeisesti vaikeuksia tulostaa Acrobat Distillerin tulostamia pdf-tiedostoja.
- Luento 0 (ma 19.8): Hallintoa
(Administration)- Luentokalvot (lu0) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Luento 1 (ma 19.8): Järjestelmän rakenne
(Overall system structure)- Luentokalvot (lu1) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 1 [Stal03] tai Ch 1 [Stal99] (luku 1 [Häkk98])
- Luento 2 (ma 19.8): 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 postscript: mv 2/sivu
- Viitteet: Ch 3.1, 10.1-3 [Stal03] tai Ch 3.1, 9.1-3 [Stal99] (luku 4 [Häkk98])
- Harjoitukset 1 (ti 20.8): LH 1
- Luento 3 (ke 21.8): Konekielinen ohjelmointi
(Assembly language programming)- Luentokalvot (lu3) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 10.4-6 [Stal03] tai Ch 9.4-6 [Stal99] (luku 5 [Häkk98])
- Luento 4 (ke 21.8): Aliohjelmien toteutus konekielen tasolla
(Assembly language subroutine implementation)- Luentokalvot (lu4) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 10.4 [Stal03] tai Ch 9.4 [Stal99] (luku 5 [Häkk98])
- Harjoitukset 2 (to 22.8): LH 2
- Luento 5 (pe 23.8): Suoritin (CPU) ja väylä
(Processor and bus)- Luentokalvot (lu5) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 3.1, 3.3 [Stal03] tai Ch 3.1, 3.3 [Stal99] (luku 3, 9 [Häkk98])
- Luento 6 (pe 23.8): Tiedon esitysmuodot
(Data representation)- Luentokalvot (lu6) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 10.1-3 [Stal03] tai Ch 9.1-3 [Stal99] (luku 2.1-2.3 [Häkk98])
- Luento 7 (ma 26.8): 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 postscript: mv 2/sivu
- 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])
- Luento 8 (ma 26.8): Ohjelman toteutus järjestelmässä
(Program implementation in the system)- Luentokalvot (lu8) pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 8.1-2 [Stal03] tai Ch 7.1-2 [Stal99] (luku 8.1-8.3 [Häkk98])
- Luento 9 (ma 21.1): 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 postscript: mv 2/sivu
- Viitteet: Ch 6.1, 7.1-5 [Stal03] tai Ch 5.1, 6.1-5 [Stal99] (luvut 10-11 [Häkk98])
- Harjoitukset 3 (ti 27.8): LH 3
- Luento 10 (ke 28.8): Käännös, linkitys ja lataus
(Compilation, linking and loading)- Luentokalvot (lu10) mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 7.3, 7.4 [Tane99] (luku 6 [Häkk98])
- Harjoitukset 4 (to 29.8): LH 4
- Harjoitukset 5 (pe 30.8): LH 5
- Luento 11 (pe 30.8): Tulkinta ja emulointi
(Interpretation and emulation)- Luentokalvot (lu11) mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 4.2 [Tane99] (luku 6 [Häkk98])
- Luento 12 (pe 30.8): Yhteenveto ja kertausta
(Summary)- Luentokalvot (lu12) mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Harjoitukset 6 (ti 3.9): LH 6
- Kurssikuulustelu (pe 6.9) klo 16:00-20 (Auditorio). Varsinainen koeaika on 3.5 tuntia.
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 80 mk. (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.
- [Stal99] William
Stallings, Computer Organization and Architecture, 5th Ed., Prentice
Hall, 1999.
- 10.8.2001 Asta Vuori Yliopistokirjakaupasta kertoi, että kirjoja oli varastossa 30 kpl hintaan 365 mk.
- 7.10.2001 Akateeminen kirjakauppa myi kirjaa hintaan 423 mk. Tästä voisi saada alennusta ryhmätilausten yhteydessä.
- 10.8.2001 Sanomatalon DataClub Oy myi kirjaa hintaan 400 mk (miinus "klubialennus"). DataClub lupaa myös "tukkualennuksia" vähintään 10 kirjan yhteisostoille.
- 10.8.2001 kirjaa oli nettikaupoista saatavilla ainakin Bokus.com'sta hintaan 436 mk, Amazon'sta hintaan hintaan £32.99 ja Internet Bookshop'sta hintaan £61 (vain kovakantisena).
- 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
- 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)