Informatika 1 - Ellenőrző kérdések kidolgozása

A VIK Wikiből


Ez az oldal az Informatika 1 című tárgy keretei között, Dr. Móczár Géza oktató által kiadott ellenőrző kérdések kidolgozását tartalmazza.

A 2012/2013 tavaszi félévében kiadott kérdéssor megtalálható a wikin. Az aktuális legfrissebb kérdéssor pedig elérhető a tanszéki honlapon.

Mivel a kiadott kérdéssor elég rendszertelen, így célszerű az adott kérdés PONTOS feltüntetése is, hogyha frissülne a kérdéssor, akkor is könnyen beazonosíthatóak legyenek a kérdések. Továbbá szerintem az lenne a legcélszerűbb, ha az eredeti kérdéssor oldalszámozása alapján csoportosítanánk a kérdéseket.

Az ellenőrző kérdések kidolgozását kellene a .doc fájlból átültetni ide. 2012 őszén konzultáción megoldották az első 10 oldal feladatait: Ellenőrzötten helyes megoldások. Ebben kérném a segítségeteket. Akinek van egy kis ideje és kedve, az nyugodtan átvihet néhány feladatot a wiki aloldalra. Hibák előfordulhatnak benne, így ha tudjátok, akkor javítsátok. Sokat segítenétek ezzel, ugyanis a vizsgán a számítógép architektúrák részből a kérdések nagyrészt ezek közül kerülnek ki. Így kulcsfontosságú, hogy ez a tudásanyag, normális formátumban, könnyen bárki által szerkeszthetően elérhető legyen.

A táblázatokhoz egy kimásolható sablonkód:

1. Kérdés.... Hamis
2.
3.
4.
5.
6.

Magyarázat:

1. oldal kérdései

1. Kérdés:

Rajzolja fel a digitális számítógép Neumann-féle modelljének blokkvázlatát, sorolja fel a modell működését meghatározó alapelveket!

  • Belső programtárolás, programvezérlés
  • Utasítás és adat azonos közegen és formában (értelmezés algoritmus illetve PC szerint)
  • Szekvenciális utasítás végrehajtás
  • Egydimenziós lineáris címzésű memória
  • Bináris számábrázolás
  • ÁBRÁN: szaggatott: vezérlés, folytonos: adat

2. Kérdés:

Mi különbözteti meg egymástól a memóriában tárolt utasításokat és adatokat egymástól?

  • Semmi, ugyanabban a memóriában ugyanolyan formában (binárisan) van jelen mindkettő, DE:
    • Az utasítások programmal módosíthatók.
    • Az adattípusok műveletekhez rendeltek.
    • A PC dönti el, hogy melyikről van szó (tehát az értelmezés az algoritmusba van beépítve).
    • Szegmensszervezés esetén az utasítás a kódszegmensben, az adat az adat- és extraszegmensekben van.

3. Kérdés:

Sorolja fel milyen tényezőktől függ egy számítógép teljesítménye!

  • Az alkalmazott áramkörök sebességétől és a számítógép architektúrájától (szervezésétől).
  • Funkcionális egységek belső felépítésétől (CPU, memória, IO):
    • Adatszélesség.
    • Utasítás párhuzamosítás (Queue) / Gépi ciklusok párhuzamosítása (Pipeline).
    • Műveletvégzés sebessége (pl. speciális ALU (pl. kombinációs hálózat)).
    • Memória sebessége, architektúrája (pl. hierarchikus memória alkalmazása (pl. cache alkalmazása)).
  • Funkcionális egységek külső kapcsolódásától.
  • Utasításkészlettől (RISC/CISC).
  • Perifériáktól (DMA, Co-Processzor, stb.)

2. oldal kérdései

1. Kérdés:

2. Kérdés:

3. oldal kérdései

Neumann-alapelvnek megfelelő számítógépekre vonatkozó alábbi kijelentések közül jelölje x-szel az igaz állítás(oka)t és - jellel a hamis(ak)at!

A pontozásnál minden jó jelölés +0,5 pont, minden hibás jelölés -0,5 pont. Kihagyott kérdés 0 pont. Adott feladatnál az eredő pontszám >=0

1. Kérdés:

1. Az utasítást és az adatot külön memóriában tárolja, így azok, külön sínen gyorsabb elérésűek, és a hely alapján egyértelműen azonosíthatók. Hamis
2. A CPU egy - már meglévő - utasításkészlet gyorsabb implementálása (emulálása), érdekében mindig huzalozott vezérlő egységet tartalmaz. Hamis
3. Az indirekt és az indexelt címzés alkalmazása előnyösen alkalmazható összetett adatszerkezetek kezelésénél. Igaz
4. Négycímes utasításkészletnél nincs szükség vezérlésátadó utasításra (pl.: feltétel nélküli ugró utasításra). Igaz
5. A RISC elvű processzoroknál az összetett utasítások megvalósítására gyakran mikroprogramozott vezérlőegységet alkalmaznak. Hamis
6. Pipe-line alkalmazásakor az egymás után következő fokozatok (elemi műveletvégzők) között négy átmeneti tárolót kell alkalmazni. Hamis

Magyarázat:

  1. Pont az ellenkezőjére épül a Neumann-architektúra.
  2. Csak RISC-nél jellemző. CISC-nél nem.
  3. Indirekt, amikor nem közvetlenül adjuk meg a címet, hanem egy regiszter/memóriarekesz tartalma a cím. Gyorsabb elérés, könnyebb címzés.
  4. Nincs mert minden utasítás tartalmazza a következő utasítás címét.
  5. RISC esetén nincsenek összetett utasítások, és amúgy is többnyire huzalozott vezérlőegységet alkalmaznak.
  6. Egy is elég.

2. Kérdés:

1. A be és kimenő adatokat a gyorsabb elérés érdekében az aritmetikai-logikai (ALU) egységben tárolja. Hamis
2. DMA vezérlő alkalmazása esetén a ki/bemenő adatok a ALU-n keresztül olvashatók be/írhatók ki a memóriába. Hamis
3. Multitask-os rendszereknél a fizikai és a virtuális processzor összerendelést a ko-processzor végzi. Hamis
4. Indirekt memóriacímzésnél az utasítás címrésze a következő utasítást tartalmazó memóriahelyre mutat. Hamis
5. A stack frame (verem keret) alkalmazásakor a bemenő paraméterek helyének felszabadítása (keret lebontása) mindig a függvényt hívó program feladata. Hamis
6. A stack frame a szubrutinokat (függvényeket) megvalósító algoritmusok elejét és végét jelöli ki a memóriában. Hamis

Magyarázat:

  1. Inkább regiszterekben.
  2. A DMA vezérlő közvetlen adatátviteli kapcsolatot teremt a periféria és a memória között.
  3. Az operációs rendszer végzi.
  4. Indirekt a címzés, amikor nem közvetlenül adjuk meg a címet, hanem egy regiszter/memóriarekesz tartalma a cím.
  5. Pascalnál a hívott program feladata
  6. A hívott szubrutin által használt lokális változóknak foglalt helyet jelöli ki.

3. Kérdés:

1. Az eredeti Neumann modellnél a BE -és KI meneti egység különálló volt és a memóriával nem, csak az ALU-val tudott közvetlenül információt cserélni. Igaz
2. Az utasítást és az adatot külön memóriában tárolja, az utasítást és az adatot a memóriában a tárolás formátuma különbözteti meg. Hamis
3. A CISC elvű számítógépekben az utasítások nem azonos méretűek és rendszerint több óraciklus alatt hajthatók végre, s ez előnyös a pipe line alkalmazásánál. Hamis
4. Az ENTER és a LEAVE utasítás az x86-os processzornál a verem keret (stack frame) alkalmazását támogatja. Igaz
5. A RISC processzoroknál az aritmetikai utasítások operandusai vagy regiszterben, vagy a memóriában találhatók. Hamis
6. A térbeli és az időbeli lokalitási elvek miatt gyorsító tárakat (cache) csak az utasítások tárolására használhatnak. Hamis

Magyarázat:

  1. Lásd első oldal első feladat.
  2. Mindent egy közös memóriában tárol.
  3. A RISC előnyös a pipe-line alkalmazásához.
  4. ENTER x,y az y-adik szubrutinba (szintre) lép be, x Byte helyet foglal le (a globális veremből) a lokális változóknak. A LEAVE lebontja a lefoglalt helyet.
  5. RISC-nél kizárólag regiszterekben, memóriában sosem.
  6. Adat esetén is használnak.

4. Kérdés:

1. Az utasításokat memóriában tárolja, az adatokat perifériából kapja. Hamis
2. Az utasításokat és az adatokat bináris formában tárolja. Igaz
3. Az utasításokat és az adatokat a memóriában csak a program algoritmusa különbözteti meg. Igaz
4. Az utasításhoz és az adathoz külön-külön cím- és adatbusz tartozik. Hamis

Magyarázat:

  1. Mindent egy közös memóriában tárol.
  2. Lásd első oldal első kérdés.
  3. Lásd első oldal első kérdés.
  4. Ez a harward architektúrára igaz, a Neumann-ra nem.

4. oldal kérdései

34. Kérdés

C nyelvű függvény esetén a bemenő paraméterek helyének felszabadítása a hívó program feladata. Miért?

  • A nem rögzített paraméterszámú függvények (pl. printf) miatt bizonyos esetekben csak a hívó program tudja hogy hány paramétert kell felszabadítani.