Az utasítás- és operandus típusok, állapottér, állapot műveletek Flashcards
Az utasításfeldolgozás menete
- Gépi kódú utasítás: Műveleti kód + címrész (mit végzünk el, meghatározott bit hosszúság, ez határozza meg, hogy hány operanduson, hány adaton)
- Műveleti kód: megállapítja, hogy mely utasítások vannak engedélyezve, és milyen operanduson használható (FX, FP, BCD).
kép9, kép10
Az utasítások fajtái
Legyen
- op – operandus,
- s – source,
- d – destination,
- @ - tetszőleges művelet
• 4 címes: opd=ops@ops2, op4: következő utasítás címére mutat
Hátránya:
- memóriapazarlás
- további adatrögzítési hibák
- merev program struktúra -> nehéz program karbantartása
• 3 címes PC tárolja a következő utasítás címét.
Előnye: párhuzamos végrehajtás lehetséges
Hátránya: hosszú utasítások, nagy mennyiségű adat, sok memóriát igényel, lassú, kevés/nincs elágazás. (Mai RISC processzorok többségében ezt használják) rrrd minimum 32 regiszter
• 2 címes
o ops1=ops1@ops2, első operandus általában csak regiszter lehet. Kettes operandus lehet memóriacím is.
o Pl.: ADD[100][102], 100-as és 102-es címet adja össze, az eredmény a 100-as címre megy.
o Mai CISC processzorok általában ezt használják
• 1 címes o AC LOAD[100]
o ADD[102]
o STORE[100]
o Akkumulátorba betölti a 100-as címet, majd hozzáadja a 102-es címet. Végül kiírjuk az akkumulátor tartalmát. Az utasítások halmozhatók.
• 0 címes fajtái:
o STACK (push, pop) – verem műveletek
o NOP – no operation o műveleti kód tartalmazza az eredményt is. (CLEAR D’)
o Előny: rövid, hátrány: utasításkezelő műveletek
Operandus típusok
• Akkumulátor
o Előnye: gyors
o Hátránya: egy van belőle
• Memória
o Előnye: nagy
o Hátránya: lassú, hosszú címek->hosszú utasítás
• Regiszter
o Előnye: gyors
o Hátránya: korlátozott darabszám
• Verem
o Előnye: gyors, nincs címzés
o Hátránya: csak a tetejét látjuk
• Immediate
o Magában a programban adunk értéket a változónak
Architektúrák osztályozása, szabályos architektúrák
• Szabályos
o Akkumulátor
▪ akkumulátor memória
▪ akkumulátor regiszter
o memória
▪ 2 címes (mm)
▪ 3 címes (mmm)
o regiszter
▪ 2 címes (rr)
▪ 3 címes (rrr) (legjobb teljesítmény)
o stack
▪ sss (kontextus adatok tárolására)
• Kombinált/kompozit: vegyesen helyezkednek el az operandusok Bizonyos architektúrák ugyan azt az operandus típust biztosítják valamennyi adatmanipuláció során. LOAD és STORE kivételek.
Állapottér
Programból látható, és programtranszparens (csak a rendszer által látható) információkat hordoz.
Pld:
- Virtuális memória kezelés
- Megszakítási folyamatok
Állapot indikátorok
- ZERO
- NEG
- OVERFLOW
- CARRY
Floating point
- Alulcsordulás
- Túlcsordulás
- Denormalizált szám
- Nullával való osztás
- Érvénytelen művelet
Állapotműveletek
• Program counter o Inkrementálás
- Felülírás egy utasításból átvett címre
• Flag
- Set
- Reset
- Save
- Load
- Clear