SzA1 - Számítási Modell, Architektúra Flashcards
A számítási modell fogalma
(Korábban a jelentése: soros vagy párhuzamos végrehajtás?)
A számításra vonatkozó alapelvek absztrakciója.
Az architektúra fogalma
1964 Amdahl: Azon ismeretek összessége, amelyeket egy alacsonyszintű programnyelvben programozónak ismernie kell, hogy hatékony programot írjon, pl.: regiszterek, memória,
címzési módok, utasításkészlet.
A külső jellemzők, a belső felépítés és a működés összessége.
Adott absztrakciós szinten (Level) a számítási modul (M), a specifikáció (S) és az
implementáció (I) összessége.
A számítási modell és az architektúra kapcsolatai
Számítási modell (Leírása igényeket támaszt)
Programnyelv (Ez kielégíti a számítási modell igényeit)
Architektúra
A számítási modell jellemzői
- Min hajtjuk végre a számítást?
- Hogyan képezzük le a számítási feladatot?
- Mi vezérli a végrehajtás sorrendjét?
Min hajtjuk végre a számítást a Neumann-féle számítási modellnél?
- Számítást adatokon hajtjuk végre
- Az adatokat tipikusan változók jelentik
- Az adat végtelen értékmódosítási lehetőséggel rendelkezik (többszörös értékadás)
- Az adatok és az utasítások közös memóriaterületen helyezkednek el
- A számítási műveleteket az adatokon végrehajtott adatmanipulációs műveletek sorozatának segítségével végezzük el
Hogyan képezzük le a számítási feladatokat a Neumann-féle számítási modellnél?
Mi vezérli a végrehajtást a Neumann-féle számítási modellnél?
Az adatfolyam modell alap leírása
A számítást itt is adatokon hajtjuk végre, de csak egyszeres értékadás van, és a bemeneti adatokat egy adathalmaz formájában adjuk meg. A számítási feladatot adatfolyami gráffal képezzük le, input adatok halmazával. A gráf tartalmaz csomópontokat (műveletet végző egységek) és éleket (I/O adatok).
Mi vezérli a végrehajtást az adatfolyam modellnél?
Adat meghajtott (stréber modell), nem vezérelt meghajtott.
A végrehajtás sorrendjét az adatok elérhetősége határozza meg.
Az adat meghajtott program utasításai semmilyen szempontból sem rendezettek.
- Az adatok tárolása az utasításon belül történik (regiszterek).
- Procedurális jellegű
- Igen magas kommunikációs és szinkronizációs igény, ezáltal bonyolultabb, mint pl a Neumann
A Neumann-féle és az adatfolyam modell összehasonlítása
Processzor szintű logikai architektúra
• adattér • adatmanipulációs fa • állapottér • állapot műveletek
A processzor szintű fizikai architektúra
• Műveletvégző • Vezérlő • Input/Output • Megszakítás
A számítási modellek csoportosításai
- Számítási modellek: szekvenciális vagy párhuzamos
- Végrehajtás meghajtása: vezérlés, adat, vagy igény meghajtott
- Probléma csoportosítása: procedurális vagy dekleratív
A számítási modellek csoportosítása
„Min hajtjuk végre a számítást?” elv szerint csoportosítva
<n></n>
(piaci megvalósítás:)
1) @Adatalapú számítási modell
(Az adatokat típusokba soroljuk (elemi és összetett). Az elemi adattípusok meghatározzák az adat értelmezési tartományát, értékkészletét, az értelmezett műveletek halmazát. Pl.: integer (16 bites) esetén ÉT: –32768 – +32767, ÉK: egész értékek, értelmezett műveletek: +, –, ×, ÷.)
- a)— @Neumann-féle számítási modell
- b)— @adatfolyam számítási modell
- c)— @applikatív
(kísérleti stádium)
2) @Objektum alapú számítási modell
3) @Predikátum – logikai számítási modell (prolog)
4) @Tudás alapú számítási modell
5) @Hibrid számítási modell (pl Neumann és az adatfolyam modell keveréke)
Neumann -féle számítási modell igénye
Programnyelv iránt
- változó deklarálás
- adatmanipuláló utasítások
- vezérlésátadási utasítás
Architektúrával szemben:
- változók kezelésére memória
- a következő utasítás címét tartalmazza egy speciális vas: PC (Program Counter), amely inkrementál
Neumann elvű modell esetén a számítási feladat megengedi:
- változók deklarálását
- adatmanipulációs utasítások deklarálását
- vezérlésátadó utasítások deklarálását