2012. október 9., kedd

Számítógép architektúrák - SZSZK 21


Az utasítás szerkezet
---------------------

- Az utasítások megadásakor meg kell adni az elvégezni kívánt műveletet és  meg kell adni az utasítások végrehajtása közben felhasználni kívánt adatokat. Ezek az adatok az OPERANDUSOK.

- Az operandusok több féle módon állhatnak rendelkezésre:
- saját értékével- közvetlenül
- eltárolva egy regisztrerben vagy a memóriában
- külső forrásból, például egy perifériából.

- Az utasításban szereplő adatok helyének meghatározásával a címzési módok foglalkoznak:
- közvetlen adatcímzés
- regisztercímzés
- közvetlen memória címzés
- indirekt címzések

===> Egy processzor utasítás általános szerkezete:

UTASTÁSKÓD - CÍMZÉSI MÓD - OPERANDUS

Megjegyzés: a gépi kódú utasításokban mindhárom szerkezeti elemet bináris számok azonosítják.

Utasítás típusok
----------------

1., Operandusok száma alapján történő csoportosítás
- Nulla operandusú utasítás -> nincs operandus (Pl. NOP, ami nem csinál semmit.)
- 1 operandusú utasítás - ide azok az utasítások taroznak, ahol elegendő egy információ a művelet elvégzéséhez (ilyen pl. egy logikai művelet)
- 2 operandusú utasítások - legáltalánosabb utasítások, ebben műveletben két operandus szerepel, ahol a művelet eredménye általában az első operandus helyére kerül.

2., Adatmozgató utasítások - adatok mozgatása két opernadus között

3., Számítási műveletek - ebbe a csoportba taroznak a számítógépen általánosan alkalmazott matematikai műveletek és speciális parancsok.

a., Aritmetikai műveletek
- ADD - összeadás
- SUB - kivonás
- CMP - összehasonlítás
- MUL - szorzás
- DIV - osztás

b., Logikai műveletek
- AND (logikai ÉS)
- NOT (logikai TAGADÁS)
- TEST - bitek értékének tesztelése
- SHL (bitléptetés balra), SHR (bitléptetés jobbra) stb., 

4., Összehasonlító és elágazás-kezelő utasítások

- Az utasítás végrehajtás (Neumann elvű számítógépeknél) alapértelmezés szerint soros szerkezetű, ami azt jelenti, hogy az utasítások végrehajtása, egymás után, a tárolás sorrendjében történik. Ha ezt a szerkezetet meg akarjuk változtatni, akkor két programozási módszer állé rendelkezésünkre:

a., Elágazás
- Az elágazás olyan szegmense a programnak, amelyben a következő utasítás valamilyen logikai döntés eredményének függvényében alakul ki.

b., Ciklus
- A ciklusok a programok olyan szerkezeti egységei, amelynek segítségével egy többször végrehajtandó utasítás ismételt felírása helyettesíthető.


Utasítás végrehajtás folyamata:
-------------------------------

1., Az utasítás beolvasása a processzorba 

2., A beolvasott utasítás dekódolása

3., Az operandusok beolvasása

4., A művelet végrehajtása

5., Az eredmény tárolása

6., A következő utasítás címének meghatározása


A processzor számítási teljesítményét meghatározó tényezők
----------------------------------------------------------

- A számítógépek digitális áramkörei ciklusokban működnek ütemezve valamilyen frekvenciával. A ciklikus működés az órajelfrekvencia megfelelően választott étékének használatával érhető el. --> Erre azért van szükség, mert a logikai érékeket reprezentáló feszültség szintek csak bizonyos idő után állnak be a bináris 0-nak vagy 1-nek megfelelő értékre.

- A sebességet úgy tudjuk meghatározni, hogy megmérjük a feladat elvégzésére fordított időt.

Képlet: F = C * T * U 

Ahol: F- egy feladat végrehajtásához szükséges idő
C- egy utasításra eső átlagos ciklusszám
T- egy ciklushoz szükséges idő
U- egy feladat végrehajtásához szükséges utasítás szám.

A számítógép teljesítményének mérése
------------------------------------

- Az egységnyi idő alatt végrehajtott utasítások átlagos száma. 
Mértékegységek:

- MIPS (Million Instructions Per Second - millió művelet/másodperc)

- MFLOPS (Million of Floating Point Operations per Second - másodpercenként végrehajtott lebegőpontos utasítások száma)

Nincsenek megjegyzések:

Megjegyzés küldése