SzA2 - Az Adattér, Adatmanipulációs Fa Flashcards

1
Q

Az adattér fogalma

A

Olyan tér, ami biztosítja az adattárolást olyan formában, hogy az adattérben található adatok közvetlenül manipulálhatók legyenek a CPU által.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Az adattér két része és jellemzőik

A

Memóriatér

  • Nagyobb, lassabb, olcsóbb
  • Külső lapkán helyezkedik el
  • Címtere közös lehet az I/O eszközök címterével

Részei: fizikai memória, virtuális memória

Regisztertér

Az adattér egy nagyteljesítményű része.

  • Kisebb, gyorsabb, drágább
  • Processzor lapkán helyezkedik el
  • Külön címtere van

Osztályozása:

  • egyszerű regisztertér
  • különféle adattípusokhoz különálló regiszterek
  • összetett (többszörös) regiszterkészlet
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

A virtuális és fizikai memória kulcsjellemzői

A

Létezik olyan transzparens (a felhasználó szempontjából) mechanizmus, amely az éppen futó program számára nem szükséges adatokat automatikusan a fizikai memóriából átteszi a virtuális memóriába. Kétirányú adatforgalom: FM (itt fut a program, sokkal kisebb, gyorsabb) <=> VM (ezt látja a programozó, nagyobb, lassabb)

Létezik olyan a felhasználó számára transzparens mechanizmus, amely a felhasználó által használt virtuális címet futási (execution) fázisban automatikusan lefordítja valós címekké. Egyirányú adatforgalom VM => FM (ma már erre a célra címfordító hardverek vannak a CPU- ban)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Az egyszerű regisztertér

A
  1. egyszerű regiszter struktúra AC-> akkumulátor regiszter (egyetlen, kitüntetett regiszter volt régebben, minden művelet után menteni kellett az eredményt az operatív tárba, hogy a következő operandust be tudjuk hívni)
  2. több dedikált adatregisztert AC + Data regiszterek (a programok feldolgozását felgyorsította)
  3. univerzális regiszterkészlet (több regiszter volt, amit szabadon fel lehetett használni, hatékonyság növelése, gyorsabb, új programozási stílus, a gyakran használt változókat regiszterekbe lehetett menteni). Az első ilyen gép 1956-ban jelent meg, ami 8 db regisztert tartalmazott.
  4. Stack Architektúra (regiszter): a processzor mindig a legfelső regisztert látja. Stack operandus: a regiszter címzés rövid, gyors, tulajdonképpen nem igényel címzést. Hátránya: szekvenciális hozzáférés a regiszter tartalmához, lassítja a feldolgozást, nem lehet a belső adatokat közvetlenül elérni (lehívás (fetch) szűk keresztmetszet).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Különféle adattípusokhoz különálló regiszterek

A

Cél a folyamatok felgyorsítása különös tekintettel a lebegőpontos (FP) műveletekre

SIMD adattípus
- multimédiás adattípus
- egy regiszterben több adatot tárolunk

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Összetett (többszörös) regiszterkészlet

A

Kontextus: a program végrehajtás során a regiszterek állapotát az állapot információkkal (PC, flag) együtt kontextusnak nevezzük. Amennyiben egy eljárást hívunk kontextust kimentjük az operatív tárba LASSÚ folyamat!

Megoldás: ahány eljárás annyi regiszter, több regiszterkészlet.

Többszörös regiszterkészlet tervezési tere:

  • Több egymástól független regiszterkészlet: Adatátadás (paraméterátadás) operatív táron keresztül történik.
  • Átfedő regiszterkészlet:
    • Több egymásba ágyazott eljárás gyorsítására alkották meg.
    • Hátránya, hogy fix és merev.
    • A regiszterek száma és a regiszterkészletek száma szerint is lehet szűk a keresztmetszet, túlcsordulás léphet fel.
    • 6-8 regiszterkészlet esetén már kezelhető (4-5%) a túlcsordulások száma
    • Max. 8 egymásba ágyazott eljárás/folyamatunk legyen.
  • Stack-cache
    • Stack és közvetlen elérésű cache kombinálása
    • kezelését a compiler végzi
      • minden eljáráshoz hozzárendel egy regiszterkészletet, amekkorára szüksége van
    • SP (stack pointer): az adott tartományt lefoglalja az adott folyamat számára. Az aktiválási rekord első elemére mutat.
    • nincs túlcsordulás
    • nincsenek üres helyek
    • átfedő regiszterek paraméterátadáshoz
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Stack-cache

A

Ötvözi a stack gyorsaságát, a veremregiszter szervezését és a regiszterek közvetlen címezhetőségét.

Működése:

  • A compiler minden eljáráshoz hozzárendel egy változó hosszúságú aktiválási rekordot (regiszterkészlet)
  • a StackPointer (SP) lehetővé teszi az aktiválási rekordok közvetlen elérését
  • A SP és a relatív távolság megadásával bármely adat közvetlenül elérhető a stack-cache-ben
  • Az aktiválási rekordok számának csak a stack-cache fizikai mérete szab határt.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Adatmanipulációs fa

A

Megmutatja a potenciális adatmanipulációs lehetőségeket. Bizonyos részfái megmutatják például egy adott implementáció adatmanipulációs lehetőségeit.

Adattípusok: FX1(Byte), FX2, FX4, BCD, FP4, FP8, boolean (FX = fix, FP = lebegő pontos, BCD = binárisan ábrázolt decimális)

Műveletek: például fix számosnál: +, -, *, /

Operandusok típusai: rrr, rmr, …, mmm (r = regiszter, m = memória)

Címzési módok: memória típusú operandusoknál R+D, PC+D, RI+D(D = displacement, R = regiszter, PC = program counter, RI = index register)

Gépi kódok (utasítások): Pl.: 10011110

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Adattípusok (ábra)

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Címzési módok

A

Címosztás (4GB->64GB)

  • Abszolút címzés (nem használjuk)
  • Relatív címzés (választunk egy bázis címet, és megadjuk a tőle való távolságot(különbséget). Y=B+D).
  • Báziscím lehet:
    • Dedikált regiszter
    • Program counter
    • Top offset
    • Bármilyen más mutató

Cím módosítása:

  • Egy adatblokk egymás követő elemeit (autóinkrementálás/autódeklarálás)
  • Egy adatblokk egyes speciális elemét

S-Start

Rxi- az adott indexregiszter tartalma

Y: cím

  • meghatározása: Ye=S+Rxi
  • kétdimenziós esetben: Ye=S+(Rbi)+(Rbj)

Tényleges (deklarált) cím interpretálása

  • Direkt vagy indirekt címzés
  • Valós vagy virtuális
  • Utasításos kódok
How well did you know this?
1
Not at all
2
3
4
5
Perfectly