Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Ohjelma Mikro-ohjelmointi Symbolinen konekieli Osoitustavat.

Samankaltaiset esitykset


Esitys aiheesta: "Ohjelma Mikro-ohjelmointi Symbolinen konekieli Osoitustavat."— Esityksen transkriptio:

1 Ohjelma Mikro-ohjelmointi Symbolinen konekieli Osoitustavat

2 Mikro-ohjelmointi Mikro-ohjelmoitava tietokone suorittaa päämuistissa olevaa (konekielistä) ohjelmaa Konekäsky suoritetaan suorittamalla käskyä vastaava mikro-ohjelma Mikro-ohjelmoitava koneemme kykenee seuraaviin toimintoihin:

3 Toiminnot Tiedon siirto rekisterien välillä sekä rekisterin ja päämuistin välillä Yhteen- ja vähennyslasku Kahdella kertominen Loogiset vertailut A<0, A=0 Siirtyminen mikro-ohjelmassa siirtyminen seuraavaan käskyyn ehdollinen ylihyppy (skip) ehdoton hyppy (jump) Tiedon siirto rekisterien välillä sekä rekisterin ja päämuistin välillä. Tietoa ei siis voi siirtää suoraan kahden päämuistin muistipaikan välillä. Rekistereistä tieto voidaan siirtää vain sille väylälle, johon kyseinen rekisteri on kytketty. Yhteen- ja vähennyslasku. On huomattava, että vähennyslaskussa vähentäjä on aina väylällä 1, kone siis osaa esimerkiksi vähennyslaskun A-MDR, mutta ei laskua MDR-A. Kahdella kertominen eli shiftleft-operaatio. Siis vain vasemmalle siirto, ja reunimmainen bitti hukkuu. Loogiset vertailut pienempi kuin ja yhtäsuuri kuin. Vain rekisterille A. Siirtyminen mikro-ohjelmassa. Kontrollin toteuttamiseksi on käytössä: siirtyminen seuraavaan käskyyn ehdollinen ylihyppy (skip) ehdoton hyppy (jump)

4 Ohjelmointi Periaatteessa tavallista ohjelmointia
Jokainen mikrokäsky sisältää 5 alikäskyä Rekisteri kerrallaan väylälle Jokainen mikrokäsky suorittaa haarautumisen tai asetuksen Mikrokäsky esitetään bittijonona, jossa toimintoja vastaavat ohjausbitit ovat 1

5 Esimerkki Mikro-ohjelma, joka laskee rekisterin D sisällön osoittaman muistipaikan sisällön ykkösbitit rekisteriin C Ratkaisu: Koska vain vasemman puolimmaista bittiä pystytään tutkimaan yksin, täytyy laskenta tehdä siirtämällä lukua aina bitti vasemmalle. Jos luku < 0, niin silloin 1. bitti on 1, muutoin 0

6 Algoritmi C:= 0 A:= hae(D) WHILE A <> 0 DO IF A < 0 THEN
C:= C+1 ENDIF shiftleft(A) ENDWHILE Korvataan aliohjelmat mikrokäskyillä ja silmukat hyppykäskyillä

7 Algoritmi jatkuu Ehdolliset jump-hypyt pois, korvataan ehdollisilla ylihypyillä ja ehdottomilla hypyillä

8 Algoritmi jatkuu

9 Symbolinen mikrokoodi

10 Mikrokoodi osoite 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

11 Konekieli

12 Konekieli Yksi kertolasku vaatii jo monta mikrokäskyä → ohjelmien kirjoittaminen työlästä Konekieli yhdistää mikrokäskyjä Konekielikoneen rakenne: Päämuisti Rekisterit PC IR ACC

13 Yksiosoitekone Käskyt 16-bittisiä
Kone suorittaa käskyjä yksi kerrallaan, peräkkäin Toinen operandi aina akku Ohjelma ja data päämuistissa

14 Konekäskyt

15 Eksponenttifunktio 2n Ohjelma muistipaikasta 371 alkaen
Data muistipaikoissa Algoritmi: MODULE exp(n) RETURNS 2n arvo:=1 WHILE n>0 DO n:=n-1 arvo:=arvo+arvo ENDWHILE RETURN arvo ENDMODULE

16 2n konekielellä 371 LOAD 383 372 STORE 382 373 LOAD 381
JUMPZERO 384 SUBTRACT 383 STORE 381 LOAD 382 ADD 382 STORE 382 JUMP 373 n

17 Osoitustavoista Osoitustapa: tapa, millä konekielen käskyn osoiteosa määrää käskyn todellisen operandin Osoitustavat: Välitön osoitus Suora osoitus Epäsuora osoitus Indeksoitu osoitus Epäsuora indeksoitu osoitus


Lataa ppt "Ohjelma Mikro-ohjelmointi Symbolinen konekieli Osoitustavat."

Samankaltaiset esitykset


Iklan oleh Google