Professional Documents
Culture Documents
Info - 1 Processzorok És Memóriák
Info - 1 Processzorok És Memóriák
PROCESSZOROK ÉS MEMÓRIÁK
NEUMANN-ELVEK:
NEUMANN CIKLUS
1. Program indítása
2. Utasításszámláló 1-re állítása
3. Utasítás elővétele
4. Utasítás dekódolása
5. Utasítás végrehajtása
6. Utasítás számláló növelése
7. Program vége, vizsgálat
8. Ha vége kilép, ha nem visszalép a 3.
pontra
Oldal 2 / 4
A processzor a számítógép „agya”, azon egysége, mely az utasítások értelmezését és végrehajtását vezérli.
Adatbusz: Biztosítja az adatátvitelben résztvevő eszközök között az adatkapcsolatot. Hol az egyik, hol a másik
eszköz küldi rajta az adatokat. Kétirányú.
Címbusz: A címinformáció továbbítására szolgál. A cím alapján történik az adatátvitelben résztvevő eszköz
kiválasztása, és a belső memóriarekeszek vagy regiszterek megcímzése. Processzorból indul ki, egyirányú.
Vezérlőbusz: Vezetékei vezérlik az egyes eszközöket, időzítik az adatátvitelt. pl. jelzik, ha a processzor éppen a
memóriából kíván olvasni, és azt is, hogy a memória elhelyezte már a kért adatot az adatbuszon.
SZUPERSKALÁR ARCHITEKTÚRA
Több utasítást képes egyszerre végrehajtani azáltal, hogy a CPU bizonyos funkcionális elemeit (például: ALU)
többszörözik. Az utasításlehívás és dekódolás után – amennyiben az utasítások egymástól függetlenek és a
szükséges erőforrások rendelkezésre állnak – egyidejűleg több utasítás végrehajtása is elindulhat a megfelelő
erőforrásokkal. Később az eredményeket összegyűjti és újra rendezi.
Oldal 3 / 4
A CISC processzorok utasításkészlete jóval több, bonyolultabb utasítást tartalmaz, mint a RISC processzorok
utasításkészlete. A CISC processzorok gépi kódja átláthatóbb, rövidebb hiszen elképzelhető, hogy ami RISC
processzoron több sornyi gépi kód lenne, azt egy darab CISC utasítás magába foglalja. Ám ez valóságban
sokszor lassabb programfutást eredményez, mivel sok esetben a bonyolultabb utasítások lassabban hajthatóak
végre, míg egy RISC CPU-nál minden utasítás egy gépi ciklust igényel (ez segíti az átlapolást is), így inkább a RISC
processzorok lettek az elterjedtebbek. Ma már persze rengeteg utasításkészlet van, amiben keverednek a
RISC/CISC elvek.
SISD (single instruction, single data): egy utasítás dolgozik egy adaton. Nincs párhuzamosítás.
SIMD (single instruction, multiple data): egy utasítást hajtunk végre, de egyszerre több adaton. Pl.: két
vektor összeadása: egyik CPU összeadja a páratlan, míg a másik a páros sorszámú elemeket.
(Vektorprocesszor, avagy tömbprocesszor)
MISD (multiple instruction single data): Több utasításfolyammal egyetlen adatfolyamot dolgoz fel. Ilyen
gép a gyakorlatban nem létezik.
MIMD (multiple instruction multiple data): a különböző adatokon teljesen különböző műveleteket
hajtunk végre. (Többmagos, vagy többprocesszoros számítógép)
MEMÓRIATÍPUSOK
RAM (Random Access Memory): Pl. a számítógép operatív memóriája, cache és a regiszterek. Tartalma
tetszőlegesen törölhető, újraírható, kiolvasható. A tápfeszültség megszűnésével információ tartalmukat
elvesztik. Bármely tárolt elem azonos idő alatt érhető el. Két nagy csoportja:
ROM (Read Only Memory): Nem változtatható információt tartalmaz (fix tár). Az információt a gyártó vagy a
felhasználó írja be a ROM-ba, a benne lévő információ bármikor kiolvasható, tartalmát a felhasználó közvetlenül
nem tudja módosítani. A RAM-nál lényegesen lassabban működik. Jellemző típusai:
LEBEGŐPONTOS SZÁMÁBRÁZOLÁS
PONTOSSÁG PROBLÉMA
Az előjeles vagy előjel nélküli egész és a lebegőpontos számábrázolás esetében is csak fix értékek tárolhatók, de
míg ezek az egészek esetében pontosan megegyeznek a tárolni kívánt egész számokkal, a lebegőpontos
számábrázolás esetében ez nincs így, mivel bárhogy válasszuk is meg a számábrázolás határait, az ezek között
lévő végtelen sok valós szám nyilván nem ábrázolható véges helyen. Ezt úgy is értelmezhetjük, hogy a
lebegőpontos tárolás során kényszerű kerekítés történik. Mindezek miatt az ábrázolási határok mellett a
pontosság is jellemez egy-egy konkrét lebegőpontos számábrázolást, ami megadja, hogy egy adott szám tárolása
esetén a tárolni kívánt és a tárolt szám értéke legfeljebb milyen távol lehet egymástól. A lebegőpontos számok
normalizált alakú tárolásából következik, hogy a pontosságot a mantissza tárolási mérete határozza meg, az
ábrázolási határok pedig elsődlegesen a karakterisztika ábrázolási méretéből adódnak.
TÚLCSORDULÁS (OVERFLOW)
Az egész számok véges biten történő ábrázolása miatt mindig van legkisebb és legnagyobb ábrázolható szám.
Amikor műveletet végzünk, elképzelhető, hogy a művelet eredménye már nem ábrázolható az operandusokkal
megegyező méretben. Ezt a jelenséget túlcsordulásnak (overflow) nevezzük. Túlcsordulás tehát lehetséges
pozitív és negatív irányban is! Figyelem, az alulcsordulás nem a negatív irányban történő túlcsordulást jelenti!
Könnyebben megjegyezhető, ha úgy tekintünk a túlcsordulásra, hogy a szám abszolút értéke túl nagy és emiatt
nem ábrázolható.
ALULCSORDULÁS (UNDERFLOW)
A túlcsorduláshoz (ami pozitív vagy negatív irányban túl nagy szám ábrázolásának kísérletét jelenti, azaz a
számábrázolási intervallumból lépünk ki) hasonló az alulcsordulás (underflow): olyan kis abszolút értékű számot
akarunk ábrázolni, ami már nem ábrázolható. A kettes számrendszerben történő normalizált ábrázolásnak
köszönhető megtakarítás (azaz, hogy a mantissza első számjegye fixen 1, így a mantisszának csak az 1-től jobbra
lévő részét tároljuk el, ezzel 1 bitet megtakarítva) hátrányos hatása itt jelentkezik: a legkisebb tárolható mantissza
1.0 ... 0, a legkisebb karakterisztika AK min (ahol A jelenti a számrendszer alapját, K min pedig a legkisebb
ábrázolható karakterisztikát) , a legkisebb tárolható pozitív szám ezek szorzata: 1.0….0 * AK min = AK min