Tietojenkäsittelytiede (Avoin yliopisto) Tietokoneen toiminta (2 ov) Kuulustelija: Liisa Marttinen Uusintakoe 5.10.2002 1. Lukumuunnoksia yms. a. Muunna binäärijärjestelmän luvut 110111 ja 1100.011 desimaalijärjestelmän luvuiksi. (3 p) b. Muunna kymmenjärjestelmän luvut 3.625 ja 0.75 binäärijärjestelmän luvuiksi.(4 p) c. Suorita laskutoimitus 34 - 47 kahden komplementtimuodossa. (4 p) d) Mikä on Hamming koodi? Mihin sitä käytetään? Anna esimerkki Hamming-koodin käytöstä.(4 p) 2. Prosessin ja suorittimen tilat a. Millainen on prosessin elinkaari? Mitkä ovat prosessin tilat? Milloin ja miksi prosessin tila vaihtuu? (8 p) b. Mitkä ovat suorittimen suoritusaikaiset tilat? Miten tilat eroavat toisistaan? Mitkä seikat aiheuttavat suorittimen tilanvaihdon? (7 p) 3. Konekäskyjen suoritus a. Esitä TTK-91-tietokoneen prosessorin rekisterien (LIMIT, BASE, MAR, MBR, TR, IR, PC, SR, R0-R5, SP ja FP) tasolla, miten suoritetaan seuraava ohjelmapätkä: MUL R2,=5 STORE R2,@R5 JPOS R5, 100 SVC SP,=11 ;palvelupyyntö HALT 1 (9 p) b. Mitä eri keskeytyksiä tai poikkeustilanteita tehtävän käskyjen suorituksen aikana voi tapahtua? Miten keskeytykset havaitaan? Miten niihin reagoidaaan? (6 p) 4. Konekielistä ohjelmointia a. Laadi aliohjelma Summa, joka laskee taulukkoon eli peräkkäisiin muistipaikkoihin talletettujen lukujen summan. Aliohjelmalle välitetään aktivointitietuessa eli pinossa parametreina taulukon osoite sekä taulukon koko. Myös laskettu summa palautetaan pinossa. (6 p) b. Laadi pääohjelma Pisteet, joka kutsuu aliohjelmaa Summa laskemaan taulukkoon Taulu [0:50] talletettujen koepisteiden summan ja tulostaa pistemäärien keskiarvon. Voit olettaa, että pisteet on jo valmiiksi talletettu taulukkoon. (5 p) c. Näytä pinon sisältö juuri ennen aliohjelmakutsua, aliohjelman aloittaessa, juuri ennen aliohjelmasta paluuta, heti paluun jälkeen ja juuri ennen pääohjelman lopetuskäskyä. (4 p)