SzA4. 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
kép11
• 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 kép12
Á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 o Felülírás egy utasításból átvett címre • Flag o Set o Reset o Save o Load o Clear kép13