Tietokoneen toiminta, Kevät 2011, Harjoitus 1

Nämä tehtävät tehdään etukäteen ja käsitellään harjoituksissa 1. kurssiviikolla 18.1. - 21.1.2011.

Tehtävän 4 asioita käydään läpi verkkoluennolla 1, mutta kaikki tehtävät ovat pohtimisluonteisia.

HUOM: Verkkoluentojen seuraaminen edellyttää, että jokainen hankkii itselleen tktl:n laitteistoihin käyttöluvan. Pääaineopiskelijoille lupa jo on. Sivuaineopiskelijoiden pitää noudattaa laitoksen Käyttölupasivun ohjeita: "Kerro lupatarpeestasi sähköpostilla osoitteeseen tktl-luvat@cs.helsinki.fi Muista mainita AD-lupasi käyttäjätunnus. ÄLÄ lähetä salasanaasi! Saat vastauksena sähköpostiisi ohjeet, miten saat TKTL:n tunnuksen käyttöösi. "

Tehtävät:

  1. Kurssin tavoite ja oppimismenetelmät
    1. Mitkä ovat kurssin tärkeimmät oppimistavoitteet? Mikä on mielenkiintoisin?
    2. Mikä /mitkä tavoitteista tuntuvat tällä hetkellä hankalimmilta tai vaikeimmilta?
    3. Mitkä ovat kurssin oppimismenetelmät?
    4. Mitä erilaisia oppimiseen liittyviä moduuleja kurssiin sisältyy?
  2. Pohdi, mitä kaikkea haluaisit saada irti tämän kurssin opintopiiristä, esim.
    1. Miten saada joku muu tekemään kurssin tehtävät puolestani?
    2. Miten saada joku muu oppimaan kurssin asiat puolestani tai minun lisäkseni?
    3. Miten oppia kurssin asiat yhdessä yhden tai useamman muun opiskelijan kanssa?
    4. Minkälainen aikataulu / tapaamisrytmi olisi sopiva opintopiiritehtävien tekemiseen opintopiirissä?
    5. Miten yhdessä oppimiseen olisi mahdollista päästä omassa opintopiirissä?
  3. Mitkä ovat merkittävimmät erot konekielen ja korkean tason ohjelmointikielten välillä
    1. Käyttäjän (esim. tietokonepelin pelaajan) kannalta?
    2. Ohjelmoijan (esim. tietokonepelin ohjelmoijan) kannalta?
    3. Ohjelmaa suorittavan tietokonelaitteiston kannalta?
    4. Ohjelman suoritusajan kannalta?
  4. Korkean tason kieli vs. konekieli. Oletetaan, että meillä on korkean tason kielellä (esim. C, Java tai Pascal) tehty ohjelma, joka on käännetty konekielelle.
    1. Mitä tarkoittaa käsite "suorituksessa oleva ohjelma"?
    2. Missä erilaisissa tietokoneen fyysisissä/loogisissa komponenteissa (esim. muisti, väylä, konekäsky, suorittimen rekisteri, levy-muisti, DVD-levy, USB-portti, muistin data-alue, muistin koodi-alue, tietoliikenneportti, näytönohjaimen muisti, etc) ohjelmassa viitattu tieto voi sijaita ohjelman suoritusaikana?
    3. Missä erilaisissa tietokoneen fyysisissä/loogisissa komponenteissa ohjelmassa viitattu tieto voi sijaita ohjelman yhtä konekäskyä suoritettaessa? Missä suorittimen eri osissa kyseinen tieto voi sijaita?
    4. Miten tiedon tyyppi (esim. kokonaisluku, totuusarvo, merkkijono, taulukko, tietue, tiedosto, kuva) vaikuttaa tähän asiaan (kohta b)?
    5. Onko joku tiedon sijaintipaikka parempi kuin muut? Millä kriteereillä ja miksi?
    6. Kuka päättää ja milloin, missä komponentissa suoritusaikainen tieto (esim. muuttujan X arvo) sijaitsee?


Tiina.Niklander@cs.helsinki.fi