Korkean tason kieli vs. symbolinen konekieli. Oletetaan, että meillä on korkean tason kielellä (C, Java, Pascal) tehty ohjelma
Simple, joka on käännetty TTK-91 koneen konekielelle.
Missä fyysisesti erilaisissa tietokoneen komponenteissa ohjelman Simple muuttujan X arvo voi sijaita (TTK-91 koneessa)
ohjelman suoritettaessa? Anna kaksi vaihtoehtoa. Perustele vastauksesi.
Anna seuraaviin kysymyksiin vastaukset TTK-91 koneen osalta erikseen
kullekin em. kahdelle vaihtoehdolle.
-
Millä konekäskyillä X:n arvon voi tulostaa?
-
Millä konekäskyillä X:n osoitteen voi tulostaa?
-
Millä konekäskyillä X:n arvoksi asetetaan luku 65?
-
Millä konekäskyillä X:n osoitteeksi asetetaan luku 211?
-
Millä konekäskyillä X:n arvo voidaan tallettaa muistiin muuttujan Y arvoksi?
Korkean tason kieli vs. symbolinen konekielen käskyt. Minkälaisen
korkean tason kielen ohjelmakohdan toteuttamiseen voitaisiin käyttää
TTK-91 koneen (pseudo)konekäskyä
- SUB
- MOD
- OR
- XOR
- COMP
- JUMP
- JNGRE
- DC
Anna esimerkki kustakin tapauksesta.
Miten pseudokonekäskyt eroavat tavallista konekäskyistä?
Esitä allaolevat käskyt TTK-91 käskyrakenteen mukaan kokokaislukuina (ei siis
tarvitse muuttaa biteiksi):
MUL R1, R5
LOAD R3, Puppu
ADD R5, Puppu(FP)
STORE R1, Puppu
JUMP @Puppu(R1)
SUB R3, @Link(FP)
Olkoon symbolin Puppu arvo 127 ja symbolin Link arvo 4. Käskyrakenne löytyy Häkkisen
monisteesta tai luentokalvoista. Operaatioiden koodit on esitetty
KOKSI-ohjeessa.
Muistin osoitusmuodot. Oletetaan, että kullakin käskyllä jatkossa
lähtötilanne on luentojakson 2 kalvon 18 tilanne.
Anna kullekin käskylle tehollinen muistiosoite (effective address)
ja joko muuttuneen rekisterin sisältö tai muuttuneen
muistipaikan osoite ja sisältö. Jos jokin käsky ei ole laillinen, kerro
minkä takia näin on.
- LOAD R4, 200
- LOAD R3, One(R1)
- STORE R0, One(R1)
- STORE R2, @9(R3)
- LOAD R0, @R1
- LOAD R1, @R1
- LOAD R1, @R2(R3)
- STORE R1, @R1
- STORE R0, R1
- STORE R2, =One
TTK-91 -koneen KOKSI simulaattori
- Miten simulaattori eroaa todellisesta tietokoneesta?
- Miten simulaattorilla suoritettavat ohjelmat eroavat todellisella
tietokoneella suoritettavista ohjelmista?
- Mitä etua on suorittaa ohjelmia simulaattorilla sen sijaan, että ne
suoritettaisiin todellisella tietokoneella?
- Mitä haittaa on suorittaa ohjelmia simulaattorilla sen sijaan, että
ne suoritettaisiin todellisella tietokoneella?
a) Tutustu KOKSI-simulaattoriin lukemalla
KOKSI-simulaattorin käyttöohje, joka löytyy kurssin kotisivulta.
b) Selvitä, kuinka KOKSI-simulaattoria voi käyttää laitoksen koneissa ja kuinka
simulaattorin voi asentaa omalle koneelle. Tietoa löytyy esim. tämän kevään
Tietokoneen toiminnan luentokurssilta.