Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Tietokoneen arkkitehtuuri ja konekieli Tietotekniikan perusteet 6.10.1998 Pekka Orponen.

Samankaltaiset esitykset


Esitys aiheesta: "Tietokoneen arkkitehtuuri ja konekieli Tietotekniikan perusteet 6.10.1998 Pekka Orponen."— Esityksen transkriptio:

1 Tietokoneen arkkitehtuuri ja konekieli Tietotekniikan perusteet 6.10.1998 Pekka Orponen

2 Väylät Tiedonsiirtoa tietokoneen osien välillä ei kannata toteuttaa johdottamalla kaikki osat kaikkiin (n osaa  O(n 2 ) johtoa) Väylä (engl. bus): usean komponentin yhteisesti jakama tiedonsiirtolinja Toteutus ks. monisteen kuvat 24-25 Jaettu resurssi  osallistujien täytyy tahdistaa (synkronoida) toimintansa  kättelysäännöt (engl. handshake protocols)

3 Kolmen signaalin kättelymenettely Esitys vuorovaikuttavina automaatteina: process wait_2 wait_1 readwait write process RECEIVESEND R  1 A  1 D = 1? R  0 D = 0? A  0 R = 1? D  1 A = 1? D  0 RDA 000 receive100 send110 receive010 receive011 send001 receive000

4 Tietokoneiden von Neumann -arkkitehtuuri Oikeammin: ”EDVAC-arkkitehtuuri”. John von Neumann, ”First Draft of a Report on the EDVAC”, Moore School of Electrical Engineering, Univ. of Pennsylvania, June 1945. Ensimmäinen toteutus: EDSAC (Electronic Delay Storage Calculator), Cambridge Univ., May 1949. Monisteen kuvat 28, 29. Toimintaperiaate: –Laitteiston käsittelemä tieto on talletettu sen muistiin. –Laitteisto muuntaa muistin sisältöä suorittamalla jonon synkronoituja toimenpidekokonaisuuksia, konekäskyjä. Suoritettavaa käskyjonoa sanotaan koneen (konekieliseksi) ohjelmaksi. –Tallennetun ohjelman periaate: myös ohjelma (so. suoritettavien käskyjen koodit) on tallennettu koneen muistiin. Erittäin tärkeä idea laitteiston joustavan käytön kannalta.

5 Tietokoneen komponenttijako Ohjausyksikkö (CU, control unit) –Automaatti, joka säätelee (tahdistaa & ohjaa) käskyjen ja datan noutoa muistista, käskyjen suoritusta ja tulosten tallennusta takaisin muistiin Aritmeettis-looginen yksikkö –Logiikkapiirit laskutoimitusten suorittamista varten Rekisterit –Kiikuista rakennettuja kulloinkin välittömästi käsiteltävänä olevan tiedon tallennuspaikkoja Muisti –Käsiteltävän tietoaineiston sekä käsittelyohjelman tallennukseen Oheislaitteet –Syöte- ja tulostuslaitteet –Massamuistilaitteet

6 Tyypillisiä konekäskyjä Merkintöjä: –M[i]-- muistipaikan i sisältö –AC-- rekisterin AC (”akun”) sisältö –PC-- ohjelmalaskuri: suoritettavana olevan käskyn muistiosoite KäskyToiminto LOADiAC  M[i] STOREiM[i]  AC ADDiAC  AC + M[i] SUBiAC  AC - M[i] CLEARAC  0 NOPei mitään HALTpysäytä kone JUMPiPC  i JMPZijos AC = 0, niin PC  i (muuten PC  PC + 1)

7 Käskynhakusekvenssi Tietokone suorittaa muistiinsa osoitteesta p 0 alkaen tallennettua ohjelmaa pääpiirteissään seuraavasti (yksityiskohtiin palataan ensi kerralla): 1PC  p 0. 2Nouda muistipaikkaan M[PC] tallennettu käsky käskyrekisteriin INSTR. 3Suorita rekisterissä INSTR oleva käsky. -jos käsky oli hyppykäsky, päivitä rekisteriä PC siinä määrätyllä tavalla; -muuten aseta PC  PC + 1 4Palaa kohtaan 2.

8 Esimerkkiohjelmia Oletetaan, että ohjelmat on tallennettu muistiin alkaen muistipaikasta 10. Esimerkki 1. Muistipaikkoihin 100 ja 101 tallennettujen lukujen yhteenlasku; tuloksen tallennus paikkaan 102: 10:LOAD100 11:ADD101 12:STORE102 13:HALT

9 Esimerkkiohjelmia (jatkuu) Esimerkki 2. Muistipaikkaan 100 tallennetun luvun n neliöinti; tuloksen n 2 tallennus paikkaan 102. Oletetaan, että muistipaikkaan 101 on ennalta tallennettu lukuvakio 1. 010: CLEAR-- M[102] = lopputulos n 2, 011:STORE102--alkuarvo 0 012:LOAD100-- M[103] = kierroslaskuri, 013:STORE103--alkuarvo n 014:JMPZ021-- jos M[103] = 0, jatka os. 021 015:LOAD102-- M[102]  016:ADD100--M[102] + n 017:STORE102-- 018:LOAD103-- M[103]  019:SUB101--M[103] - 1 020:JUMP013-- jatka osoitteesta 013 021:HALT-- loppu; tulos = M[102] … 100: 000000 101:000001 102: 000000 103:000000


Lataa ppt "Tietokoneen arkkitehtuuri ja konekieli Tietotekniikan perusteet 6.10.1998 Pekka Orponen."

Samankaltaiset esitykset


Iklan oleh Google