Tietokoneen toiminta, Kevät 2003.muunto
Muuntokoulutettavien erikoiskurssi
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.
Kurssille halukkaat ilmoittautuvat TKTL Ilmon kautta kurssin "Tietokoneen toiminta" ("erikoisversio" tai "muuntokoulutettaville") jonotuslistalle. Kurssin osallistujat valitaan ensimmäisellä luentokerralla luennon alussa (13.1 klo 16:15) paikallaolijoista ja poissaolonsa etukäteen luennoitsijan kanssa selvittäneistä. Pelkkä ilmoittautuminen ei siis riitä! Valinnassa etusija on muuntokoulutettavilla. Toissijaisena valintaperusteena on jonotuslistalle ilmoittautumisaika. Tilan salliessa kurssille voivat siis osallistua myös muut kuin muuntokoulutettavat opiskelijat. Ensimmäisellä kokoontumiskerralla kaikki paikallaolijat pääsivät mukaan. Lisääkin olisi voinut opiskelijoita ottaa. Nyt on jo tosin vähän myöhäistä aloittaa.
Kurssilaisten oletetaan pystyvän osallistumaan (lähes) kaikkiin luentoihin ja harjoituksiin. Kurssille otetaan harjoitusten pitosaliin (A215) mahtuvat 25 opiskelijaa. Tarpeen vaatiessa on mahdollista perustaa myös toinen harjoitusryhmä (ti, to 18-20), mutta tätä ei mitenkään luvata tässä vaiheessa. Toisaalta, jos harjoitusryhmiä toteutuu vain yksi kappale, on mahdollista, että se pidetään tuntia ilmoitettua myöhemmin 17-19, koska ilmeisesti tämä aika sopisi paremmin useille muuntokoulutettaville. Ensimmäisellä kokoontumiskerralla sovittiin, että harjoitukset pidetään klo 17-19. Omatoimisesti niitä voi ruveta tekemään jo klo 16.
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 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. Ryhmätyö tehdään pareittain ja palautetaan sähköpostitse.
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.
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, harjoitustehtävät ja kertauskysymykset
- Kurssikuulustelu (vain tämän luentokurssin aktiivisille osallistujille)
Jos joudutte keskeyttämään kurssin tai ette siitä pääse läpi, niin voitte suorittaa kurssin myöhemmin joko tavanomaisella luentokurssilla tai erilliskokeella.
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, harjoitustehtävät
ja kertauskysymykset
julkaistaan verkossa.
- Kurssiin liittyy yksi kurssikuulustelu, josta voi saada 42 pistettä
ja siitä täytyy saada vähintään 21 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ä 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.
- Ryhmätyö tehdään 2 hengen ryhmissä.
Ryhmät
ja niiden aihealueet varataan kurssin alussa. Ryhmätyötä ei voi palauttaa
myöhässä. Ryhmätyön Usein
Kysyttyjen Kysymysten lista on verkossa.
- Kurssimoniste, luentokalvot, luennot ja pääosa kertauskysyksistä 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 koetulokset
.
Tilastosta on poistettu ne opiskelijat, jotka harjoitusaktiivisuuden mukaan
ilmeisesti osallistu 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 | 13-29.1.2003 | ma, ke 16:15-19:30 (lyhyet tauot) |
(A414) | Teemu Kerola |
Harjoitukset | 14-30.1.2003 | ti, to 17:15-18:45 (työt voi halutessaan aloittaa aikaisemminkin) |
(A215) | Kimmo Airamaa Heimo Vornanen |
Kurssikuulustelu | 13.2.2002 | to 16:00-20 | (A414) |
Sisältö ja aikataulu
Luentokalvojen ja harjoitusten linkit aktivoituvat aikanaan, hyvissä ajoin ennen ko. luentoa tai harjoitusta. Postscript kopioita luentokalvoista ei enää julkisteta, koska ilmeisesti pdf-tiedostojen yhteydessä aiemmin ilmennyt tulostusongelma on nyt saatu poistettua. Jos tulostusongelmia kuitenkin nyt ilmenee, niin ottakaa yhteys luennoitsijaan.
- Luento 0 (ma 13.1): Hallintoa, ryhmien muodostaminen
(Administration)- Luentokalvot (lu0) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Ryhmätyö ( ryhmät ja niiden aihealueet )
- Luento 1 (ma 13.1): Järjestelmän rakenne
(Overall system structure)- Luentokalvot (lu1) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 1 [Stal03] tai Ch 1 [Stal99] (luku 1 [Häkk98])
- Kertaustehtäviä
- Luento 2 (ma 13.1): 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
- Viitteet: Ch 3.1, 10.1-3 [Stal03] tai Ch 3.1, 9.1-3 [Stal99] (luku 4 [Häkk98])
- Kertaustehtäviä
- Harjoitukset 1 (ti 14.1): LH 1
- Luento 3 (ke 15.1): Konekielinen ohjelmointi
(Assembly language programming)- Luentokalvot (lu3) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 10.4-6 [Stal03] tai Ch 9.4-6 [Stal99] (luku 5 [Häkk98])
- Kertaustehtäviä
- Luento 4 (ke 15.1): Aliohjelmien toteutus konekielen tasolla
(Assembly language subroutine implementation)- Luentokalvot (lu4) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 10.4 [Stal03] tai Ch 9.4 [Stal99] (luku 5 [Häkk98])
- Kertaustehtäviä
- Harjoitukset 2 (to 16.1): LH 2
- Luento 5 (ma 20.1): Suoritin (CPU) ja väylä
(Processor and bus)- Luentokalvot (lu5) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 3.1, 3.3 [Stal03] tai Ch 3.1, 3.3 [Stal99] (luku 3, 9 [Häkk98])
- Kertaustehtäviä
- Luento 6 (ma 20.1): Tiedon esitysmuodot
(Data representation)- Luentokalvot (lu6) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 10.1-3 [Stal03] tai Ch 9.1-3 [Stal99] (luku 2.1-2.3 [Häkk98])
- Kertaustehtäviä
- Harjoitukset 3 (ti 21.1): LH 3
- Luento 7 (ke 22.1): 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
- 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])
- Kertaustehtäviä
- Luento 8 (ke 22.1): Ohjelman toteutus järjestelmässä
(Program implementation in the system)- Luentokalvot (lu8) pdf: mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 8.1-2 [Stal03] tai Ch 7.1-2 [Stal99] (luku 8.1-8.3 [Häkk98])
- Kertaustehtäviä
- Harjoitukset 4 (to 23.1): LH 4
- Luento 9 (ma 27.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
- Viitteet: Ch 6.1, 7.1-5 [Stal03] tai Ch 5.1, 6.1-5 [Stal99] (luvut 10-11 [Häkk98])
- Kertaustehtäviä
- Luento 10 (ma 27.1): Käännös, linkitys ja lataus
(Compilation, linking and loading)- Luentokalvot (lu10) mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 7.3, 7.4 [Tane99] (luku 6 [Häkk98])
- Kertaustehtäviä
- Harjoitukset 5 (ti 28.1): LH 5
- Luento 11 (ke 29.1): Tulkinta ja emulointi
(Interpretation and emulation)- Luentokalvot (lu11) mv 2/sivu mv 6/sivu väri 1/sivu
- Viitteet: Ch 4.2 [Tane99] (luku 6 [Häkk98])
- Kertaustehtäviä
- Luento 12 (ke 29.1): Yhteenveto ja kertausta
(Summary)- Luentokalvot (lu12) mv 2/sivu mv 6/sivu väri 1/sivu
- Harjoitukset 6 (to 30.1): LH 6
- Ryhmätyön palautus sähköpostitse 12.2.2003. Ryhmätyötä ei voi palauttaa myöhässä.
- Kurssikuulustelu 13.2.2003 klo 16-20 (A414).
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.
- [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)