Informatika | Középiskola » Számítástechnika szóbeli érettségi tételek, 1997

Alapadatok

Év, oldalszám:1997, 53 oldal

Nyelv:magyar

Letöltések száma:2141

Feltöltve:2004. június 07.

Méret:472 KB

Intézmény:
-

Megjegyzés:

Csatolmány:-

Letöltés PDF-ben:Kérlek jelentkezz be!



Értékelések

Nincs még értékelés. Legyél Te az első!


Tartalmi kivonat

1. tétel : A digitális számítógépek felépítése, számítógépgenerációk fejlődése A számológépek, számítógépek kialakulása : Eszközhasználat kialakulása. Számfogalom megjelenése i.e 1500 : az első számoló eszköz megjelenése 1642 : Pascal összeadó gépe - mechanikusan adta össze a számokat (fogaskerekek, rugók s egyéb huncutságok) 1671 : Leibnitz mechanikus összeadó és szorzó gépet épített. 1801 : Joseph Jacguard lyukkártya vezérlésű szövőgépet készített. 1822 : Charles Babbage fixpontos programozású célszámítógépet készít matematikai táblázatok megvalósítására. 1833 : Charles Babbage elkészíti a lyukkártya vezérlésű számítógép terveit. (később sem valósítja meg) 1890 : Hermann Hollerith lyukkártyás gépe, amit az 1890-es amerikai népszámlálás adatfeldolgozására készített. 1915 : Hollerith megalapítja az International Busines Machine Corporationt, az IBM-et. 1939 : Horward Aiken

elektromechanikus, relés, lyukszalagos gépet készít: MARK V, aminek már belső memóriája is van. A gép több, mint 1 millió alkatrészt tartalmazott 1946 : Elkészül az első elektronikus számítógép a pennsylvániai egyetemen. Neve: ENIAC (Electronic Numerical Integrator And Computer). Energiafelvétele : 175 kW Súlya 30 tonna volt 70000 db ellenállást, 10000 db kondenzátort, 5000 kapcsolót, 1500 db relét és 18000 db elektroncsövet tartalmazott. Az adatbevitel, kivitel lyukkártyával történt Összeadást, kivonást 10 tizedes pontossággal 0.0002 másodperc alatt végezte el A szorzást 00023 másodperc alatt 1948 : Neuman János kidolgozza a programvezérlés elvét. 1950 : szinte valamennyi fejlett országban megkezdődik a számítógépek gyártása. 1952 : befejezik a Neumann János által tervezett EDVAC-ot (Electronic Discrete Variable Automatic Computer), azaz az első tárolt programú számítógépet. 1981 : megkezdődik a számítógépek

általános felhasználása. Ekkor adják ki az első IBM számítógépet A számítógépek osztályozása : A, Technológiai felosztás : • • • • I. generációs számítógépek - elektroncsöves szg -- 1950 -1957 II. generációs számítógépek - tranzisztoros szg -- 1958 - 1964 III. generációs számítógépek - integrált áramkörös, IC-s szg -- 1965 - 1973 IV. generációs számítógépek - VLSI áramkörös szg -- 1973 - B, Az operatív tár szempontjból : • • • Művonal op. táras : közvetítő eszköz - az I generációs számítógépekben Ferrit gyűrűs op. táras - a I és a II generációs számítógépekben Félvezetős op. táras - III generációs számítógépektől C, Struktúra szerint : • • processzor centrikus számítógépek - az I. generációs számítógépek tárcentrikus számítógépek - a II. generációs számítógépek : a be és kimeneti egységek közvetlenül az operatív tárral kommunikálhatnak. A

perifériák mellett megjelennek a háttértárak • moduláris számítógépek - a III. generációs számítógépek : minden modul, egység az adat-, cím-, vezérlőbuszra csatlakoznak. Az adatáramlást a processzor szabályozza D, Alkalmazás szerinti felosztás : • I. generációs számítógépeket tudományos számításokra, gazdasági adatfeldolgozásokra használták. • II. generácíós számítógépeket ipari folyamatírányításokban használták 1.tétel • III. generációs számítógépeket már általánosan használják E, Programozás szerinti felosztás : • • • I. generációs számítógépek gépi - Assembler- programozásúak voltak II. generációs számítógépek magasszintű programnyelveket használtak III.generációs számítógépeknél jelenik meg az operációs rendszer F, Ár szerinti felosztás : Hardware - Software árarány HW SW 1950 1980 A Neuman-elv : a számítógép legyen teljesen elektronikus, általános

feladatok megoldására alkalmas, belső programozású. Azaz a programnak az operatív tárban kell hogy legyen Funkcionális modell : a Neuman-féle processzorcentrikus számítógép vázlata. vezérlõ egység adatátvitel bemeneti egység Aritmetikai és logikai egység kimeneti egység vezérlõ jel ALU perifériák operatív tár perifériák a Neumann elvű CPU vázlata : cím reg tároló cellák ALU utasítás számláló utasítás regiszter be-kimeneti egység utasítás dekóder stack Adatbeviteli egységek : bill., egér, fényceruza, scanner, videó, vonalkód olvasó, port Adatkiviteli egységek : monitor, nyomtató, videó, port. CPU : • vezérlő egység : 2 1.tétel utasításszámláló : a soron következő utasítás címe stack utasítás regiszterek : a végrehajtandó utasítás átmeneti tárolója, értelmezője utasítás dekóder : a végrehajtandó utasítás műveleti kódjának megfelelően az egyes részek működtetése. • ALU :

fixpontos műveletek, lebegőpontos műveletek, logikai műveletek, regiszter-regiszter műveletek, regiszter-tár műveletek. Részei : puffer (regiszter), akkumulátor (regiszter), elektronika • memória : (RAM, ROM, PROM, .) --- Részei : címregiszter, tároló cellák ⇒ RAM : írható, olvasható, tápfeszültség nélkül tartalma törlődik. Lehet dinamikus (kondenzátorokat tartalmaz - állandó frissítést igényel) vagy statikus (tárolókat tartalmaz - nem igényel frissítést). ⇒ ROM : gyárilag programozott, nem törölhető. ⇒ PROM : felhasználó által egyszer programozható ROM. ⇒ EPROM : felhasználó által programozható, UV fénnyel törölhető. ⇒ EEPROM : felhasználó által programozható, elektronikusan törölhető. • adat és címsín : Párhuzamosan működő vezetékek, az egyes egységek között. A címvezetékek száma meghatározza a megcímezhető memória-cellák számát. Az adatvezetékek száma az egyidejúleg továbbítható

adatbiteket határozza meg. ⇒ ⇒ ⇒ ⇒ 3 2. Tétel : Számrendszerek Számrendszerek Azoknak a jeleknek és elveknek az összessége, melyek birtokában bármely számot fel lehet írni. Ma már k izárólag h elyértékes ( pozicionális) s zámrendszereket al kalmaznak. A m indennapi él etben általános a tízes számrendszer, a számítástechnikában más pozicionális számrendszereket (bináris szr., nyolcas szr. hexadecimális sz) A helyiértékes számrendszer nemcsak egész, hanem tört és írracionális számok jelölésére is alkalmas. A számrendszereket az eg y h elyiértéken áb rázolható kom binációk a lapján s zokták e lnevezni. A számrendszer alapszáma (alapja) az egy helyiértéken ábrázolható kombinációk számával egyenlő. Az alapszám bármely 1-nél nagyobb egész szám lehet. Pl. : 10-es szr alapja = 10, 8-as szr alapja = 8 Tízes számrendszer : A 1 0-es sz r.-ben egy helyiértéken 10 különböző kombináció (szám)

ábrázolható, ezek a : 0,1,2,3,4,5,6,7,8,9 számjegyek. 567 = 100 ⋅ 7 + 101 ⋅ 6 + 102 ⋅ 5 Kettes számrendszer : A 2 -es számrendszerben egy helyiértéken 2 különböző kombináció ábrázolható, ezek a : 0,1 számjegyek. A kettes számrendszer jelentősége az elektronikus digitális számítógépek elterjedésével megnőtt, mert az adatokat 2-es számrendszerben célszerű ábrázolni, hiszen minden számjegyet egy elektromos jel meglétével (1) vagy hiányával (0) érzékelhet a gép. Hexadecimális számrendszer : A 16-os számrendszerben egy helyiértéken 16 különböző kombiáció ábrázolható, ezek a : 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F számok és betűk. 16-os szr. 0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F 10-es szr. 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16 Konverziók számrendszerek között 1, Szám10 ⇒ Számn Szám10:n A 10-es szr. beli számot osztjuk az alappal Az egyes maradékok fogják adni az egyes helyiértékeket a legkisebb helyiérték felöl a

legnagyobb felé. 4110 ⇒ 1010012 41 : 2 = 20 1 199710 ⇒ 7CD 16 1997 : 16 = 124 13 (D) 20 : 2 = 10 0 124 : 16 = 7 12 (C) 10 : 2 = 5 0 1 5:2=2 0 2:2 =1 1 1:2=0 <= 7 : 16 = 0 7 2, Számn ⇒ Szám10 Bármely 10-es számrendszer beli szám felírható : alap 0 ⋅ legkisebb helyiérték + alap1 ⋅ legkisebb helyiérték + 1 + alap n ⋅ legkisebb helyiérték + n alakban. Ezen alapul az átváltás 10-es szr.-ből n számrendszerbe 2.tétel 3FFF 16 ⇒ 1638310 3FFF 16 = 3 ⋅163 + F ⋅162 + F ⋅161 + F ⋅160 = 12288 + 3840 + 240 + 15 = 16383 1010112 = 1⋅ 25 + 0 ⋅ 24 + 1⋅ 23 + 0 ⋅ 22 + 1⋅ 21 + 1⋅ 20 = 32 + 8 + 2 + 1 = 43 1010112 ⇒ 4310 Műveletek kettes számrendszerben : 1, Összeadás : Bitenként adjuk össze a számokat az előző átvitelek figyelembe vételével. Az egyes bitösszegeket a összeadandó bitek kizáró-vagy kapcsolata adja meg. 0 ⊕ 0 = 0, 0 ⊕1 = 1, 1 ⊕ 0 = 1, 0101001 1001 + 110010 1 ⊕1 = 0, 2, Kivonás : A

kivonás az összeadásra vezethető vissza az A-B = A +(-B) ö sszefüggés al apján. A zaz a kisebbítendőhöz hozzáadjuk a kivonandó ellentettjét. Kettes szr.-ben egy szám ellentettjét kettes komplemensnek nevezzük Kettes komplemens előállítása : 1., képezzük a szám egyes komplemensét, ezt úgy tesszük, hogy a számot bitenként invertáljuk Majd az így kapott egyes komplemenshez hozzáadunk 1-et. Így kapjuk a kettes komplemenst számolással 2., jobbról az első 1-ig leírjuk változatlanul a biteket (az első 1-et is), majd innen kezdve invertáljuk a biteket. Így kapjuk a kettes komplemenst mechanikus úton Pl. : 1011101-nek az ellentettje az 100011 bináris szám. - egyes komplemens előállítása : 0100010 - kettes komplemens előállítása : 010001 0 + 1 100011 Példa kivonásra. 100011-101010 101010 kettes komplemense 10110 100011 + 10110 111001 3. Szorzás : A bi tenkét ös szeszorozzuk a s zámokat, m ajd a z összeadásra vonatkozó szabályokkal

összeadjuk az egyes részszorzatokat. Példa szorzásra : 1011*101 1011 0000 1011 110111 2 2.tétel 4. Osztás : pl. 1010 : 10 = 101 001 10 0 1111 : 11 = 101 0011 00 3 4. tétel : Algoritmusok Egy probléma megoldásának véges számú részlépésben történő egyértelmű és teljes leírását algoritmusnak nevezzük. Követelmények : • Az egyes részlépéseknek végrehajthatónak kell lennie. • A lépéseknek egyértelműnek kell lenni. Ez biztosítja, hogy tetszőlegesen sokszor végrehajtva, mindíg ugyanazt a részeredményt kapjuk. • A részlépéseket véges sokszor kell végrehajtani. Algoritmus tulajdonságai : • • • • • Meghatározottság Végesség - közölhető véges számú utasítással Kiszámító személytől független Bármikor bárki által ugyanolyan eredménnyel megismételhető Széleskörűség Az algoritmus leírása nagyon sok módszerrel történhet. Alkalmazhatunk rajzjeleket (pl lego összeállításának rajza), de

gyakori a szöveges leírási mód is (pl. szakácskönyv) Vannak kifejezetten algoritmus leírására kifejlesztett módszerek is : folyamatábra és struktogram. Folyamatábra elemei : Struktogram elemei : elemi lépés algoritmus eleje, ill. vége start egyszerû utasítás stop feltételes elágazás elemi lépés feltétel i n elemi elemi lépés lépés egyszerû utasítás feltételes elágazás ciklus i feltétel n feltétel elemi lépés Példa : minimum-maximum 4.tétel i start i szám = végjel számláló=0 n be : végjel n ki : üres sorozat be : szám összeg := 0 számláló := 0 be : szám összeg := összeg+szám n szám < min számláló := számláló+1 i min := szám szám > max i max := szám be : végjel összeg := 0 számláló :=0 be : szám amíg szám <> végjel összeg:=összeg+szám számláló:= számláló+1 szám < min i n szám > max min := szám i max := szám be : szám számláló=0 i ki : üres

sorozat stop n ki : min, max Egyéb jelölések : lásd 19. tétel 2 ki :min max átlag 5. tétel : A CPU felépítése és működése • Adatbusz: Adatok, műveleti kódok szálítására • Címbusz: Tárolórekeszek, I/O egységek címei • Vezérlőbusz: A tároló és I/O egységek vezérlése, buszkommunikáció vezérlése, megszakítások vezérlése, órajel. CPU A CPU tartalmazza : • Aritmetikai és logikai egységet • Összes regisztert ( A r egiszter eg y 1 6 b ites t ár, am ely n em a adatbusz címbusz vezérlõbusz külső munkatárban hanem magában a CPU-ban helyezkedik el. Így lényegesebbengyorsabb adathozzáférést biztosít.) • Utasításdekódoló egységet • Vezérlő egységet A számítógép működéséhez szükséges egy rend, mely meghatározza a használható adatok, utasítások szerkezetét. (Adatszerkezet 3 tétel) Utasítás szerkezet: Utasítás = cím + műveleti kód cím : az elvégzendő művelet operandusainak

helye a memóriában. műveleti kód : az elvégzendő művelet jelsorozata, mely alapján az utasításdekóder működteti a CPU-t 4 cimes utasítás Mûveleti kód 1.op 2op eredmény op következõ utasítás op. operandus lehet: • memória, vagy memóriaeltolás cím (MB-os címeknél nagyon hosszú lehet) • regiszter cím • közvetlen adat 2 címes utasítás Mûveleti kód 1.op 2op Az eredmény az első operandus helyén keletkezik, a következő utasítás címe az utasításszámláló regiszterben keletkezik. 1 címes utasítás Mûveleti kód op. Az első operandus a CPU kitüntetett regisztere az akkumulátor Műveleti kód: kód d w mod reg r/m 6 bit 1 bit 1 bit 2 bit a műveletet azonosítja regiszterbe v regiszterből : a művelet iránya 1 operandus vagy 2 operandus 00 az operandus közvetlen adat 01 az eltolási érték 1 bytos 10 az eltolási érték 2 bytos 11 a következő 3 bit regiszter 3 bit ha a mod 11 volt az utasítás erre a regiszterre vonatkozik 3

bit az indexelt cimzések mely regiszterek között zajlanak és hogyan számítandó a valódi cím 5.tétel Címzési módok: • Abszolut: Közvetlen tárcímet adok meg • Relatív: Adott tárcímhez való eltolást adom meg • Direkt: A megadott címen operandust találok • Indirekt: A megadott címen egy újjab címet találok • Direkt regiszteres címzés: a regiszterben a cím található • Indirekt regiszteres címzés: a regiszterben adatcím van , ahol a címet találjuk Címmódosítások : • Bázisregiszteres címzés: Valódi cím = Bázisregiszterben megadott cím + eltolási érték (a cím helyett csak az eltolási érték az operandus, így jelentősen lerövidül az utasítás) • Indexregiszteres címzés: Valódi cím +Bázisregiszterben megadott cím + indexregiszterben megadott cím + eltolási érték. (olyan utasításoknál, ahol több egymást követő adatot mozgatunk az indexregiszter automatikusan növekszik) Regiszterkészlet:

Általános regiszterek AX AKKUMULÁTOR BX BÁZISREGISZTER (indirekt címzésre használjuk) CX számláló regiszter (count r.: ciklusokban az iterációk számát határozza meg) DX adatregiszter (data r. : IO műveleteknél a portok címzésére használható) Címzési regiszterek SI Forrás index (source) DI Cél index (destination) BP Bázismutató regiszter flag: (jelzőbit) of (overflow) lebegőpontos túlcsordulás if (interrupt) megszakítás engedélyezés tf (trap) lépésenkénti futtatás sf (sign) negatív eredmény zf (zero) zéró af (auxilary carry) segédátvitel (félátvitel) cf (carry) átvitel pf (parity) paritás df (direction) string-műv. iránya Vezérlő regiszterek SP veremmmutató (stack pointer) IP Utasításszámláló (instruction pointer, a soron következő utasítás címének biztosítása CS-sel párban) FLAG Jelző regiszterek Szegmens regiszterek CS kód szegmens (code segment : arra a szegmensre mutat, amelyben a következő utasítás

található) DS adat szegmens (data segment : az adatok tárplására szolgáló szegmens címét tartalmazza) ES másodlagos adatszegmens (extra) SS verem szegmens (stack) Konkrét memória cím előállítása : intel 8086 20 bites cím előálítása 16 bites regiszterek segítségével szegmens cím + cím konkrét mem. cím xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx Utasítások lehetnek: • adatmozgató (regiszterek és-vagy memória között) 2 5.tétel • • • • aritmetikai (+, -, (*), növelés, csökkentés, komplementálás .) logikai (és, vagy, shift, rotálás .) vezérlésátadó (az IP regisztert módosítja) input-output (perifériák működtetése) Példa egy utasítás végrehajtására : 1. műveleti kód beolvasása az utasítás regiszterbe , dekódolás, megfelelő ütemezéssel az operandusok beolvasása. 2. címképzés, adatok beolvasása 3. művelet elvégzése 4. eredmény kiírása megfelelő regiszterbe vagy

memóriába 5. következő utasítás címének képzése (az utasítás számláló regiszterbe) 3 6. Tétel : Az operációs rendszer fogalma, feladata, csoportosítása Az operációs rendszer definíciója és feladata : A számítógépek alkalmazhatóságának rugalmasságát a gépen megvalósított, futtatható szoftverek adják meg. Ezt viszont jelentősen befolyásolja a gép teljesítménye, a rendelkezésre álló részegységek Ezeket a gép működése szempontjából meghatározó fontosságú részegységeket erőforrásoknak nevezzük. A gép működése során ügyelni kell az erőforrások megfelelő kihasználására. Az viszont nem elvárható, hogy a felhasználó munkája során ezekkel a problémákkal is foglalkozzon, ugyanis elvárás az, hogy a gép könny en, m inimális i smeretekkel ha sználható l egyen. E zeknek a pr oblémáknak a m egoldására született a szoftverek egy speciális fajtája, az operációs rendszer. Az operációs rendszer

olyan a gép működését alapvetően befolyásoló programrendszer, amelynek feladata a gép erőforrásaival való gazdálkodás és a felhasználóval való magas szintű kapcsolattartás. Az operációs rendszerek legfontosabb jellemzői : • • • Átbocsátó képesség : annak a jellemzésére szolgál, hogy adott idő alatt mennyi feladat oldható meg a gépen alkalmazott operációs rendszer segítségével. Válaszidő : jellemzi a feladat megadásától a feladat megoldásáig eltelt időt. Rendelkezésre állás : a s zámítógép és az operációs rendszer megbízhatóságára, üzembiztonságára utal. Az egyes jellemzők nem javíthatók egy időben.( Az üzembiztonság növelése általában a m ásik k ét tényező romlásával jár; Ha az átbocsátó képességet növelik, akkor a válaszidő romlik.) Az eltérő igények kielégítésére különféle operációs rendszerek jöttek létre. Csoportosításuk sokféle szempont szerint lehetséges. Az

operációs rendszerek csoportosíthatók I. : • felhasználó száma szerint : egy illetve több felhasználó. • elérés módja szerint : kötegelt, interaktív és valós idejű. • multiprogramozás foka szerint : egy- vagy többáramú. • hardver mérete alapján : nagy-, kis- és mikrogépes. • rendszer struktúrája szerint : centralizált, elosztott vagy hálózati. Leggyakoribb az operációs rendszerek történeti kialakulását követő felosztás : • Egyfelhasználós (eredetileg kötegelt) : Kezdetben a s zámítógépek á ra i gen m agas vol t. F ontos szempont volt, hogy a gépet folyamatosan ellássák munkával : az áteresztőképesség növelése volt a cél. Egy gépen egyszerre csak egy feladat volt megoldható A feladat minden részlépését előre megadták és a gép folyamatosan olvasta be a következő feladatot. Tehát a tárban (memóriában) egyszerre mindig csak egy program található, ill. még egy nagyon egyszerű ütemező program, amit

monitornak neveztek. A rendszert szokták kötegelt rendszernek is hívni • Kötegelt multiprogramozott rendszerek : A multiprogramozás elve : ha egy program olyan műveletet v égez, am ely v alamelyik p erifériára történik (Pl. adatot olvas, vagy ír egy eszközre), akkor a CPU kényszerű várakozásra kényszerül, ugyanis a perifériák sebessége több nagyságrenddel elmarad a CPU és a memória sebessége mögött. A multiprogramozás elve a kényszerű várakozási idők kihasználása úgy, hogy a CPU használatát a várakozási időre átkapcsoljuk egy éppen futásra kész másik program végrehajtására valamilyen ütemezési s tratégia s zerint. T ehát ez az t j elenti, h ogy a m emóriában egyszerre több programot is tárolunk, de egyszerre csak egy van aktív állapotban. Ezeknél a multiprogramozott rendszereknél jelenik meg a folyamatosan a tárban lévő összetett ütemező program. Ennek a feladata a CPU idő elosztása a memóriában lévő programok

között 6.tétel Ugyancsak ezeknél a rendszereknél j elenik m eg a v irtuális m emória, am i a m ágneslemez eg y részének operatív tárként való használatát jelenti. Ezeknél a rendszereknél a gép egy felhasználónak több feladatát kezeli egy időben, amit multitaskingnak vagy többfeladatos üzemmódnak nevezzük. Ezeknél a rendszereknél az áteresztő képesség igen nagy. A válaszidő viszont nagyon rossz A rendszerek további hátránya, hogy nagyon nehéz a fejlesztői munka. • Időosztásos rendszerek : Itt a memóriában lévő programok között nem csak akkor történik meg az átkapcsolás, ha valamelyik lassú műveletet kér, hanem állapotától függetlenül egy bizonyos idő elteltével is. Ezek a rendszerek általában többfelhasználósak, több felhasználó interaktív (párbeszédes) formában használja a gépet. Az egyes munkák között az átkapcsolás olyan gyors, hogy a felhasználó úgy érzi, hogy a gép csak vele foglalkozik. A

munkák ütemezésére az órajel valamely többszörösével kifejezhető időszeletet használják. Ennek elteltével a munka állapotától függetlenül a másik program kerül aktív állapotba Ezeknél a rendszereknél cél az interaktív használat biztosítása a központi egység megfelelő ütemezésével és a multiprogramozás felhasználásával. • Valós idejű : Ezeknél a rendszereknél az operációs rendszer nem vezérli a feldolgozást, hanem fogadja és teljesíti az események által kiváltott kérelmeket. Ezek a rendszerek eseményvezéreltek Fontos jellemzője a szigorú időkorlát, ami meghatározza, hogy mennyi az a maximális idő, amelyet egy esemény kezelésére fordíthat az operációs rendszer. Az időkorlátot úgy kell megválasztani, hogy az a legrosszabb esetben is tartható legyen (pl. a rendszer túlterhelésénél ) • Elosztott és hálózati rendszerek : A számítógép hálózatokban önálló számítógépes rendszerek ve sznek r észt.

A z öná lló g épeket valamilyen adatátviteli vonallal kötik össze. A hálózat célja a feladatok ésszerű megosztása és az erőforrások kölcsönös hozzáférése. (Részletek a 11 tételben) Az operációs rendszerek csoportosítása II. : X bites operációs rendszer : az adatokat x bites csomagokban szállítja. Az, hogy az operációs rendszer 32 bi tes , m ég korántsem j elenti azt, hogy sokkal hatékonyabb, mint egy 16 bites operációs rendszer. Sőt, előfordulhat, hogy ugyanazon 16 bites programok futtatása esetén a 32 bites lemarad. Viszont a 16 bites program nem használja ki a rendszer adottságait Felhasználói felület szerint lehet : grafikus vagy szöveges felületű. A szöveges felület nem jelenti azt, hogy az adott operációs rendszer nem tud grafikus felületet nyújtani, és viszont : MS-DOS <=> WIN, WIN95 <=> DOS. Kiterjedtség szerint lehet : há lózati ope rációs r endszer ( D r. D OS; N ovell D OS) va gy he lyi rendszerek

(MS-DOS). Hozzáférés szerint lehet : 16 bites (PTS-DOS 6.5) vagy 32 bites operációs rendszer (OS/2) Az operációs rendszerek egyik legfontosabb jellemzője a minimális rendszerkövetelmény. Ez a grafikus rendszereknél főleg a memóriaigényben nyilvánul meg. Pl : Az MS-DOS m ár 640K -on elindul, de a PTS-DOS 7.0 -nak már legalább egy 386-os gép kell 4MB memóriával, nem is beszélve a WIN95-ről aminek a világ minden memója sem volna elég. ( A PTS-DOS ug yanolyan 32 bi tes operációs rendszer, mint a WIN95 vagy az OS/2. 2 6.tétel Egyetlen olyan operációs r endszer va n, a mi ki használja a z I NTEL, i ll. kom patibilis pr ocesszorok védett üzemmódját : LINUX. 3 7. tétel : A DOS operációs rendszer A könyvtárkezelés elve : Egy m ágneslemezen na gyon s ok á llomány f ér e l, na gyon ne héz l ehet a z e ligazodás k özöttük. Ennek megkönnnyítésére v ezették b e a k önyvtárakat. A v alamilyen m ódon ö sszetartozó ál

lományokat, file-okat egy könyvtárba helyezzük el. Minden lemezen kötelezően létezik egy speciális könyvtár, a gyökérkönyvtár Ezt a lemez használatbavételekor a rendszer automatikusan készíti el. A gyökérkönyvtár j ele minden esetben : (backslash) . A g yökérkönyvtárban, mint minden más könyvtárban lehetnek állományok vagy újabb alkönyvtárak. Ez által egy herarchikus könytárrendszer jön létre A könyvtárrendszer akkor működik, ha 1. A katalógusrendszert ésszerűen alakítjuk ki 2. Az alkönyvtárakat, egyedeket be tudjuk sorolni az egyes kategóriákba (könyvtárakba) Az alkönyvtáraknak, ugyanúgy, mint az állományoknak, egyértelmű nevet kell adni. A Dos esetében a könyvtár neve 8 karakter hosszú lehet. (kivételt képezhetnek ez alól más rendszerek : pl unix, linux, os/2) A létrehozott könyvtárak között közlekednünk kell, egy adott állományhoz el kell jutnunk. Nagyon fonos szerep jut ezért az útvonalmegadásnak

(path). Az útvonalmegadásra két lehetőségünk van : • Abszolút útvonalmegadás : ilyenkor az útvonal meghajtóval kezdődik, majd a gyökérkönyvtártól kezdve fel kell sorolni a hierarchiában érintett valamennyi könyvtárat. Pl : C:probaegyebword . • Relatív útvonalmegadás : az útvonalat az aktuális könyvtárból kiindulva adjuk meg. Pl : c:probaegyeb word A könyvtárkezelés parancsai : • • • • • • aktuális meghajtó váltás tartalomjegyzék kiíratása, DIR alkönyvtár létrehozása, MD (Make Directory) közlekedés az alkönyvtárak között, CD (Change Directory) alkonyvtar törlése, RD (eRase Directory) a fastruktúra megtekintése, TREE A leggyakoribb parancsok végrehajtásához szükséges el emi u tasításokat a C OMMAND.COM tartalmazza. Ezek a belső parancsok Ha a parancs nem túl gyakori, vagy a végrehajtásához szükséges kód túl nagy, akkor a paranccsal megegyező nevű .EXE vagy COM kiterjesztésű állomány tartalmazza

a gépi kódú utasítások sorozatát. Ezek a külső parancsok Aktuális meghajtó kiválasztása : Meg kell adnunk az aktuálisnak kért meghajtó jelét kettősponttal zárva. Pl: A: , C: A tartalomjegyzék kiíratása, a DIR belső parancs : DIR [meghajtó:] [útvonal] [/p] [/w] [a: attribútum] / p : képernyőnként listáz, minde képernyő után vár egy billentyű leütésére. / w : csak az állománynevek és a kiterjesztések kerülnek a képernyőre öt oszlopban. / a : attribútum csak a megadott attribútummal rendelkező állományok jelennek meg. Az attribútum minden bejegyzéshez tartozó 1 byte-os jelző, amely az állomány jellegére utal. D : könyvtár , H : rejtett állományok, S : rendszerállományok, R : csak olvasható állományok, A : archiválásra kész állományok. Az útvonalmegadás lehet abszolút vagy relatív. A parancs infot ad a könyvtárban lévő állományokról, winchesteren lévő szabad helyről, a HDD sorozatszámáról. Pl : dir

c:probaword /p /w Könyvtár váltás , a CD belső parancs : CD [meghajtó:] útvonal 7.tétel Az útvonal lehet abszolút vagy relatív. A köny vtárstruktúrában e ggyel vi ssza a C D pa rancsal léphetünk. Közvetlenül a gyökérkönyvtárhoz pedig a CD paranccsal léphetünk Pl : cd almaword , cd . Könyvtár létrehozása, az belső MD parancs : MD [meghajtó:] útvonal létrehozza a megadott meghajtón az útban leírt könyvtárat. Pl : MD c:proba2 Könyvtár törlése , az RD belső parancs : RD [meghajtó:] útvonal Csak üres könyvtár szüntethető meg. Nem törölhető az aktuális könyvtár A fastruktúra megtekintése, a TREE külső parancs : TREE [meghajtó:] [út] [/f] A p rogram f elrajzolja a m egadott m eghajtó k önyvtárszerkezetét v agy an nak eg y m egadott alkönyvtárához tartozó részfáját. A /f opció hatására az egyes alkönyvtárakban lévő állományok i s megjelennek. Memóriakezelés konfigurációs állományon keresztül : A D

OS ké t s peciális á llományt kül önböztet m eg. A z e gyik a C ONFIGSYS, amelyben a rendszer alapbeállításait változtathatjuk meg. A másik az AUTOEXECBAT állomány, amely DOS parancsokat tartalmaz. Mindkét állomány egyszerű szöveges állomány A memókezelés szempontjából a CONFIG.SYS jut szerephez, ugyanis itt tölthetők be a megfelelő meghajtó programok Ennek beállításai hajtódnak végre először. 1024 - XXXXX kb XMS XMS = eXtended Memory System kiterjesztett memória EMS EMS = Expanded Memory System bõvített memória HMA = High Memory Area HMA 640-1024 Kb UMB 0-640 Kb bázis memória lower memory 0-64 Kb A DOS alapban a memóriának csak az első 640 Kb-ját, a b ázis memóriát tudja kezelni ( hiába van a gépünkben több Mb fizikai memória ). Ennek első 64 Kb-ját Lower Memorynak hívjuk A fejlődő programok, számítógépek számára ez a 640 Kb kevésnek bizonyult. Szükségessé vált az ennél nagyobb memóriák lekezelését

biztosító programok kifejlesztése. Ezek a programok lehetővé tették a kiterjesztett memória, XMS, és a felső memória, UMB használatát. Az XMS használatával lehetőségünk van EMS memória emulálására is a kiterjesztett ta rtományon b elül. A z U MB-be és a HMA-ba pedig rezidens programok tölthetők be ill. ide helyezhető át a DOS rendszer magja A DOS rendszernél az XMS elérését a HIMEM.SYS memória szervező prg biztosítja Az XMS-en belüli EMS emulációt valamint az UMB elérését az EMM386.EXE prg biztosítja Az EMM386EXE, mint ahogyan neve is mutatja csak 386-os géptől felfele alkalmazható. Tehát ahhoz hogy az UMB-t és az XMS-t használni tudjuk telepíteni kell a CONFIG.SYS-ből a megfelelő kezelő programokat Erre a DEVICE parancs használható: DEVICE=[meghajtó:] [útvonal] állománynév [paraméterek] DEVICE=HIMEM.SYS 2 7.tétel DEVICE=EMM386.EXE /NOEMS v DEVICE=EMM386EXE RAM 4096 Mivel az E MS em ulálása az X MS-ben történik az

EMM386.EXE betöltését meg kell előznie a HIMEM.SYS betöltésének Az EMM386EXE kezelőnek számos opciója létezik Ezek közül a legfontosabb a noems kapcsoló, amely hatására nem történik EMS emuláció, de az UMB elérhető lesz, ill a ram kapcsoló, am ely h atására m egtörténik az E MS em uláció, am ely az eg ész X MS-t EM S-é emulálja, vagy az XXXX szám ,ahol XXXX emulálandó EMS mérete Kb-ban. A CONFIG.SYS állomány BUFFERS parancsával a DOS által a memóriában elhelyezhető és a lemezműveletekhez felhasználható speciális tárolási területeket (puffereket) definiálhatjuk: BUFFERS=szám . Szám=3255 A DOS=HIGH|LOW ill. a DOS=UMB parancs lehetővé teszi, hogy az operációs rendszer egy része a memória magasabb című helyeire töltődjön. Ezzel nagyobb hely marad az alkalmazói programok számára a bázismemóriában. 3 8. Tétel : A DOS operációs rendszer : Állománykezelés elve : A háttértárakon nagyon sok állomány fér el.

(Az adatoknak logikailag összefüggő halmazát állománynak, vagy file-nak nevezzük). A köztük lévő eligazodást nagy mértékben könnyíti a könyvtárstruktúra A z eg yes állományok nevükkel azonosíthatók. Az állományok elnevezésében a felhasználónak bizonyos szabadsága van Viszont van egy komoly megkötése a DOS-nak : azonos helyen két azonos nevű állomány nem szerepelhet. A DOS az ál lomány teljes nevét két részre osztja : névre és kiterjesztésre. A név maximum 8 karakter hosszú lehet. Nem szerepelhet a névben a és a szóköz karakter Minden névhez tartozhat egy maximum 3 betűből álló kiterjesztés. A kiterjesztést az operációs rendszer az állományok típusának meghatározására is felhasználhatja Vannak más célra nem használható, azaz kötött állománynevek : • • • • EXE, COM a rendszer által végrehajtható program kiterjesztése. BAT (szöveges) parancsfile kiterjesztése. SYS a rendszerhez tartozó speciális

állományok (kivéve a CONFIG.SYS) kiterjesztése TXT normál szöveges állomány kiterjesztése. Vannak ál talánosan el gfogadott, eg ységes kiterjesztések) : • • • • kiterjesztések ( elterjedt p rogramok á ltal h asznált DBF DBase adatállomány ASM Assembly nyelvű forráskód PAS Pascal nyelvű forráskód ZIP, ARJ tömörített állomány A "Joker" (wildcard) karakterek : az állományok, állománycsoportok könnyű kijelölésére, megkeresésére használható karakterek (, ha az állomány(ok) nevét nem ismerjük pontosan). Két joker-karaktert használhatunk : a * jel helyettesíti a saját helyén és a még hátralevő karaktereket, a ? csak azt az egyet helyettesíti, aminek a helyén áll. A joker-karakterek a névben és a kiterjesztésben is használhatók Állománykezelés parancsai : Állomány törlése, a DEL belső parancs : DEL [maghajtó:][út]állománynév [/p] Az állománynévben használhatók a megismert joker karakterek,

így egyszerre több file is törölhető. A /p opció hatására minden törlendő állomány törlésére rákérdez a gép. A DEl *.* hatására a gép az összes a könyvtárban levő file-t törli ! De egy utolsó figyelmeztetést is küld : "All files in directory will be deleted! Are you sure (Y/N)?n". Véletlenszerűen törölt állományok visszaállítása, az UNDELETE külső parancs : UNDELETE [[meghajtó:][út]állománynév] [/list] [/all] Ha nem adunk meg semmit akkor az aktuális könyvtárban található összes törölt állomány visszaállítja a parancs. Minde törölt b ejegyzés v isszaállítására r ákérdez a p arancs T örlésnél a f ile-bejegyzés első karaktere elvész, ezért visszaállításkor ezt minde file-nál meg kell adni. A /list opció hatására a parancs listázza a törölt állományokat, de vissza nem állítja. A /all opció hatására visszaállítja az össze törölt bejegyzést kérdés nélkül. Állományok másolása,

létrehozása, összefűzése, a COPY belső parancs : COPY [/a] [/b] forrás [/a|/b][+forrás[/a|/b].][cél[/a|/b]] [/v] Másoláskor ha nem adunk meg célként állománynevet, akkor másolat neve meg fod egyezni az eredeti nevével. H a m ásoláskor c élként ne m a dunk m eg út vonalat, akkor a cél a z a ktuális köny vtár l esz Másoláskor a forrás és a cél lehet szköznév is. Ebben az esetben a megfelelő eszközről olvas, vagy a megfelelő eszközre ír a parancs. A CON a billentyűzetet jelenti, LPTX pedig valamelyik párhuzamos portot. A COPY CON állománynév parancsal új állományt hozhatunk létre Az állomány végét ^Z jel jelzi, a <CTRL>+<Z> billentyűkombinázió lenyomására. Entert ütve a másolás befejeződik Lehetőség van több állomány összefűzésére is. Ilyenkor az összefűzendő állományok neveit a + jellel kell összekapcsolni. 8.tétel A /a opció szöveges állományra utal. Másoláskor figyelembe veszi a ^Z

állományvéget jelző karaktert A /b opció bináris állományt jelöl. A /v opció hatására a másolás után ellenörzésre kerül a másolat. Állomány tartalmának megtekintése, a TYPE külső parancs TYPE[megahjtó][út]állománynév Állományok átnevezése, a REN belső parancs : REN [meghajtó][út]réginév újnév A kiterjesztett copy parancs, az XCOPY külső parancs : XCOPY forrás [cél] [/D:dátum] [/E] [/S] [/V] A p aranccsal n emcsak f ile-ok, ha nem könyvtárak - tartalmukkal e gyütt - is má solhatók. A /D :dátum opció h atására a m egadott d átumú v agy az utáni f ile-ok kerülnek m ásolásra. A / E opc ió ha tására másolja a forrásterülethez tartozó alkönyvtárakat is, még akkor is ha üresek. A /S opció hatására csak a nem üres alkönyvtárak és tartalmuk kerülnek másolásra a forrásterületről. A háttértárolók típusa, működési elvük : Típusai: • Floppy : cserélhető, kis kapacitásúháttértár. Az adatok

tárolása m ágneses út on t örténik K önnyen kezelhető olcsó tár. 1970-ben az IBM jelentette meg az első floppyt, azóta különböző méretekben és kapacitásokban g yártják. A l emez l ehet eg yoldalas ( SS-Single S ide) v agy k étoldalas ( DS-Double Side). Az írás sűrűsége szerint lehetnek eg yszeres ( SD-Single D ensity), k étszeres ( DD-Double Density), nagy (HD-High Density), extra (ED-Extra Density) írássűrűségűek. Méret alapján lehetnek 5.25"-osak, vagy 35"-osak Ezek alapján az egyes lemezek kapacitása : DS-DD-525" : 360Kb, DSDD-35" : 720Kb, DS-HD-525" : 1,2Mb, DS-HD-35" : 144Mb, DS-ED-35" : 28 M b Az adatok sávokban, a s ávokon be lül s zektorokban he lyezkednek e l. K étoldalas l emeznél, a ké t ol dalon a z azonos s ugarakhoz t artozó s ávok e gy c ilindert a lkotnak. A s ávok s zámozása kívülről befelé 00 sorszámmal kezdődik. A legelső cilinder az indexcilinder, amelyen a lemezre és

tartalmára vonatkozó információk találhatók. A két utolsó cilinder tartalék Az összes többi cilinderen az adatok foglalnak el. • Merev mágneslemezek : Lehet cserélhető vagy fix lemezes tár. Cserélhető lemezes tárnál a lemezek levehetők a meghajtó berendezésről. Fix lemezes táraknál a merevlemezek egylezárt tokban helyezkednek el. A fix merevlemezes t árak, w inchesterek n agy m ennyiségű adatok tárolására alkalmasak. Gyors elérést biztosítanak A winchesterek közvetlen, szekvenciális elérésű tárak Az adatok t árolása i tt i s m ágneses út on t örténik. K apacitásuk 500M b-2,3 G byte-ig is te rjedhet Az adatok tárolás azonos a floppy-nál leírtakkal. • DAT : szalagos háttértároló, soros elérésű. Az adatokat mágneses úton tárolják Általában adatmentésre használják, kapacitásuk elérheti a 2-3 Gbyte-ot is. • Streamer : szalagos háttértároló. Általában adatmentésre használják, kapacitás n*100 Mb. •

Hordozható winchesterek (pocket harddisk) : a szg. párhuzamos portjára illeszthető, hordozható winchester. A tápfeszültséget gyakran a billentyűzettól nyeri Működéséhez külön meghajtóprogram szükséges. Manapság már igen nagy kapacitásúak is léteznek • Egyéb : Zip-drive = speciális meghajtó, cserélhető lemezekkel, kapacitása lemezenként 100 Mb. • CD-ROM : a jelek tárolása speciális műanyaglemezen történik, ún. pixelek formájában Az adatok optikai út on va nnak t árolva. K apacitásuk 600-700 Mb Külső mágneses terekre érzéketlen Előnye olcsó, hátránya lassabb, mint a winchester. Ma már létezik írható CD-ROM-ok is A háttértárolók használatbavétele, particionálása : Az összes mágneses úton működő háttértárat - kivéve a gyárilag előkészítetteket (formatáltakat) - a legelső használatbavételkor formatálni kell. Ekkor kerülnek kialakításra a l emezre és tartalmára v onatkozó területek (többek

között a boot szektor is) ill m aga a h asználható l emezterület. A w inchesterek f ormatálását m eg k ell 2 8.tétel előznie a particionálásnak - a f loppy-kat nem l ehet p artícionálni-. A partíció tulajdoképpen egy összefüggő winchester területet jelent (Egy winchester van a gépben, de a D OS t öbb k ülön m eghajtóként k ezeli a partíciókat). A partíció lehet elsődleges partíció, amelyről a gép bootolhat - ugyanis az operációs rendszernek az elsődleges partícióban kell lennie- vagy extended partíció. Ezen az extended partíción kialakítható több logikai meghajtó is. P artícionáláskor m inden eg yes p artíció m érete m eghatározható ( vagy t eljes m éret % -os kifejezésével, vagy MB-ban (,vagy cylinderekben)). Minden esetben kell lennie egy elsődleges partíciónak, ez lehet akár a teljes winchester méret is, ilyenkor csak ez az egy partíciónk van (C:). Ha nem a teljes winchestert választjuk elsődleges

partíciónak akkor az extended partíción kialakíthatók a logikai meghajtók (D: , E: stb.) Ma már léteznek olyan programok (Boot Managgerek), amelyekkel több bootható partíció is készíthető. A DOS esetében a winchester particionálására az FDISK parancs használható. 1, Create DOS partition or Logical DOS drive = partíció vagy logikai meghajtó készítése 1, Create primary DOS partition = elsődleges partíció készítése 2, Create extended DOS partition = kiterjesztett partíció készítése 3, Create Logical DOS drive(s) in the extended DOS partition = logikai meghajtó készítése a kiterjesztett partíción 2, Set active partition = aktív partíció beállítása 3, Delete partition or Logical DOS drive = partíció vagy logikai meghajtó törlése 4, Display partition information = infó a winchester partícióióiról (ugyanaz , mint az FDISK /STATUS) Partition Status Type Volume label Mbytes System Usage C:1 A PRI DOS SYSTEM 542 FAT16 100% 3 9.

tétel : A DOS operációs rendszer Lemezkezelés és parancsai : Használatba vétel előtt minde lemezt elő kell készíteni az operációs rendszer számára (kivéve az előre előkészítetteket). A floppyt és winchestert is elő kell készíteni Winchester előkészítését gyakran megelőzi annak partícionálása. Az előkészítés során az operációs rendszer létrehozza a BOOT szektort, a gyökérkönyvtárat és a lemez tartalmát nyilvántartó táblázatot, a FAT-et (File Allocation Table). Lemez előkészítése, formatálása, a FORMAT külső parancs : FORMAT meghajtó: [/F: méret] [/S] [/Q] [/U] Formatáláskor, a l emez t artalma el vész. A zonban, h a a l emez m ár k orábban i s h asználatban v olt, ak kor elmetésre kerülnek a visszaállításhoz szükséges információk. Ha ez nem lehetséges, akkor figyelmeztető üzenetet kapunk. A formázás során meg kell adni a lemez cimkéjét, ami 11 karakter lehet(Erre később is van lehetőség !). Ha

lemezazonosítóként merevlemezt adunk meg, akkor külön figyelmeztetést kapunk /S : a lemezre rákerülnek a rendszerállományok is. A lemez rendszerlemez lesz /Q : Csak már korábban is használt lemezeknél adható meg. Ilyenkor az újboli előkészítés ideje jelentősen lerövidül. Ugyanis csak a FAT kerül törlésre /U : ez az ún. mélyformázás A formázás során meg kell adni a lemez cimkéjét.(Erre később is van lehetőség) Teljes lemez másolása, a DISKCOPY külső parancs : DISKCOPY [forrásmeghajtó: [célmeghajtó]] [/V] A má solás b yte-ról by te-ra történik. Csak megegyező típusú hajlékonylemezek között lehetséges a másolás. H a cs ak egyetlen m eghajtónk va n, a kkor a zt ke ll c él é s f orrás m eghajtónak i s m egadni Ilyenkor a másolás során cserélgetni kell a lemezeket. A cserére a gép mindíg felszólít A lemez nevének megjelenítése, a VOL belső parancs : VOL [meghajtó:] Lemeznév utólagos megváltoztatása, a LABEL

külső parancs : LABEL [meghajtó:] [címke] Ha a címkét nem adjuk meg, akkor a gép kiírja a lemez nevét és megkérdezi az újat. Ha a kérdésre sem adunk meg nevet, akkor megkérdi, hogy törölje-e a meglévő címkét. Lemez partícionálása, az FDISK külső parancs. Menüvezérelt. (8 tétel) Lemez töredékmentesítése, a DEFRAG külső parancs : A lemezen szátszortan elhelyezkedő állományokat egymás után rendezi. Így jelentős sebesség növekedés érhető el. Opcionálható a parancssorból is, de a programon belül is Lemez fizikai ellenörzése, a SCANDISK külső parancs : Ellenörzi a lemez FAT tábláját, könyvtár és file struktúráját, boot szektorát. A hibát jelzi ill korrigálja (ha sikerül neki). Kódlapok és használatuk : A DOS lehetőséget ad különböző országfüggő beállítások megtételére. Így lehetőség van az országnak megfelelő dátum-és időformátum használatára. Pl : az USA-ban 03-04-1997, Magyarországon

199704-03 Beállítható az is, hogy megjeleníthetőek legyenek az illető országban használatos s peciális karakterek is. A dátum formátumát és az egyéb beállításokhoz szükséges információkat egy állomány tartalmazza, ez a kódlap. A kódlapok telepítésére a CONFIGSYS állományban van lehetőségünk, a COUNTRY paranccsal. 9.tétel COUNTRY= szám, kódlap, [meghajtó:] [út] [állománynév] COUNTRY=36, 852, C:DOSCOUNTRY.SYS A szám a kért ország nemzetközi távhívószáma. Miután a gépet tájékoztattuk, hogy az új kódlapot szeretnénk használni, a monitort is fel kell készíteni az új karakterek megjelenítésére. Erre szolgál a DISPLAYSYS állomány, amit a configsys-ből kell a device vagy a devicehigh paranccsal betölteni. DEVICE=C:DOSDISPLAY.SYS CON=(type,hwcp,szám) DEVICE=C:DOSDISPLAY.SYS CON=(EGA,,1) A type a használt képernyőt definiálja (EGA, VGA, LCD). A hwcp a kódlapot határozza meg (852, 437 stb). Végül el kell

készíteni a fentiekben m eghatározott kódl apott. E zt a z A UTOEXECBAT -ból t udjuk elvégezni, a MODE paranccsal. C:DOSMODE CON CODEPAGE PREPARE=((hwcp) cpi file) C:DOSMODE CON CODEPAGE PREPARE=((852) C:DOSEGA.CPI) A hwcp az elkészítendő kódlap száma (852, 437, 850 stb.) A cpi file a C ode-page-information f ile helye és neve, pl : ega.cpi Miután elkészítettük a kívánt kódlapot, a MODE paranccsal ki kell választani. C:DOSMODE CON CODEPAGE SELECT=hwcp C:DOSMODE CON CODEPAGE SELECT=852 2 10. Tétel : A DOS operációs rendszer A rendszer működését befolyásoló parancsok CLS (belső) : képernyő törlése, a parancs a színeket is alaphelyzetbe állítja DATE (belső) : megjelenik a gép áltl nyilvántartott dátum, majd bekéri az új dátumot. A dátumformátum alaphelyzetben a következő : hónap-nap-év TIME (belső) : megjelenik a gép által nyilvántartott idő, majd bekéri az új időt. A DATE és a TIME parancs opcionálisan is használható.

VER (belső) : A programok fejlődését az ún. verziószám jelöli (Az MS DOS korábbi verziói : 200, 211, 300, 3.10, 311, 320, 321, 330, 400, 401, 500, 620, 622 stb) A /? opció csak az 500 verziótól létezik PROMPT szöveg : a prompt számos hasznos információ megjelenítésére alkalmas. A megadott szöveg lesz a prompt. A szövegben speciális jelek is használhatók : $$ a $ jel $D a rendszerdátum beszúrása a promptba $G a > karakter beszúrása $L a < jel beszúrása $P az aktuális elérési út beszúrása $Q az = karakter beszúrása $T a rendszeridő $V a DOS verziószáma Pl. : PROMPT $V $P$G , PROMPT HELLO $P$G , PROMPT $P$G PATH [meghajtó:] [út] [; [meghajtó:][út].] (belső) : A parancs a futtatható állományok (.com, exe, bat) keresési útjának beállítására szolgál Ha van beállítva ilyen út, akkor az operációs rendszer először az aktuális könyvtárban keresi a külső parancshoz tartozó állományt, majd ha ott nem találja, akkor

sorban a keresési út minden könyvtárában végignézi. Nyomtatás DOS-ból a nyomtatás kétféleképpen történhet : A képernyő tartalmát a Print Screen billentyű segítségével nyomtathatjuk ki. Egy fájlt pedig a COPY parancs segítségével nyomtathatunk : COPY forrás cél Ahol a cél valamelyik eszköznév, attól függően, hogy milyen porton található a nyomtató (LPT1,LPT2,LPT3,COMX) Pl : COPY szöveg.txt LPT1 A párhuzamos port konfigurálása : MODE LPTn[:] [COLS=c] [LINES=l] [RETRY=r] lptn meghatározza azt az párhuzamos portot amelyre az eszköz kapcsolódik. cols azt adja meg, hogy hány karakter legyen egy sorban. Lehetséges értékek : 80,132 lines a sorközt és az inch-enkénti sorszámot adja meg. Lehetséges értékek : 68 retry lásd lent. Soros vonali eszközök és konfigurálásuk : Ezek a COM1.4 portok, amelyekre egér, nyomtató, stb csatlakozhatnak MODE COMm[:] [BAUD=b] [PARITY=P] [DATA=d] [STOP=s] [RETRY=r] m : 1.4 baud : az adatátviteli

sebességet állíthatjuk be. A sebesség első két számjegyét kell megadni baudban. 11⇒110 baud 48⇒4800 baud 96⇒9600 baud 19⇒19200 baud A 19200-as értéket nem minden gép támogatja. parity : azt adja meg, hogyan használja a parancs a paritás bitet az átvitl ellenörzésére. N (none), E (even), O (odd), M (mark), S (space) bits/secundumban, 10.tétel data : az adatbitek számát adja meg egy karakter átvitelekor. Lehetséges értékek : 5,6,7,8 Az alapértelmezett érték 7. Az 5 és a 6 nem minden gépen van támogatva stop : a stopbitek számát adja meg. Ez egy karakter végét határozza meg Lehetséges értékek : 1, 15, 2 Ha baud=110, akkor stop=2, különben stop=1 retry : azt állítja be, hogy a DOS hogyan viselkedjen, ha time-out hiba lép fel, miközben adatot kísérelt meg a portra küldeni. Portok átirányítása : MODE LPTn=COMm átirányítja az LPTn párhuzamos portot a COMm soros portra. A billentyűzet beállításai : MODE CON[:] RATE=r

DELAY=d rate az ismétlési sebességet állíthatjuk be. Értékek : 132 delay azt adja meg, hogy egy billenytű folyamatos lenyomásától számítva mikor kezdődjék az ismétlés. : 1.4 2 Értékek 11. tétel : Hálózati alapfogalmak, protokollok, topológiák Számítógép-hálózat: A számítógépek valamilyen cél érdekében történő összekapcsolása. (HW -Hardware és SW - Software összekapcsolás) Cél: • Erőforrásmegosztás (disk, Nyomtató) • Kommunikáció • Sebesség n övelés ( részfeladatokra b ontás, p árhuzamos adatfeldolgozás, sebességnövekedés nem lineáris a rendszerbe kötött gépek számával) • Megbízhatóság javítása (több helyen tárolás, rendszeres központi mentés) megjegyzés: a Alapfogalmak: • Hálózati csomópont (Node) : Aktív hálózati kommunikációs pont • Adatátviteli vonal : Azon fizikai eszközök, amin az adatátvital elvégezhető. (sodrott, árnyékolt érpár, koaxikális kábel,

opto-elektronikai kábel) • Adatátviteli csatorna : (pl frekvenciasáv) • Szerver (Server) : mely kielégíti a felhasználói igényeket, központi kiszolgáló gép. • Μυnkaállomás (Station) • Hozzáférés • Sebesség : a hálózat étvívő közegére utal. Me 1 bit/sec Számtógéphálózatok mérete: • LAN épületen belőli (Local Area Network) • MAN Városi (Metropolitan Area Network) • WAN Világméretü (Wide Area Network) Topológiák: Csomópontok, a hálózat fizikai elrendezése és összekapcsolása. Teljes kapcsolású : kiépítési költsége drága (mindenki-mindenkivel kapcsolatban van). Részleges kapcsolású: Gyûrû topológia Csillag (ARC-Net) topológia SIN-topológia Station Station Station Station Station token Station Station station station station station Station Station • Csillag : Minden munkaállomás k özvetlenül t art k apcsolatot a s erverrel. K iépítés k öltsége n agy, megbízhatóság jó, csak a

hibás ág esik ki, a hiba helye azonnal felderíthető. Az állomások a csillagponthoz küllőszerűen kapcsolódnak. • Sín : Kiépítés költsége a lacsonyabb. M egbízhatóság r osszabb, e gy hi ba a teljes hálózatot leállíthatja, a h ibajavtás k örülményes. A z ál lomások eg y v ezeték szegmensre csatlakoznak Az állomások címekkel rendelkeznek és egyenrangúak. A rendszer ún rádió üzemmódban működik, azaz az információ végigfut a vezeték teljes hosszán és a hálózatfelügyelő rendszer gondoskodik arról, hogy az információ eljusson a címzett állomáshoz. • Gyűrű (kettős) : A kiépítés költsége : az előző kettő között van. M egbízhatósága : ké tkörös rendszer e setén m eghibásodáskor a r endszer t ovább ha sználható. A hibajavtás SW segítségével behatárolható. Az egyes gyűrűkben az adatfolyam iránya kötött 11.tétel • • Fa : a serverből kiinduló törzs ágakra os zlik, amik csomópontokból

(HUB) i ndulnak ki . A HUB hibája esetén a hálózat müködésképtelen. Rajz. Vegyes topológia: az eddig soroltak együttes alkalmazása. Protokoll : kommunikációs szabályrendszer. A hálózati felügyelő rendszert PROTOKOLLnak vagy hálózati operációs rendszernek nevezzük. Feladata : a s erverhez v aló h ozzáférés, ad atátvitel m egszervezése, ad atbiztonság, f elhasználói felület megteremtése stb. • Adásjog továbbításos (Token Passing). Az ad ásjog kör benjár a m unkaállomásokon M inden munkaállomásnak van egy időszelete amelyen kommunikálhat. • Vívőérzékelős, ütközés figyeléses protokol (CSMA/CD) :A munkaállomások figyelik a hálózaton történő kommunikációt, akkor kezdeményeznek adást, ha nincs vivő a vonalon, (egyetlen másik számitógép sem kommunikál). Ha mégis egyszerre szólal meg két számítógép, akkor a server figyeli az ütközést, ekkor minden munkaállomást letilt és a munkaállomások

véletlenszámszerű késleltetéssel próbálkozhatnak ujra. Előnye, hogy kevés munkaállomás esetén felgyorsul a kommunikáció, de sok aktív munkaállomás esetén használhatatlanul is lelassulhat. Funkcionális modell Nyomtató munka állomás + hálózati csatoló munka állomás + hálózati csatoló SERVER HDD CD Nyomtató Hálózati Csatoló munka állomás + hálózati csatoló - a munkaállomások között megosztható erõforrások A D OS és a N ETWARE k apcsolata : az összekapcsolt gépek é s a köz ponti ki szolgáló g ép között meg kell teremteni a kapcsolatot. A kapcsolatteremtés két szinten valósul meg : • Az IPX.COM a ROM BIOS lehetőségeit egészíti ki hálózati elemekkel, megteremtve ezzel a server elérését. • A NETX.COM eldönti, hogy a felhasználói kérés a serverhez vagy a doshoz szól 2 11.tétel A h álózati f elhasználók cs oportja : a há lózaton t öbb f elhasználó i s dol gozik. A hozzáférés

felhsználónként lehet akár különböző is. A felhasználók legfőbb csoportjai : • supervisor : rendszergazda. • operátor : hálózati felügyelő, működtető • user : felhasználó 3 12. Tétel : A magas szintű nyelv elemei Algoritmus : algoritmusnak az olyan pontos előírást nevezzük, amely ponotsan megadja, hogy egy bizonyos adattípushoz tartozó összes feladat megoldásához milyen műveleteket és milyen sorrendben kell végrehajtani. Az algoritmus legfontosabb tulajdonságai : algoritmus meghatározottsága : megadható legyen v éges s zámú u tasítás f ormájában a k iszámító személytől független legyen, azaz bármikor bárki által megismételhető legyen. algoritmus széleskörűsége algoritmus végessége A program az algoritmusoknak egy adott programozási nyelveben történő leírása. A programozás fázisai : • problémafelvetés • specifikáció • algoritmus tervezés • megvalósítás • helyességigazolás Az algoritmus

tervezésekor vannak általánosan elfogadott jelölések : start kezdés be : a,b,c adat bekérés ill. kiírás összeg:=a+b+c utasítás vég stop n összeg=6 feltételes ugrás i A számítástechnika fejlődése során igen sokféle programnyelv alakult ki. Egyik jobb, másik kevésbé Vannak magasszintű programozási nyelvek (PASCAL, C , COBOL), és vannak gépközeli programozási nyelvek (ASSEMBLY). Az egyik legmodernebb programozási módszer közé tartozik az objektum or ientált pr ogramozás ( SMALLTALK, C++). A technika fejlődésével, ma már számos interaktív, felhasználóbarát programozási nyelv, " program építő nyelv" is létezik (VISUAL BASIC). A számítógépes programozásnak egyik fontos szoftver hátterét alkotják a programfejlesztő rendszerek, amelyek támogatják az számítógépes problémamegoldás során a programok létrehozását, módosítását, végrehajtását. Az egyik legismertebb és legszélesebb körben elterjedt

programozási nyelv a PASCAL. Ezen belül is a legismertebb a BORLAND cég TURBO PASCALja. A k övetkező leírás a TURBO PASCAL nyelvre vonatkozik. A Pascal program elemei : Szimbólumok (nagybetűk, kisbetűk, egykarakteres szimbólumok : [ ] + - * / < > . , : ; ^ stb, kétkarakteres szimbólumok : <= >= <> := . (* ) stb. Fenntartott s zavak : A ND A SM END AR RAY B EGIN F ILE F UNCTION PROCEDURE INLINE TYPE Azonosítók : az alábbiak egyikét a zonosítja : pr ogram, e gység, e ljárás, f üggvény, m etódus, c ímke, konstans, típus, változó, rekord- és objektummező. Címkék : A program bármely utasítása megjelölhető címkével, mely mögé kettőspontot kell írni. A címkét a label kulcsszó után kell deklarálni. Számkonstansok 12.tétel Szövegkonstansok Elválasztó jelek A Pascalban az utasításoknak két fajtáját különböztetjük meg : egyszerű és struktúrált utasítás. Egyszerű utasítások : • értékadás :

változóhivatkozás := kifejezés Pl. osszeg := 245; függvényazonosító := kifejezés Pl. atlag := (a+b)/2; • eljáráshívás : eljárás-azonosító [(aktuális paraméterlista )] • metódus hívás : OOP-ben. • vezérlés átadás : GOTO címke Pl. GOTO VÉGE; • Gépi kódú betét : INLINE(elem) • Assembler betét : ASM utasítás END Struktúrált utasítások : • összetett utasítás - szekvencia : BEGIN utasítás [; utasítás] END • elágazás - szelekció : IF feltétel THEN utasítás ELSE utasítás • választás - többágú szelekció : CASE szelektor OF utasítás [;utasítás] ELSE utasítás [;utasítás] • hátultesztelő ciklus - iteráció : REPEAT utasítás UNTIL kilépési feltétel • elöltesztelő ciklus - iteráció : WHILE belépési feltétel DO utasítás • elöltesztelő léptető ciklus - iteráció : FOR ciklusváltozó := kezdőérték TO/DOWNTO végértk DO utasítás • minősítő utasítás : WITH változó-azonosító DO

utasítás A Pascal program felépítése : Programfej : program azonosító; uses azonosító; A uses után a program által használt egységeket soroljuk fel. Programblokk deklarációs rész : label címke; type azonosító := típus; const azonosító = konstans kifejezés; var azonosító : típus; procedure azonosító; eljárásblokk function azonosító : típusazonosító; függvényblokk Programblokk - végrehajtandó rész : 2 13. Tétel : A program deklarációs, definíciós részei : A program felépítése : PROGRAMFEJ DEKLARÁCIÓS RÉSZ label címke type azonosító=típusazonosító/típusleírás const azonosító=konstans kifejezés/tömb konstans/rekord konstans/objektum konstans/halmaz konstans/NIL var azonosító:típusazonosító/típusleírás; [absolute szegmens:ofszet / változó azonosító;] procedure azonosító [(formális paraméterlista)]; eljárásblokk function azonosító [(formális paraméterlista)]:típusazonosító; függvényblokk

PROGRAMBLOKK A deklarációk száma és so rrendje kötetlen. Az el járás és a föggvényblokk deklarációs része és végrehajtandó része ugyanolyan, mint a programblokknál, csak a záró END után pontosvessző áll. Definíciók : formális paraméterlista : [var] azonosító [,azonosító] : típusazonosító; aktuális paraméterlista : kifejezés / változó függvényhívás : függvényazonosító [(aktuális paraméterlista)] objektum azonosító.függvénymetódus [(aktuális paraméterlista)] típuskonvertált változó : típusazonosító(változóhivatkozás) Pl. Byte(karlán[0]) típuskonvertált érték : típusazonosító(kifejezés) Pl. Longint(2) változóhivatkozás kifejezés : operandusoknak műveleti jelekkel összekapcsolt sorozata. Változók definiálása : A pr ogram-, el járás-, függvényblokk d eklarációs r észében d eklarált az onosítókat és cí mkéket a b lokk l okális azonosítóinak illetve címkéinek hívjuk. Egy blokk

deklarációs részében egy azonosító vagy címke csak egyszer szerepelhet. Minden változót felhasználás előtt deklarálni kell A változók deklarálásakor meg kell adnunk annak típusát. A típus meghatározza a változó által felvehető értékeket, a változó által lefoglalt meóriaterületet Egy A blokkban de klarált X változó a kkor é s c sak a kkor látható (hivatkozható) egy B blokkban, ha teljesülnek a következő feltételek : • A és B ugyanazon blokkok vagy a B blokk alárendeltje A-nak és az X változó előbb volt deklarálva, mint a B blokk. • X-et nem deklaráljuk újra egy olyan C blokkban, amely alárendeltje A-nak, de nem alárendeltje Bnek, vagy egy szinten van B-vel. A változók érvényességük alatt, a típusuknak megfelelően bármilyen értéket felvehetnek. A változók alapvetően kétféléek lehetnek : statikusak ill. dinamikusak Statikus változó : a deklarációtól a blokk végéig van ér vényben, azaz ad dig f oglalunk

a m emóriában ( heapben) helyet a számára amíg az őt tartalmazó blokk aktív. Ha a főprogram deklarációs részében deklarálunk egy statikus v áltozót, a kkor a z a pr ogram v égéig é rvényben v an. H a a változó egy tömb típusú változó, akkor ugyanakkora helyet foglal le a memóriából mikor üres és akkor is, amikor nem üres. Dinamikus változó : a program futása során tetszőlegesen hozható létre ill. szabadítható fel az általa lefoglalt memória. A dinamikus változó mérete a futás során változhat Az előbbi példánál maradva : lehetőségünk van 13.tétel "dinamikus tömbök" létrehozására, azaz nem kell előre pontosan megadnunk, hogy hány elemű a tömb, ugyanis a futás során autómatikusan bővül, ha több helyre van szükség. (Kollekciók) A dinamikus változó nem magát az ad atot t artalmazza, h anem csak an nak m emória b eli cí mét, í gy d eklaráláskor csak egy m inimális memóriaterületet igényel.

2 14. tétel : definiált és létrehozható típusok Sorszámozott típusok : minden lehetséges értékhez hozzárendelhető egy sorszám (ORDinal number), az értékek sorszámuk alapján rendezettek. Sorszámozott típusok : egészek logikai karakter felsorolt intervallum A sorszámok : 0,1,2 . (kivéve az egész típusoknál, ahol a sorszám maga a szám) Egyszerű típusok : sorszámozott típusok valós típusok Állomány típusok : szöveges állományok típusos állományok típusnélküli állományok Összetett típusok : karakterlánc tömb rekord objektum halmaz állomány típusok Mutató típusok : típusos mutató vagy típusnélküli mutatók Karakteres típus - CHAR Minden ka rakternek va n e gy kódj a. A 256 ka rakter köz ül 128 kódja minden számítógépen ugyanaz Ezeket a k araktereket n emzetközileg szabványosították - ezek a z A SCII kódok. ( ASCII = American Standard Code for Information Interchange). A többi 128 karakter kódja már

eltérhet a különböző gépeken. A ka rakter t ípusú vá ltozó e gy A SCII kódot tartalmaz A karakereket megadhatjuk ASCII kódjaikkal is. Tárolás : a karakter ASCII kódja 1 bájton tárolódik Egész típusok : Típus Értékei Byte 0.255 Word 0.65,535 ShortInt -128.127 Integer -32,768.32,767 LongInt -2,147,483,648.2,147,483,647 Tárolás : először mindíg a kisebb helyiértékű bájt kerül tárolásra. Logikai típus - BOOLEAN Tárolás Előjel nélküli, 8 bit Előjel nélküli, 16 bit Előjeles, 8 bit Előjeles, 16 bit Előjeles, 32 bit A logikai típusú változónak két értéke van : igaz (true) vagy hamis (false). Mivel sorszámozott típus : igaz=1, hamis=0. Tárolása 1 bájton történik A nullától eltérő érték mindíg 1-et jelent Felsorolt típus 14.tétel Egyszerűen felsoroljuk a lehetséges elemeket. A tárolás az azonosító rendszáma alapján történik Var kaja : (reggeli, ebéd, vacsora); Begin kaja := ebéd; End. Intervallum típus

Egy már létező sorszámozott típus egy intervalluma. Tárolás : az intervallum típus használatával nem spórolunk memóriát. A tárolás a l egkisebb ol yan t ípus s zerint t örténik, a melybe be lefér a z a lsó é s a felső határ is. Var inttip : a.m; inttip2 : -1.100; Begin inttip := b; inttip2 := 56; End. Valós típusok A valós szémokat lebegőpontosan szokták ábrázolni. Lebegőpontos alak : [mantissza][E][exponens]. Jelentése : mantissza *10exp onens A va lós s zámok k iírása - hacsak nem adjuk m eg a k iírandó j egyek s zámát - lebegőpontos formában történik, adott hosszon. Típus Real Single Double Extended Comp Értékei 2.9E-3917E38 1.5E4534E38 5.0E-32417E308 3.4E-493211E4932 −263 + 1. 263 − 1 (-9.2E1892E18) Tárolás 6 bájt 4 bájt 8 bájt 10 bájt 8 bájt Pontosság 11-12 jegy 7-8 jegy 15-16 jegy 19-20 jegy 19-20 jegy egész érték Tárolás : Előjel (1 bit) + Szignifikáns tizedesei + Exponens . A tárolás mindig a legkisebb

helyiértékű bájttal kezdődik. Az előjelbit mindig az utolsó Karakterlánc típus - STRING [maxhossz] 1 ≤ maxhossz ≤ 255 . Ha e lhagyjuk m , m axhossz= 255 A ka rakterlánc e lemei C har t ípusúak, a zaz bármilyen A SCII ka rakterek l ehetnek. A ka rakterlánc t ípusú vá ltozó egy dinamikus hosszúságú karaktersorozat. Hivatkozás a karakterlánc egy el emére : az onosító[index] , ah ol 0 ≤ Index ≤ Maxhossz . A string hosszát a L ENGTH f üggvény a dja vi ssza T árolás : a s tring t ípus memóriaigénye : maxhossz+1 bájt. Tömb típus - ARRAY[indextítpus] OF alaptípus Az i ndextípus c sak s orszámozott l ehet. E gy t ömbnek f ix s zámú e leme va n, é s az összes elemnek ugyanaz a típusa ( Array[Byte] Of Char ). Az elemek számát az indextípus számossága határozza meg Az i ndex t ípus g yakran e gy i ntervallum t ípus ( A rray[1.10] O f Integer ) A tö mb e lemei s zintén lehetnek tömbök, így deklarálhatunk két, há rom, i ll t

öbb di menziós t ömböket. A z e gydimenziós tömböt vektornak, a kétdimenziósat mátrixnak szokták hívni. A tömb elemeire a tömbazonosítóval és az e lem i ndexével hi vatkozhatunk. Tárolás : a t árolás s orfolytonosan t örténik A l efoglalt memóriaterület méretét az alaptípus mérete és az egyes indextípusok számossága határozza meg. Type tömb = Array [1.80] Of Char; Var tömbaz : tömb; tömb1 : Array [1.50] Of Integer; Begin tömbaz [1] := A; 2 14.tétel End. tömb1 [23] := 2456; Rekord típus - RECORD [mezőlista] END Egy rekord különböző típusú elemeket fog össze. Hivatkozás a rekord egy elemére : rekordazonosító.mezőazonosító Type Var Begin End. Telkönyv rekord = Record Név : String; Telefon : Integer; End; Telkönyv : Telkönyv rekord; Telkönyv.Név := " Földházi " Telkönyv.Telefon := 1234567; Halmaztípus - SET OF alaptípus A halmaz elemi ugyanolyan tipusúak. A z a laptípus c sak s orszámozott l ehet,

m elyben a lehetséges elemek s orszámai 0 és 2 55 k özöttiek l ehetnek. A zaz a h almaz maximális elemszáma : 256 Egy halmazt megadhatunk úgy, hogy felsoroljuk elemeit, vagy e gy i ntervallumot a dunk m eg. A z ür es halmaz : [] . Tárolás : 1 elem = 1 bit. Műveletek : * metszet; + egyesítés; - különbség; IN elemvizsgálat. Var H1 : Set of 1.100; H2 : Set of Char; Begin H1 := [1,7,77,34,33]; H1 := [1.23]; H2 := []; End. 3 15. tétel : Az algoritmus vezérlése Minden pr ogramnak két fő komponense van: az adatok és a rajtuk végzett műveletek. Az adatok adatösszetételi szabályokkal összetett adatokká tehetők A műveletek is lehetnek összetettek Elemi műveletekből művelet-összetételi ( műveletképzési ) szabályokkal összetett műveletek képezhetők. Az algoritmusnak, mint műveletnek, az egyik legfontosabb komponense az az előírás, amelyik megmondja, hogy az egyes el emi l épések végrehajtása után melyik el emi l épés végrehajtása

következik. Ezt az előírást az algoritmus vezérlésének nevezzük. A vezérlési mód tehát azt fejezi ki, hogy egyszerű műveletekből hogyan építünk fel összetett műveletet. Négy fő vezérlési mód van: • Szekvenciális vezérlés • Szelekciós vezérlés ♦ Egyszerű ♦ Többszörös ♦ Eset-kiválasztásos • Ismétléses vezérlés ♦ Kezdőfeltételes ♦ Végfeltételes ♦ Számlálós • Eljárás- és függvényhívás,mint vezérlés Szekvenciális Vezérlés: Véges sok adott műveletnek egy rögzített sorrendben történő végrehajtását írja elő. Az algoritmus tervezésénél a problémát részproblémákra bontjuk, é s m egadjuk, hog y a r észalgoritmusokat hog y k ell ös szerakni. A P probléma megoldása úgy áll össze, hogy rendre P1.Pn problémák megoldásait egymás után végre kell hajtani Ha P probléma már nem bontható tovább, akkor már elemi- vagy levélszintről beszélünk. Az alábbi ábrán látható P11 probléma

már elemi szintnek felel meg. Szelekciós Vezérlés: A szelekciós vezérléssel azt írjuk elő, hogy véges sok előre megadott művelet közül melyiket hajtsuk végre egy adott feltétel alapján. Egyszerű Szelekciós Vezérlés: Csupán két alternatív művelet van. a) F feltétel teljesülésekor A1, máskülönben A2 alternatíva hajtódik végre. Pascal : IF F THEN A1 ELSE A2 a) Ha F teljesül, akkor A1 kerül végrehajtásra. Ha nem teljesül, akkor a művelet hatástalan Pascal : IF F THEN A1 15.tétel Többszörös Szelekciós Vezérlés: a) F1, F2, . ,Fn feltételek, melyeket balról jobbra értékelünk ki Az első igaz aktuális értékű Fi feltételhez tartozó Ai alternatíva fog végrehajtódni, ahol i=1.n Ha nincs olyan ‘i’, amelyre Fi igaz, akkor a művelet hatástalan. Pascal : IF F1 THEN A1 IF F2 THEN A2 IF Fn THEN An b) Ha nincs olyan "i", amelyre Fi igaz,akkor a B alternatíva (az else ág ) fog végrehajtódni.

Eset-kiválasztásos Szelekciós Vezérlés K - Kifejezés ( szelektor kifejezés ) H1, H2, ., Hn - Kiválasztó halmazok A1, ., An - Alternatívák a) Először meghatározzuk a K kifejezés aktuális értékét, majd balról j obbra megkezdjük a k iértékelést. Ha a K kifejezés értéke a Hi halmazba esik ( i=1.n ), akkor az Ai alternatíva kerül végrehajtásra Ha nincs ilyen "i", akkor a művelet hatástalan. b) Ha Hi nem teljesül, akkor a B - ELSE - ág hajtódik végre. Pascal : CASE K OF H1 : A1 H2 : A2 Hn : An ELSE B END; Ismétléses Vezérlés Olyan vezérlési előírás, amikor egy adott műveletnek valamilyen feltételtől függő, ismételt végrehajtását írjuk elő. A vezérlés eredménye egy ciklus Az adott műveletet a ciklusban ciklusmagnak nevezzük Feltételtől függően a következő formák vannak: a) Kezdőfeltételes ( WHILE DO ) b) Végfeltételes ( REPEAT UNTIL ) c) Számlálós ( FOR ciklus ) Kezdőfeltételes ( WHILE - DO ) Legyen F

logikai kifejezés ( feltétel ), M pedig egy tetszőleges művelet. Az F feltételből és az M műveletből megalkotott Kezdőfeltételes Ismétléses Vezérlés azt jelenti, hogy: 1, Kiértékeljük az F feltételt 2, Ha F hamis, akkor befejeződött a művelet, ha F igaz, akkor a 3. pont következik 3, Hajtsuk végre az M műveletet, utána az 1. pont jön Folyamatábra: 2 15.tétel Pascal : WHILE F DO BEGIN M END; Felülről vezérelt vagy felülszervezett ciklusnak is szokták nevezni (elöltesztelő ciklus). Lehet, hogy egyszer sem fut le a ciklus. Addig ismétlődik a ciklus amíg a feltétel igaz Végfeltételes Ismétléses Vezérlés( REPEAT - UNTIL ) Legyen adott F feltétel ( logikai kifejezés ), valamint M művelet. Ezzel a vezérléssel a következő tevékenységet írjuk elő: 1, Hajtsuk végre az M műveletet. 2, Értékeljük ki az F feltételt. 3, Ha F igaz, akkor befejeztük a műveletet. Ha F hamis, akkor vissza az 1 ponthoz Folyamatábrája: Pascal

megvalósítása: REPEAT M UNITL F Alulról vezérelt vagy alulszervezett ciklusnak is szokták nevezni (hátultesztelő). A feltételtől függetlenül egyszer biztos lefut a ciklus. Addig ismétlődik a ciklus amíg a feltétel hamis Számlálásos Ismétléses Vezérlés ( FOR ) Ha egy olyan ismétléses vezérlést írunk elő, amikor a ciklusmagot végre kell hajtani egy i ntervallum minden elemére. R endelkezésünkre ál l eg y speciális változó, a ciklusváltozó, am ely az i ntervallum el emeit r endre felveszi. Legyen M egy tetszőleges művelet, "i" a ciklusváltozó, "a" és "b" az intervallum két végpontja. A, b, i sorrendi típusúak, azaz csak Smallint, Longint, Int, vagyis Integer lehet. Balról jobbra: Pascal : FOR I:=a TO b DO M; Jobbról balra: Pascal : FOR I:=b DOWNTO a DO BEGIN M END; i:=a.b;-1 i:=b i>=a M M i:=pred(i) i:=b.a M Szabályok: A ciklusváltozó sorrendi típusú( lokális változó, más célokra nem

használjuk ). 1, Kezdőérték és végérték csak egyszer értékelődik ki. 3 15.tétel 2, Nem szerepelhet értékadó utasítás bal oldalán a ciklusváltozó, ill. az intervallum végpontjaiban szereplő változó. 3, Nem vehetnek részt olyan eljárásokban, függvényekben sem, ahol az értékük változhat. 4, Ciklusváltozó nem vesz fel a z i ntervallum ba l v égpontjánál k isebb, é s a j obb v égpontjánál na gyobb értéket. 5, A ciklus lefutása után a ciklusváltozó értéke nincs definiálva. Eljárás-függvény művelet : Eljárásműveleten olyan tevékenységet értünk, amelynek alkalmazása adott argumentumokra ezeknek előre meghatározott módú megváltozását eredményezi. Minden eljárásműveletnek rögzített számú argumentuma van, és minden argumentumnak szintén előre rögzített adattipusa van. Minden argumentumnak van módja, fajtája a következőkön belül: • Bemenő mód : Az eljárásművelet végrehajtása nincs hatással

erre az argumentumra. Jele : ↓ • Kimenő mód : Az eljárás művelet végrehajtása nem függ ennek az argumentumnak végrehajtás előtti értékétől, de az eljárás végrehajtása megváltoztathatja az argumentum értékét. Jele : ↑ • Be-kimenő mód : Az argumentum hatással lehet az eljárás műveletre és az eljárás hatással lehet (azaz megváltoztathatja) az argumentumra. Az eljárás művelet végrehajtása függhet az argumentum végrehajtás előtti értékétől és a végrehajtás során ez az érték meg is változhat. Jele : Az eljárás végrehajtása eljáráshívással történik. Ahhoz, hogy egy eljárás műveletet megadjunk, az eljárás specifikációjának a következőket kell tartalmaznia : • az eljárásművelet nevét • a formális paraméterlistát • mindegyik argumentum adattípusát és módját • az eljárás művelet leírását Megvalósítás : PROCEDURE P (m1 x1:t1; . mn xn:tn); mi : az i-edik argumentum módja xi : az i-edik

argumentum neve ti : az i-edik argumentum adattípusa Pascal-ban a kimenő és a be-kimenő módú változók elé VAR kulcsszót kell írni. PROCEDURE OSSZEAD ( a: INTEGER; b: INTEGER; VAR c: INTEGER ) BEGIN READLN(a,b); { a,b - bemenő változó } c:=a+b; { c - kimenő változó } WRITELN(c); END; 4 16. tétel : Függvények és eljárások A Pascal program deklarációs részében al-program-blokkokat is deklarálhatunk. Az alblokk utasítások összessége, m elyeket a pr ogram bi zonyos pont jairól a ktivizálhatunk, m eghívhatunk. A z alblokkok deklarációs r észei t artalmazhatnak vá ltozókat, kons tansokat, c imkéket s tb. é s új abb alprogramdeklarációkat is Azokat a programozási nyelveket amelyekben lehetőségünk van ilyen alblokkok használatára blokkstruktúrájú programozási nyelveknek nevezzük. A TP is ilyen A blokkok a lárendelt va gy m ellérendelt vi szonyban l ehetnek. M ellérendelt a kkor, ha ugyanabban a blokkban vannak de klarálva, kül

önben a lárendeltek. E gy B blokk a z A blokknak köz vetlenül alárendeltje, ha a B blokk az A blokk deklarációs részében van. Egy A blokkban de klarált X változó a kkor é s c sak a kkor látható (hivatkozható) egy B blokkban, ha teljesülnek a következő feltételek : • A és B ugyanazon blokkok vagy a B blokk alárendeltje A-nak és az X változó előbb volt deklarálva, mint a B blokk. • X-et nem deklaráljuk újra egy olyan C blokkban, amely alárendeltje A-nak, de nem alárendeltje Bnek, vagy egy szinten van B-vel. Egy azonosító lokális egy blokkra nézve, ha a l áhatósági kör ében va n é s ot t va n de klarálva. A z azonosító globális, ha látható a blokkban, de nem ott van deklarálva. Alprogramokat akkor írunk, ha : bizonyos tevékenység többször előfordul a programban, s a forráskódot rövidíteni akarjuk. a túl nagy programot tagolni, olvashatóságát növelni szeretnénk a m emóriaigényt cs ökkenteni ak arjuk, ug yanis a z a

lprogramblokkokban de klarált l okális vá ltozók számára csak addig foglalunk helyet, amíg a blokk aktív. • • • A TP-ban az alprogramok két fajtája ismeretes : az eljárás és a függvény. Eljárások - PROCEDURE : Eljárásfej : PROCEDURE eljárás-azonosító [(formális paraméterlista)]; Deklarációs rész : Label . Const Type. Var. Procedure. Function. Blokk : Begin utasítások End; Formális paraméterlista : [Var ] azonosító [,azonosító.] : típusazonosító A deklaráláskor szereplő paraméterlistát hívjuk így. A form paraméterlista elhagyható Aktuális paraméterlista : Az eljárás/függvény hívásakor szereplő paraméterlistát hívjuk így. A p araméterátadás a f ormális p araméterlista f elsorolásának s orrendjében t örténik. A z a ktuális paraméterek típusának rendre meg kell egyeznie a formális paraméterlistában megadottakkal. Program P; Procedure Kiir (X,Y : Byte; Jel : Char); Begin GotoXY(X,Y); Write(Jel); Var

oszlop, sor : Byte; kar : Char; Begin Kiir (oszlop, sor, kar ); End. X,Y,Jel : formális paraméterek; Értékparaméter : End; oszlop, sor, kar : aktuális paraméterek. 16.tétel Ha az eljárás a hívó program aktuális paramétereit változatlanul hagyja, akkor értékparaméterekről beszélünk. I lyenkor cs ak át adunk ér téket az el járásnak, a f ormális paraméterlistában nem kell VAR kulcsszót írni a változók elé. Program P; Procedure Nagyit (X,Y :Integer); Begin X := X*Y End; Var szám : integer; Begin Szám :=6 ; Nagyit(szám,5); End. Az eljárás a szám aktuális paramétert változatlanul hagyja, azaz szám az eljárás hívása után is 6. Válltozó paraméter : Ha az eljárásnak nemcsak átadni akarunk értékeket, hanem azokat megváltoztatva visszakapni is, vagy az e ljárásban a karunk va lamit ki számolni, a kkor vá ltozó pa ramétereket ke ll ha sználni. A vá ltozó paraméter ér téke az el járás v égrehajtása s orán m

egváltozhat. A formális paraméterlistában az i lyen változók elé VAR kulcsszót kell írni. Program P; Procedure Nagyit (VAR X : Integer ; Y :Integer); Begin X := X*Y End; Var szám : integer; Begin Szám :=6 ; Nagyit(szám,5); End. Az eljárás végrehajtása után a szám értéke 6*5=30 lesz. Az eljárás egyszerűen végrehajtódik, amikor a neve utasításkét megjelenik, majd a vezérlés a hívás utáni utasításra tér vissza. A záró end után pontosvesszőt kell írnunk Függvények - FUNCTION : Függvény esetében nem csupán az utasítások végrehajtásáról van szó , ha nem maga a hivatkozás kap értéket, s ez a függvényérték bármilyen k ifejezésben o perandusként s zerepelhet. A v isszaadott ér ték típusa előre meghatározott. Függvényfej : FUNCTION függvényazonosító [(formális paraméterlista)] : típusazonosító; Deklarációs rész : Label . Const Type. Var. Procedure. Function. Blokk : Begin utasítások End; A f ormális é s a

ktuális pa raméterlista ug yanaz, m int a z e ljárásoknál. A függvény blokkjában a függvényazonosítónak értéket kell adni egy értékadó utasítással. Ha a függvénynek nem adunk értéket, akkor az definiálatlan lesz. Rekruzív hívás : Egy eljárás vagy függvény önmagából való hívását rekruzív hívásnak nevezzük. A függvényeknek/eljárásoknak két nagy csoportjuk van. Az egyik az előre definiáltak, a másik a felhasználó által definiáltak. Előre definiált eljárások : FAIL, FREEMEM, ASSIGN, CLOSE, READ, WRITE stb. függvények : ABS, COS, SIN, SQRT, EXP, EOF, EOLN, FILESIZE, IORESULT stb. Az előre definiált rutinok, függvények, eljárások, konstansok a PASCALban ún. egységekben (UNITokban) találhatók Pl : System, Dos, Graph, Crt Ezeket a pascal programban az USES kulcsszó után kell megadni. Kivéve a s ystem egységet, mert az autómatikusan hozzászerkesztődik a programhoz. 2 17. Tétel : Állománykezelés Programunk

az állományok segítségével t arthat ka pcsolatot a " külvilággal". A z á llományok segítségével adatokat tudunk eltárolni, kiírni ill. beolvasni Az állomány logikailag összefüggő adathalmazt je lent. A p rogram min díg e gy lo gikai á llományt k ezel, me ly lo gikai á llományt min den esetben hozzá kell rendelni egy fizikai állományhoz. A hozzárendelést az ASSIGN eljárással tehetjük meg : ASSIGN( Var F; Név ); Az eljárás az F állomány típusú logikai változóhoz hozzárendeli a név fizikai állományt. Ha a fájllal befejeztük a munkát, akkor le kell zárni. Ezt a CLOSE eljárással tehetjük meg : CLOSE (Var F) Lezárja az F -hez rendelt fizikai állományt. Lezárás előtt pufferben maradt adatokat kiírja az állományba. Végül felszabadítja az állományhoz rendelt kezelőszámot Állománykezelésnél is az állomány típusú változókat a deklarációs részben kell deklarálni. A fizikai állomány valamelyik

háttértáron helyezkedik el vagy fog elhelyezkedni. A pascal 3 féle állomány típust különböztet meg. Szöveges állomány - TEXT A szöveges állományra soros szervezés jellemző, a sorok változó hosszúságúak. A sorokat sorvégjel, az ál lományt ál lományvég j el z árja. A s zöveges ál lomány elérése csak szekvenciálisan történhet, egyszerre vagy csak o lvasni v agy cs ak í rni l ehet. A z ál lomány m érete el vileg k orlátlan A f izikai és alogikai á llomány k özött e gy T extRec típ usú változó tart kapcsolatot.A f izikai é s a logikai á llomány között egy FileRec típusú változó tart kapcsolatot. Szabványos eljárások, függvények : Append, Assign, E of, E oln, E rase, F lush, R ead, R eset, R ewrite, SetTextBuf, Write, Close Típusos állomány - FILE OF alaptípus A típusos állomány komponensekből épül fel. A komponensek egyforma méretűek és alaptípus típusúak. Az alaptípus nem l ehet á llomány i ll obj

ektum t ípusú A kom ponensek s záma e lvileg korlátlan. A be olvasás i ll a ki írás e gysége a kom ponens A kom ponenseknek egyértelmű sorszámuk van: 0,1,2 . A z elérés szekvenciálisan vagy a komponens sorszáma szerint direk módon történhet A típusos állomány egyszerre írható és o lvasható is .A f izikai é s a logikai á llomány k özött e gy F ileRec típusú változó tart kapcsolatot. Szabványos e ljárások, f üggvények : A ssign, C lose, E of, F ilePos, F ileSize, R eset, R ewrite, Seek, Truncate Típusnélküli állomány - FILE A típusnélüli állomány elemeire nem az alaptípus jellemző, hanem a hossz. A bevitel/kivitel alacsonyszintű, puffer nélküli. Általában a kkor ha sználjuk, ha i smeretlen a f ájl, vagy gyors adatmozgatásra van szükségünk. A kom ponenshossz a z á llomány ny itásakor m egadható A z e lérés szekvenciálisan vagy a komponens sorszáma szerint direkt történhet. Szabványos e ljárások, f üggvények :

Assign, C lose, E of, F ilePos, F ileSize, R eset, R ewrite, Seek, Truncate, BlockRead, BlocWrite Függvények és eljárások : Append (Var F:text) Megnyitja írásra az F szöveges állományt. Az állomány aktuális pozícióját a file végére állítja, azaz a file a következő íráskor bővülni fog. 17.tétel Eof (Var F: text) : Boolean; (Szöveges állománynál) A függv. értéke true, ha az aktuális pozíció a logikai file végén van Eoln (Var F : text) : Boolean; (Szöveges állománynál) A függv. értéke true, ha az aktuális pozíció a szöveges F állomány sorvégjelén áll Eof (Var F) : boolean; (típusos és típusnélküli állományokra) A függv. értéke true, ha az állománymutató az F állomány utolsó komponense mögé került, vagy üres az állomány. FilePos (Var F) : LongInt Az F állomány azon kom ponensének a s orszámát adja vi ssza, amelyre az állománymutató mutat. Az állománynak nyitva kell lenni. FilesSize (Var F) :

LongInt Az F állomány komponenseinek a számát adja vissza. Seek (Var F; N : LongInt) Az F állomány mutatóját az N-edik komponensre állítja. Az állománynak nyitva kell lenni Truncate (Var F) levágja az F állomány komponenseit az aktuális pozíciótól. Az állománynak nyitva kell lennie Reset (Var F [:files; RecSize : Word]) Megnyitja az F-hez rendelt fizikaiállományt. Ha F szöveges, akkor csak olvasásra Ha F típusos vagy típusnélküli, akkor írható és olvasható is az állomány. Típusnélküli állományok esetében megadható a rekordméret is a RecSize paraméterben. Rewrite (Var F [:File; Recsize : Word]) ha F m ég n em l étezik, ak kor l étrehozza az t és s zöveges állománynál megnyitja írásra, típusos és típusnélküli álommánynál m egnyitja í rásra, ol vasásra. T ípusnélküli á llományoknál m egadható a rekordméret is. Blockread (Var F: file; Var Buf; Count : Word, Var Result : Word) F típusnélküli állományból beolvas

Count rekordot, és elhelyezi a memóriába a Buf címtől kezdődően. Blockwrite Read (F; V) Az F állományból beolvassa azt a komponenst amire az állománymutató mutat, majd elhelyezi azt a V változóba. A mutató a következő komponensre lép autómatikusan Write (F; V) Readln, Read (Var F: text, V) Az elj. beolvassa az F szöveges állományból az aktuális pozíción kezdődő értékeket, majd elhelyezi a V változóban. Writeln, Write (Var F: text; V) SetTextBuf (Var F : text; Var Buf) H ozzárendeli F szöveges állományváltozóhoz az eredeti 128 bájtos puffer helyett a Buf átmeneti puffert. 2 18. tétel : Adatszerkezetek, adatbázisok Alapfogalmak : halmaz : azonos tulajdonságú elemek rendezetlen összessége. rekord : a táblázat minden sora tartalmaz egy-egy összefüggő adategységet, ezt nevezzük rekordnak. A rekord oszlopait mezőknek hívjuk. A rekord adatai ezekbe a mezőkbe vannak belefoglalva Adatbázis : több különböző típusú, de

tartalmilag összefüggő, egymás rekordjaira hivatkozó, struktúrált file- rendszert nevezzük adatbázisnak, összekapcsolt adatfájlnak. Az adatbázisban egy-egy adatfájlt szokás táblának is nevezni. Összetett adatbázisok (több táblával) kezelésekor felmerülő problémák : • Az adatbázis tartalmának minden változását ( bevitel, módosítás, törlés) végig kell vezetni minden fájlban, amelyet ez a változás érint. • Ha egy adatbázisnak sok felhasználója van, akkor egyidejűleg többen is hozzáférhetnek az adatbázis tartalmához. Ha a felhasználók az ad atokat i s m ódosíthatják, ak kor ez p roblémákat o kozhat eg y n agy adatbázisnál. • A bonyolult adatstruktúra megnehezíti a felhasználónak az adatok fölötti áttekintést. Ezeknek a problémáknak a megoldására alakultak ki az adatbázis-kezelő rendszerek Követelmények egy adatbázis-kezelő rendszerrel szemben : • adatvédelem, biztonság • naprakész adatok • rugalmas

változtathatóság • párhuzamos hozzáférés • tárolóeszköztől ill. felhasználói programoktól való függetlenség • többszörös adattárolás (redundancia) csökkentése ⇒ normalizálás • előforduló adatok változtatásának végrehajtása minden előfordulási helyen Adatmodellezés Azt az el járást, am ely so rán a v alós v ilág t ényeit és összefüggéseit tükröző adatok lényeges összefüggéseit emeljük k i, ad atmodellezésnek n evezzük. A z ad atmodellezés er edménye az ad atmodell A z ad atmodell t ehát nem más, mint az adatbázis-struktúra logikai elrendezése, kialakítása. Adatmodellek : Hálós adat modell : amelyben a rekordtípusok között tetszőleges (pointerekkel megadható) kapcsolatot szervezünk. A hálós adatmodellt gráfokkal ábrázoljuk, amelyekben a csú csok az egyes rekordtípusok, az élek pedig k ét rekordtípus közötti kapcsolat. A hálós adatmodell egy általánosított hierarchikus kapcsolat, amiben

1:1 (egy-egy), 1:N (egy-sok), M:N (sok-sok) jellegű kapcsolat is lehetséges. m vevõ 1 m telephely 1 eladó 1 m rendelés m n m áru n szállító m n raktár Relációs adatmodell : Az adatmodellnek két szintje van : Típus : a tulajdonságok, kapcsolatok halmaza Előfordulás : a konkrétan létezőegyed, mezőérték, kapcsolat. 18.tétel ↓ SORSZÁM 1. 2. ↓ NÉV Kiss Nagy Mezőnevek, tulajdonságok ↓ ↓ ↓ VÁROS Pécs Érd UTCA Fő Al ↓ SZÁM 12 21 ↓ IRÁNYÍTÓ TELEFON 5012 313-42 2300 12-53 ↑ Mezőérték ←Rekordtípus ←Rekord A relációs adatmodellben a rekordtípusok (egy tábla mezőneveinek halmaza ) között előre szervezett kapcsolat nincs, pointerek sincsenek, és m agukat a k apcsolatokat i s r elációkkal áb rázoljuk. A r elációs ad atmodell a z adatbázisok logikai szerkezetének leírására alkalmas eszköz. Ezt a modellt mátrixok formájában ábrázoljuk A relációs adatbázis egysége a Codd-féle reláció,

amelyet táblázatként, pontosabban mátrix alakban képzelhetünk el, ahol a sorok az adatrekordok, az oszlopok nevei pedig a tulajdonságok, attribútumok (mező nevek). A reláció nem más mint egy kétdimenziós mátrix (táblázat) Ha a mátrixnak (relációnak) m sora és n oszlopa van ,akkor n-et a reláció fokának nevezzük, m-et pedig a reláció számosságának. A relációs adatmodell a relációk matematikai elméletén alapszik. Legyen Ω egy nem üres véges halmaz ( a mezőnevek halmaza). Az Ω feletti R rel ációnak n evezzük a z Ω halmazon értelmezett függvények egy véges halmazát. Minden egyes attribútumhoz tartozik egy D véges halmaz amelyek az adott attributum értéke lehetnek, ezek az adott oszlop mezőértékei. Ezeket szokás az attributum értékkészletének vagy domainjének nevezni. A reláció a domainek szorzatértékének egy részhalmaza Legyen Ω egy véges halmaz és a∈ Ω esetén Da esetén egy nem üres véges halmaz. Az R⊆Χ

Da halmazt Ω feletti relációnak nevezzük. (a∈ Ω) Példa relációs adatmodellre : a modell álljon 4 táblából, amelyeknek a nevei a következők : TELEPHELY (R1), RENDELÉS (R2), TÉTEL (R3) , CIKK (R4). TELEPHELYKÓD TELEPHELYCÍM VEVŐKÓD T1 Budapest V8 T2 Miskolc V5 R1 RENDELÉSSZÁM 0001 0002 R2 RENDELÉS DÁTUMA 1997.0201 1997.0211 RENDELÉSSZÁM 0001 0002 R3 CIKKSZÁM 1 3 CIKKSZÁM 1 3 R4 CIKKNÉV Vasaló Hűtő TELEPHELYKÓD T1 T1 SZÁLL. HATÁRIDŐ 1 2 EGYSÉGÁR 3456 23456 MEGRENDELT MENNY. 100 50 RAKTÁRKÓD R1 R2 R1, R2, R3, R4 relációk. Relációk főbb tulajdonságai : • nincs két azonos sor • a sorok sorrendje lényegtelen, a sorokra egy mezőértékkel, vagy több mezőérték együttes értékével hivatkozunk. • az oszlopok sorrendje lényegtelen, az oszlopokra az attributum nevével (mezőnév) hivatkozunk. Relációk jelölése : R(a1,a2,. , an) 2 18.tétel R a reláció neve, a1.an a mezőnevek 3 19. Tétel : A

normalizásás és folyamata Relációs adatmodell : Az adatokat sorokban és oszlopokban ábrázoljuk. Tulajdonképpen a papiron történő adatábrázolási mód számítógépes megoldása. A relációs adatmodellre egyszerűsége miatt nagyon sok algoritmust dolgoztak k i. H a a r elációs ad atmodell helyesen van felépítve, akkor hatékonyabb adatkezelés valósítható meg bármely más bonyolultabb modellnél. 1., Termék vasaló hűtőgép Eladott darabszám Eladó 8 Kis István 3 Nagy Péter Ha az ad atbázisban az el adók ad atait i s r ögzíteni ak arjuk, ak kor p robléma ad ódik, mert a zonos a datok többször sz erepelnek a t áblában. Í gy az ad attáblánk n agy l esz, s m ódosításkor az ad atokat t öbb h elyen i s módosítani kell. Ez a többszörös adatábrázolás (redundancia) Megoldás : Termék Eladott dbszám vasaló 8 hűtőgép 3 mosógép 6 ELADÁSOK Eladó azonosítója 0001 0002 0001 Termék 0001 0002 0003 ELADÁSOK Név Kiss István

Nagy Péter Péter Pál Lakhely Hmvhely Szeged Szentes 2., Szuperkulcs : a t áblázat ol yan os zlopainak a kom binációja, amely egyértelműen azonosítja a sorokat. Egy táblázatnak egy szuperkulcsa van Kulcs : olyan oszlop vagy legkisebb oszlopkombináció, amely egyértelműen azonosítja a sorokat. Egy táblázatnak több kulcsa is lehet. Idegen kulcs : e gy tá blázat o lyan o szlopa, am ely eg y m ásik t áblázatnak k ulcsa. p l : E LADÁSOK tábla - azonosító Relációs adatmodell nem más, mint táblázatoknak kul csok é s i degenkulcsok á ltal ös szekapcsolt halmaza. Ezek megfelelő és hatékony szervezésére használják a normalizálást Megkülönböztetünk 1., 2, 3, normálformát és a Boyce Codd normálformát Normálformák : 1. normálforma : az adatsor minde oszlopában csak egy adat szerepelhet Név Gyerekek Kis János Kis Péter Kis János Kis Anna Egy adatbázis 1. normálformájú, ha minden táblája 1 normálformájú 2. normálforma :

Egy tábla B oszlopa funkcionálisan függ a tábla A oszlopától , ha m inen e setben, a mikor a B oszlop két sorában két különböző érték van, az A szolop egyanazon sorai is különböznek. Logikai különbözőség. Pl : az ELADÓK tábla minde oszlopa funkcionálisan függ az azonosítótól A funkcionális függés jele : azonosító név, lakhely Prímattribútum=prímoszlop: a táblázat valamelyik oszlopát prímoszlopnak nevezzük, ha egy olyan oszlophalmazba tartozik, amely a táblázatban kulcs. Valamely oszlop egy oszlophalmaztól teljes funkcionális függésben van, ha attól funkcionálisan függ, de a halmaz bármely részhalmazától funkcionálisan független. 19.tétel Egy táblázat 2. normálformájú, ha egyben első normálformájú is, és minden nem prím oszlopa teljes funkcionális föggőségben van a táblázat összes kulcsával. 3. normálforma : Tranzitív függőség : egy táblázat A oszlopa tranzitív függőségben van a táblázat

minden részhalmazával, ha létezik az oszlopoknak egy olyan részhalmaza amelyre teljesül a következő négy állítás : • Y minden oszlopa funkcionálisan függ X-től. (Y, X oszlopok részhalmazai) • X nem minden oszlopa függ funkcionálisan Y-tól. • az A oszlop funkcionálisan függ Y oszlopainak egy részhalmazától. • A sem az X, sem az Y halmaznak nem eleme. Egy t áblázat 3. nor málformájú, ha e gyben 2 nor málformájú i s, és egyetlen nem pr ím at tribútuma sincs tranzitív függőségben a táblázat valamelyik kulcsával. Normalizáslás összegzése : Egy táblázat akkor ábrázolja teljesen funkcionális függőségek egy halmazát, ha a funkcionális függőségek minden részhalmazát megtestesíti. Mindíg található olyan táblázat, amely : • a táblázatok teljesen ábrázolják a funkcionális függőségek halmazát • minden táblázat 3. normálformájú • nincs a táblázatnak olyan szűkebb részhalmaza, amelyre az a és a b

pontok teljesülnek. Az ilyen formára hozást nevezzük normalizálásnak. Példa : 1 Eladó azonosító 0001 0002 ELADÁSOK TÁBLA Eladó azonosító 0001 0002 ELADÓK TÁBLA termék eladott darabszám vasaló porszívó név Kis I. Nagy P. 5 6 cím Hmvhely Szentes telefon 123-123 234-234 számlaszám 1-4566-7899 2-3333-4444 Eladó azonosítónév, cím, telefon, számlaszámtermék, eladott darabszám, eladó azonosító ELADÓK tábla eladó azonosító mezője kulcs. ELADÁSOK tábla eladó azonosító mezője idegen kulcs. Az ELADÓK tábla számlaszám mezője lehet kulcs Példa 2 : második normálformára hozásra. A taxikat minden nap különböző ember vezeti, s egy bizonyos számú taxi mindíg egy helyről indul. Taxi száma 12 14 Nap okt. 8 okt. 8 Vezető Varga László Kovács Pál Honnan indul Reptér Margit sziget kulcs nem prím attribútum nem prím attribútum A taxi száma és a nap alkotja a kulcsot. A kulcs és a vezető oszlop teljes

funkcionális függésben vannak. A kul cs é s a honna n i ndult os zlop c sak f unkcionális f üggésben va nnak e gymással, m ert a kulcs egy része (a taxi száma) már m eghatározza a honna n i ndult os zlopot. Í gy ne m t eljesül a m ásodik normálforma feltétele, mert a honnan indult -nem prím attribútum- funkcionális függésben van a taxi számával -azaz a kulcs egy részével. 2 19.tétel MEGOLDÁS : két tábla szükséges. Taxi száma 12 14 Nap Okt. 8 Okt. 8 Taxi száma 12 14 Vezető Varga László Kovács Pál Honnan indul Reptér Margit sziget Példa 3 : harmadik normálformára. Taxi szám 12 14 Nap Okt. 8 Okt. 8 Vezető azonosító 001 002 Taxi szám + Nap = X Vezető azonosító = Y Y minden oszlopa funkcionálisan függ X-től. X nem minden oszlopa függ funkcionálisan Y-tól. A funcionálisan függ Y oszlopainak egy részhalmazától A nem eleme X-nek, A nem eleme Y-nak. 3 Név Kovács Pál Varga László Név = A 20. tétel:

Adatállományok kezelése - létrehozás, karbantartás parancsai Az SQL egy eljárásmentes nyelv, nem lehet benne összetett programot írni. Fogalmak : DBASE összekapcsolt adatfile adatfile mező számított mező rekord SQL nyelvű utasítások : START DATABASE xxx; szükséges egy adatbázis. SQL adatbázis tábla oszlop logikai oszlop sor A már meglévő xxx adatbázis aktivizálása. Minde SQL parancshoz CREATE DATABASE xxx; Az xxx nevű adatbázis létrehozása. Létrejönnek a rendszertáblák, megtörténnek a szükséges bejegyzések. SHOW DATABASE; Meglévő adatbázisok kilistázása. DROP DATABASE xxx; Az xxx adatbázis törlése. Aktív adatbázis nem törölhető Törléskor törlődnek a rendszertáblák, és a megtett bejegyzések. CREATE TABLE táblanév ( oszlopnév1 adattípus [ , oszlopnév2 adattípus , oszlopnév3 adattípus . ] ); Új tábla létrehozása. Két azonos nevű tábla nem hozható létre Lehetséges adattípusok : • smallint :

előjeles, 6 jegyű egész. • integer : előjeles 11 jegyű egész • decimal(n,m) : n hosszúságú, m tizedesjegyű előjeles szám. • numeric(n,m) : BCD formátumú. N hosszúságú, m tizedesjegyű Nmax= 20 • float(n,m) : n hosszúságú, m tizedesjegyű előjeles lebegőpontos szám. A hosszba beleszámít az előjel is, így Nmax=20. Legnagyobb szám : 0,9*10^308 . Legkisebb szám : 0,1*10^-307 • char(n) : n hosszúságú karakterlánc n=1.255 • date : 8 byte hosszú dátumtípus. Szintaxis : hh/nn/éé Hibás formátumú dátumot nem fogad el • logical : logikai igaz/hamis adattípus A táblanév 8, az oszlopnév 10 karakter hosszú lehet. ALTER TABLE táblanév ADD ( újoszlopnév1 adattípus [ újoszlopnév2 adattípus, újoszlopnév3 adattípus] ); Új oszlop hozzáfűzése a már meglévő táblához. DROP TABLE táblanév ; Tábla törlése. CREATE [UNIQUE] INDEX i ndexnév O N t áblanév os zlopnév1 [ ASC/DESC] [ ,oszlopnév2 [ASC/DESC]]; Index file

létrehozása. Az indexállomány kulcsok rendezett összessége, ahol minden kulcsnak egyértelműen megfeleltethető egy ad atállománybeli r ekord. M ivel az i ndex m érete általában töredéke a törzsrekordnak, az indexállományban egy kulcs keresése sokkal rövidebb idő alatt elvégezhető, mint az adatállományban. Gyorsítja a keresést az indexállomány speciális szerkezete is, ahol a keresés a rendezettségen alapul. 20.tétel DROP INDEX indexnév; Indexfile törlése. INSERT INTO táblanév VALUES(<értéklista>); Új sort adhatunk a táblához. Az értéklista a mezők értékeinek a listája sorban INSERT INTO táblanév1 SELECT * FROM táblanév2; Adatmozgatás ké t t ábla köz ött. I NSERT I NTO t ábla1 S ELECT * F ROM tábla2 WHERE név<>"Kovács"; UPDATE táblanév SET oszlopnév=kifejezés [WHERE feltétel] Tábla kiválasztott sorainak módosítása. U PDATE t ábla1 S ET f izetés= (fizetés*1.2) W HERE

kódszám<"0001"; DELETE FROM tábla WHERE feltétel; Sorok törlése a táblából. DELETE FROM tábla WHERE kódszám="0001"; CREATE SYNONYM másdolagos név FOR táblanév; A táblanév nevű tábla másodlagos neve másodlagos név lesz. Két egyforma másodlagos név nem lehet. Tábla önmagával való összekapcsolásakor lehet rá szükség DROP SYNONYM másodlagos név; Másodlagos név törlése. Környezeti változók : SET SQL ON/OFF SET ECHO ON/OFF SET BELL ON/OFF SET BELL TO frekvencia, idő SET ESCAPE ON/OFF SET PRECISION TO szám SET DECIMALS TO szám SET POINT TO karakter SET STEP ON/OFF SET TRAP ON/OFF SET CLOCK ON/OFF SQL mód be-, kikapcsolása. A végrehajtott sorok megjelenésének be-, kikapcsolása. Hang be-, kikapcsolása. (idő : 2.19, frekvencia : 19-10000), ?CHR(7) A program futása közben kilehessen-e lépni a programból Hány számjegy pontossággal számoljon a prg. Szám : 10-20 Tizedesek száma. Szám : 0-18 Beállíthatjuk,

hogy milyen k arakter l egyen az eg észek és a tizedesek között. Lépésenként prg végrehajtás be-, kikapcsolása. Hiba esetén DEBUG módba megy. Igen/nem Óra be-, kikapcsolása. A környezeti változók a programok, a futtatott környezet működését állítják be. 2 21. Tétel Műveletek adatállományokon : rendezés módjai, keresés, kapcsolatteremtés a táblák (relációk) között. Az egyik legösszetetteb SQL utasítás a SELECT utasítás. Rendezés, keresés : SELECT [ALL vagy DISTINCT] {* vagy <kifejesés-lista>} FROM <táblalista> [WHERE < feltétel >] [GROUP BY <oszloplista> [HAVING <feltétel>]] [UNION <select mondat>] [ORDER BY <oszlopnév1> vagy <oszlopszám1> [ASC/DESC] [,<oszlopnév2> vagy <oszlopszám2> [ASC/DESC] . ]] [SAVE TO TEMP <táblanév> [(<oszloplista>)] [KEEP]]; ALL/DISTINCT Legyenek-e duplikált sorok.DISTINCTre nem lesznekSELECT DISTINCT * FROM tábla; FROM A

résztvevő táblákat határozhatjuk meg. Pl: tábla oszlopainak kiíratása : SELECT * FROM tábla; SELECT oszlop1,oszlop2 FROM tábla; WHERE Feltételekkel kiválaszthatjuk az eredménytáblában megjelenő sorokat. Feltétel megadásának lehetőségei : BETWEEN : intervallum vizsgálat SELECT * FROM tábla WHERE fizetés BETWEEN 200 AND 4000; IN <lista> : halmaz vizsgálat SELECT * FROM tábla WHERE mhely IN("New York","Chicago"); LIKE : minta szerinti szűrés. egy karaktert helyettesít % több karaktert helyettesít. A minta lehet karakterkonstans, karakterváltozó, user dbase4-SQL kulcsszó. SELECT * FROM tábla WHERE vezetéknév like "Kov%"; Egyébb operátorok : =, < , > , <= , !< , !> , >= , NOT, AND, OR SELECT * FROM tábla WHERE (fizetés>12000) AND (jutalom<5000); Egyéb lehetőségek belső SELECTnél: ANY : a mezők kiírásra kerülnek, ha a feltétel akármelyik belső select által visszaadott

értékre teljesül. SELECT vezetéknév, keresztnév, jutalék FROM alkalmazottak WHERE jutalék < ANY (SELECT jutalék FROM alkalmazottak WHERE lakhely=Chicago); Kiírjuk azokat a dolgozókat, akiknek a jutaléka kevesebb, mint akármelyik chicagoi alkalmazotténál. ALL : a rekord akkor kerül kiírásra, ha a feltétel, az összes belső select által visszaadott értékre teljesül. SELECT vezetéknév, keresztnév, jutalék FROM alkalmazottak WHERE jutalék > ALL (SELECT jutalék FROM alkalmazottak WHERE lakhely=Chicago); 21.tétel Kiírjuk azokat a dolgozókat, akiknek a jutaléka nagyobb akármelyik chicagoi alkalmazotténál. GROUP BY UNION ORDER BY A megadott oszlopok szerint duplikált sorokat vonja össze. Csak rendezett oszlopokra működik. SELECT jutalom, fizetés FROM tábla GROUP BY jutalom HAVING fizetés>5000 ORDER BY jutalom ASC; HAVING Ugyanaz, mint a WHERE, de az összevont sorokra vonatkozik. Két vagy több tábla összevonása, összemásolása.

Az eredménytáblát a megadott oszlopok szerint rendezi. ASC növekvő, DESC csökkenő. Ha van a műveletnek megfelelő index, akkor gyorsabb a művelet Számított oszlopok nem rendezhetőek. SELECT * FROM tábla ORDER BY mhely ASC, vezetéknév ASC; SELECT * FROM tábla ORDER BY 1 ASC, 3 ASC; SAVE TO TEMP A SELECT-tel meghatározott táblát elmenthetjük ideiglenesen vagy véglegesen (KEEP) fájlba. Függvények a SELECT utasításban : COUNT( ) : kiválasztott sorok száma. SELECT COUNT(mhely) FROM tábla --Alkalmazottak száma SELECT COUNT(distinct mhely) FROM tábla --Különböző munkahelyek száma. SUM( ) : numerikus adatok összessége. MIN( ) : a megadott mező legkisebb értékével tér vissza. MAX( ) : a megadott mező legnagyobb értékével tér vissza. AVG( ) : a megadott numerikus adatok átlagát adja vissza. SELECT AVG(fizetés) FROM tábla; Számított oszlopok a SELECT utasítás segítségével : SELECT kódszám, név, " Éves fizetés :

",fizetés*1.2 FROM tábla; hatványozás : *, ^ Táblák összekapcsolása : 1, A táblákat, táblarészleteket "egymás alá" fűzzük. Ez csak akkor lehetséges, ha két tábla kompatibilis egymással, azaz ugyanolyan mezői vannak csak. Ilyenkor a SELECT utasítást a következően használjuk : SELECT mező1 FROM tábla1 UNION SELECT mező2 FROM tábla2 UNION SELECT mező3 FROM tábla3 ORDER BY 1 ASC; 2, A táblaákat, táblarészleteket "egymás mellé" fűzzük. Ilyenkor nem feltétlenül kell a tábláknak kompatibiliseknek lenniük. Ilyenkor a SELECT utasítást így használjuk : SELECT * FROM tábla1, tábla2; Ha a két táblából összetartozó adatokat akarunk kigyűjteni akkor, szükségünk van egy mezőre ami mindkét táblában azonos. Pl : Staff no 2 21.tétel Ha a táblákban azonos nevű oszlopok vannak akkor az oszlop elé oda kell írni a tábla nevét is, a kettőt ponttal elválasztva. PL : SELECT o rder no, st aff.staff no, sal

sales.staff no=staffstaff no; es.staff no, l 3, Tábla összekapcsolása önmagával : astname F ROM st aff, sales WHERE SELECT beoszt.vezetéknév, beosztkeresztnév, "Főnöke : ", főnökvezetéknév, FROM alkalmt beoszt, alkalmt főnök WHERE beoszt.főnökkód=főnökkódszám ORDER BY 1 ASC; 3