Tietokoneen toiminta, Kevät 2002
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.
17.3.2002 Windows 2000 -käyttöjärjestelmä ei ole käytössä mikroluokissa tietoturva-aukon vuoksi. Koksia voi käyttää tehokkaassa Linux-PC:ssä Dos-emulaattorin avulla. (Ks. ohje tämän sivun Koksi kohdasta)
20.3.2002 Paikkailtu Windows-käyttöjärjestelmä on käytössä osassa mikroluokista (D326, D328 ja piakkoin myös jossain 4. kerroksen mikroluokassa)
Guidelines in English
These guidelines are mainly for English speaking students who can not follow the Finnish language lectures- One exercise session may be in English, if there is demand for it. If it is held in English, then it is completely in English (all presentations, questions and answers). If you want an excercise session in English please send an email to me
- For each week, follow the schedule ("Aikataulu") given below. First, read the corresponding chapters from the text book ([Stal99] or [Tane99]) to fully understand the material. Second, do the exercises (HW i) given for that week (to test that you have learned the material). Third, attend the exercise session given in English (to show that you have learned the material, and to better understand the material). Repeat this for six weeks and then study for the course exam.
- You must make at least 30% of the given homeworks to participate. Please notice that some homeworks are weighted more (e.g., 2 hwp's) than the others. You can get up to 12 points towards your grade from homeworks (maximum 12 points given for approximately 83% of homework participation). The course exam is worth 48 points.
- You need to remind me about one week before the exam, that I provide the exam in English, assuming of course that you are still going to take it.
- This course requires significant amount of studying and you should start studying at the same time when the lectures start. If you wait until the first practice session, it is quite likely too late to catch up. Many English speaking students have great difficulties with the ttk-91 assembly language and the KOKSI programming environment. However, please note that the main emphasis in the course is not in assembly language programming, even though it is a significant part of it. Main portion of the course is quite well covered in the English language text books. If you want more information, please contact me directly.
- Please contact me, if you want to have one practice session in English. I will not provide any further material in English unless there is clear demand for it. So far (1.3.2002) I have not received any such contacts.
- Please follow this space for any new information for English speaking students.
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.
- Luentokalvot ja harjoitustehtävät julkaistaan verkossa ja kurssikansiossa salissa A413.
- 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ä.
- Kurssiin liittyy yksi kurssikuulustelu, josta voi saada 48 pistettä (+ 2 lisä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. 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.
- Kurssimoniste, luentokalvot ja luennot ovat suomeksi. Valinnaisesti
käytettävät oppikirjat ovat englanniksi.
- 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 koepisteet.
- Harjoitustehtäväpisteitä (htp) on yhteensä 33. Sen pakollisen arvosanaan vaikuttavan pisteen saa siis 10 htp:llä ja 12 arvosanaan vaikuttavaa pistettä 27 htp:llä. Jos et saanut pakollisia 10 htp:tä harjoituksista, voit pyytää luennoijalta lisätehtäviä. Lisätehtävät on palautettava ennen koetta.
- Kurssin tulokset , koe ja kokeen arvosteluperusteet. Tulokset näkyvät tällä paikalla lyhyen aikaa (muutaman viikon) kokeen arvostelun jälkeen.
- Erilliskokeen 20.8.2002 tulokset näkyvät tällä paikalla lyhyen aikaa (muutaman viikon) kokeen arvostelun jälkeen.
- Erilliskokeen 5.11.2002 tulokset näkyvät tällä paikalla lyhyen aikaa (muutaman viikon) kokeen arvostelun jälkeen.
Opetus, kokeet
Luennot | 4.3-17.4.2002 (ei 3.4) |
ma 12:15-14, ke 8:25-10 | (Auditorio) | Päivi Kuuppelomäki | |
Harjoitukset | 11.3-26.4.2002 (ei 28.3-3.4) |
ti 10-12 | (C454) | Harri Pulli | |
ti 12-14 | (A216) | Erkki Rautama | |||
ti 14-16 | (A216) | Erkki Rautama | |||
ti 16-18 | (A216) | Mikko Rauhala | |||
ke 10-12 | (A320) | Erkki Rautama | |||
ke 12-14 | (A216) | Päivi Kuuppelomäki | |||
ke 14-16 | (A216) | Mikko Rauhala | |||
ke 16-18 | (A216) | Mikko Rauhala | |||
to 10-12 | (A414) | Harri Pulli | |||
to 12-14 | (A216) | Harri Pulli | |||
Kurssikuulustelu | 13.5.2002 | ma 15-19 | (Päärakennus sali 1) | Huom: koeaika 3.5 tuntia |
Sisältö ja aikataulu
Luentokalvojen ja harjoitusten linkit aktivoituvat aikanaan, hyvissä ajoin ennen ko. luentoa tai harjoitusta.
- Luento 1 (ma 4.3): Hallintoa, järjestelmän rakenne
(Admininstration, Overall system structure)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 1 [Stal99] (luku 1 [Häkk98])
- Luento 2 (ke 6.3): TTK-91 -tietokone ja sen KOKSI simulaattori
(TTK-91 computer and the KOKSI simulator for it)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 3.1, 9.1-3 [Stal99] (luku 4 [Häkk98])
- Harjoitukset 1 (12.3-14.3): LH 1 HW 1
- Luento 3 (ma 11.3): Konekielinen ohjelmointi
(Assembly language programming)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 9.4-6 [Stal99] (luku 5 [Häkk98])
- Luento 4 (ke 13.3): Aliohjelmien toteutus konekielen tasolla
(Assembly language subroutine implementation)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 9.4 [Stal99] (luku 5 [Häkk98])
- Harjoitukset 2 (19.3-21.3): LH 2
- Luento 5 (ma 18.3): Suoritin (CPU) ja väylä
(Processor and bus)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 3.1, 3.3 [Stal99] (luku 3, 9 [Häkk98])
- Luento 6 (ke 20.3): Tiedon esitysmuodot
(Data representation)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 9.1-3 [Stal99] (luku 2.1-2.3 [Häkk98])
- Harjoitukset 3 (24.3-27.3 ja 4.4): LH 3
- Luento 7 (ma 25.3): Tiedon muuttumattomuus ja järjestelmän sisäinen
muisti
(Internal memory and error correction)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 4.1, 4.2 (Types of RAM, Error Correction) [Stal99] (luvut 2.4 ja 9.1-9.2 [Häkk98])
- Luento 8 (ke 27.3): Ohjelman toteutus järjestelmässä
(Program implementation in the system)- Luentokalvot pdf: mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 7.1-2 [Stal99] (luku 8.1-8.3 [Häkk98])
- Harjoitukset 4 (9.4-11.4): LH 4
- Luento 9 (ma 8.4): Järjestelmän ulkoinen muisti, I/O-laitteet, I/O:n
toteutus
(External memory, I/O-devices)- Luentokalvot mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Viitteet: Ch 5.1, 6.1-5 [Stal99] (luvut 10-11 [Häkk98])
- Luento 10 (ke 10.4): Käännös, linkitys ja lataus
(Compilation, linking and loading)- Luentokalvot (luento 10) 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 5 (16.4-18.4): LH 5
- Luento 11 (ma 15.4): Tulkinta ja emulointi
(Interpretation and emulation)- Luentokalvot (luento 11) 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 (ke 17.4): Yhteenveto ja kertausta
(Summary)- Luentokalvot (luento 12) mv 2/sivu mv 6/sivu väri 1/sivu postscript: mv 2/sivu
- Harjoitukset (23.4-25.4): LH 6
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).
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.
- [Stal99] William
Stallings, Computer Organization and Architecture, 5th Ed., Prentice
Hall, 1999.
- 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.
- William Stallings'in kotisivu.
- 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ä). Ohjelma on asennettu kaikkien käytettäväksi hakemistoon /opt/ttk91, ja se käynnistyy CS Linux 2:ssa komennolla /opt/ttk91/bin/ttk91vmgui
- 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) - 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)
paivi.Kuuppelomaki@cs.Helsinki.FI