Tartalmi kivonat
Számítógépes alapismeretek Heti óraszáma: 2 (Bagoly Zsolt, Papp Gábor) + 1 (Barnaföldi Gergely) A tantárgy célja: korszerű információtechnológiai alapismeretek elsajátítása megismerkedés az informatikai alapfogalmakkal megismerkedés a személyi számítógép vázlatos felépítésével áttekintés a számítógépes hálózatok alapjairól alapszintű biztonsági, adatvédelmi és jogi kérdések A tananyag sikeres elvégzése segíti az ECDL követelmények teljesítését. írásbeli vizsga (legalább elégséges gyakorlati jegy követelmény!!!) Irodalom: ECDL 1-7 tankönyvek (Neumann János Számítógép-tudományi Társaság) Ajánlott: Papp Gábor és Bagoly Zsolt: Ablakok a hálózaton: az X11 rendszer Bagoly Zsolt és Papp Gábor: UNIX alapismeretek itl7.eltehu SZÁMLÁLÁS A MATEMATIKA ALAPJA Nézzük meg mi történik törzsvendégek esetén egy kocsmában. A pintek száma egy középkori kocsmában: Arató András Bornemissza Péter Cuczor Áron
Az események (itt fogyasztott pintek) számának leképzése rovással A pintek száma megint, de jobb lenne így: Arató András Bornemissza Péter Cuczor Áron Feltéve persze, hogy 5-ös vagy 10-es számrendszert használunk ABACUS SZÁMOLÓGÉP 8 2 1 0 0 0 PASCAL in 1642 Pascal, Blaise 1623-1662 Francia filozófus és matematikus. A tizes számrendszer jegyeit egy körtárcsa kerületére írva megoldja az átviteljegy (carry) automatizálását s ezzel a számlálás, valamint az erre alapuló összeadás illetve kivonás gépesítését. Blaise PASCAL 1 PASCAL KALKULÁTORA (1642) 0 1 9 0 1 9 2 2 2 3 3 3 0 Az „átvitel-jegy” automatikusan tovább vonul ! A kallantyúval számlálásra is alkalmazható 9 AZ ŐSLELET PASCAL KALKULÁTORA LEIBNITZ in 1692 Gottried Wilhelm von LEIBNI(T)Z 1646-1716 Német filozófus és matematikus. Pascal kalkulátorát továbbfejleszti, bevezetve az alapműveletek mindkét operandusa számára
egy-egy regisztert, melyek közül az egyik eltólható. Így megvalósíthatja a tizzel, majd ismételt összeadás ill. kivonás segítségével a tetszőleges számmal való szorzást ill. osztást is Gottfried Wilhelm LEIBNIZ LEIBNITZ KALKULÁTORA (1692) 1 0 1 9 0 9 1 2 2 2 3 3 3 0 9 A ( itt gyűlik és jelenik meg az eredmény ) A akkumulátor accumulator 9 0 1 9 0 1 9 0 1 2 2 2 3 3 3 B buffer regiszter ( nincs semmiféle fogaskerék ! ; eltolható ! ) ARITMETIKAI EGYSÉG A regiszter ( Akkumulátor ) 9 9 9 9 9 0 0 0 0 0 0 1 1 1 1 1 1 2 1 2 3 7 8 9 9 9 9 9 9 9 2 0 0 0 0 0 0 3 1 1 1 1 1 1 4 B regiszter ( Átmeneti tároló regiszter ) 4 5 6 ( A kerekek most élükkel állnak a két regiszterben ) FUNKCIÓ < CLEAR < ADD < SUB < MULT < DIV Charles Babbage Charles Babbage 1792- 1871 A polinómok táblázatolására kifejleszti és megépíti az u.n Differencia Gépet Ennek továbbfejlesztése képen az egymáshoz
kapcsolt hat összeadó helyett egyetlen kalkulátort (aritmetikai egységet) és sok tároló rekeszt tartalmazó MEMÓRIÁT javasol, melyből az adatok lyukkártyákon tárolt utasítások nyomán jutnak az aritmetikai egységbe ill. abból vissza a memóriába. Ez a mai COMPUTER őse Charles BABBAGE AZ ANALÍZIS MEGJELENÉSE Leibnitz és Newton kialakítják az infinitézimális számítást. Kialakul az analízis. Fel lehet írni differenciálegyenleteket Még a legegyszerübbeknek sincs zárt alakú megoldása: -x y’ + y = 0 megoldása y = e ; y nem számítható ki x-ből y’’ + y = 0 „ y = sin x ; cos x „ Ezeknek a függvényeknek az értékét táblázatok adják meg. Ezeket a táblázatokat meg kellett csinálni. (Logar- tábla) Babbage ezt a táblázatkészítést akarta automatizálni. TAYLOR SOR Babbage tudta, hogy minden tisztességes függvény hatványsorba fejthető: f(x) = f(0) + f’(0).x/1! + f’’(0)x^2/2! + Pl.: sin (x) = x - x^3/3! +
x^5/5! - x^7/7! + . DIFFERENCIA GÉP Babbage ugyancsak tudta, hogy egy n-ed rendű polinóm n-edik differenciája konstans Pl.: y = x^2 + 2x + 1 x 0 y 1 1 4 2 9 3 16 4 25 5 36 dy 3 5 7 9 11 1 d^2y ADD 3 2 ADD 2 2 2 2 1 4 4 9 9 16 3 3 5 5 7 7 2 2 2 2 2 2 BABBAGE’s DIFFERENCE ENGINE A MEMÓRIA MEGJELENÉSE Babbage megépített hat regiszteres differencia gépe maximum ötödfokú polinómok táblázatolását engedte meg. Bonyolultabb pl. trigonometrikus függvények megközelítéséhez nem elégséges egy ötödfokú hatványsor. 10, 20, 50 vagy tetszőleges n-ed fokú polinómokra lehet szükség. Ez ugyanennyi bonyolult fogaskerekes összeadómű megépítését tenné szükségessé. És itt jött Babbage korszaknyitó ötlete: Használjunk csak egyetlenegy -- felépítésében a szűkséges fogaskerékrendszer miatt bonyolult -- összeadóművet, vagy általában aritmetikai egységet, s n darab közönséges
keréktárcsákból álló tároló regisztert. Ez lesz a MEMÓRIA Meg kell oldani, hogy a kezdő és átmeneti értékeket tároló memóriaregiszterek tartalma -- valamilyen módon megvalósítandó adatátvitel révén -cserélhető legyen az aritmetikai egység A és B regisztereinek tartalmával. Az adatátvitelek sorrendjét egy lyukkártyán tárolt program alapján működő vezérlőmű vezérelné. És ez lett a később megtáltosodó gondolatok magja ANALYTICAL ENGINE ADAT BUS BABBAGE ~1840 ADAT BUS LYUKKÁRTYA Y= DY = D2Y = 1 3 2 VÉGREHAJTÓ KERÉK 0 1 2 3 4 I. I. II. KLAVIATÚRA MEMÓRIA IN OUT IN OUT PRINTER A STORE CLEAR II. ADD LOAD ADAT BUS ADAT BUS ALU B GÉPI és ASSEMBLY KÓD KÓD LD 0 1 2 3 4 5 6 7 8 9 10 11 12 AD CL ST CÍM PR RD 3 2 1 0 CLR A LOAD B, (0) ADD A, B LOAD B, (1) ADD A, B STR (0), A OUT (P), A CLR A ADD A, B LOAD B, (2) ADD A, B STR (1), A LOAD B, (0) LYUKKÁRTYA 0 1 2 3 . . . READ PRINT STORE CLEAR ADD LOAD
KETTES SZÁMRENDSZER A tizes számrendszerben működő aritmetikai egység és az ugyancsak tizes számrendszerű memóriarekeszek közötti ADATÁTVITEL nem volt megvalósítható a kor technológiai szinvonalán Babbage minden erőfeszítései ellenére sem. A minimális számjegyű, csak két számjegyet tartalmazó kerekek felvetése villantott fel a megoldható adatátvitelre némi reményt, de csak 100 év késéssel és kerekek nélkül. REGISZTEREK DECIMÁLIS (TIZES) 0 1 2 3 4 5 8 9 0 1 2 3 BINÁRIS (KETTES) 0 1 0 1 HA BINÁRIS, ÚGY DOMINÓKBÓL IS LEHETNE 0 1 0 1 0 BINÁRIS REGISZTER 0 1 0 KAPCSOLÓ REGISZTER +5V TEST vagy FÖLD LED 1 MEMÓRIA ’FLIP - FLOP’-OKBÓL +5V FLIP - FLOP 0 1 2 ÍRHATÓ - OLVASHATÓ REGISZTEREK Két értéket (bináris jegyet, bitet) tároló (elektromosan írható és olvasható) eszközt először relékkel, majd elektronikusan, úgy nevezett FLIP-FLOP-okkal tudtak megvalósítani. A kerekek alkalmazása
helyett ezekkel a működési sebesség jelentősen megugorhatott. 1944-46 között NEUMANN János elemezte, hogy ilyen ígéretes sebességek mellett milyen kell legyen egy számítógép méltó architektúrája. Megszületett a tárolt programmozású COMPUTER gondolata. A több száz millió PC is ‘von Neumann computer’. NEUMANN János Budapest 1903 - Princeton (USA) 1957 Von NEUMANN COMPUTER NEUMANN ~1944 MEMÓRIA 0. Utasitás 1. „ 2. „ 3. „ PROCESSZOR PC RA CÍM BUS A MUX AND OR XOR CLR ADD SUB SHR SHL UTASÍTÁSOK ADATOK KLAVIATÚRA PRINTER Y= DY = D^2Y = 1 3 2 IN OUT IR ALU B ID CONTROL UNIT ADAT BUS CLOCK A MIKROPROCESSZOR Az Aritmetikai és Logikai, valamint a Vezérlő Egység közös neve: PROCESSZOR. A hetvenes években sikerült a számítógép processzorát egy körömnyi nagyságú szilicium-lapka felületén létrehozni. Ekkortól beszélünk MIKROPROCESSZOR-ról. Ma ezek már több millió tranzisztort tartalmaznak és évi több
tiz-milliós szériákban készülnek. PENTIUM II (7.5 millió tranzisztor) MIKROSZÁMÍTÓGÉPEK Amint idővel tekintélyesebb (>kByte) mennyiségű memóriát is sikerült a processzor mellett egy chipen megvalósítani, úgy megszülettek az egy chipes MICROCOMPUTER-ek. Ezek ma már évi milliárdos szériákban készülnek. Egy népszerű MIKROSZÁMÍTÓGÉP Ára: 880 Ft PIC 16 F 84 8 bites RISC processzor 1 K * 14 bit FLASH Program Memória 68 byte Adat RAM 64 byte Adat EEPROM 13 I/O PIN RA1 Hitelkártyába épített változata: ÚJRA PROGRAMOZHATÓ! CLKIN CLKOUT RA0 OSC1 OSC2 +5V RB7 RB6 RB5 RB4 PIC 16 F 84 ~ 3 x 3 mm RA2 RA3 2500 Ft T0CKI RA4 MCLR GND INT RB0 RB1 RB2 RB3 A LOGIKA KIMŰVELŐI Az ENCARTA encyclopedia -ban megnézzük az: - ARISTOTLE - BOOLE - SHANNON cimszavakat BOOLE ALGEBRA 1 A három fundamentális logikai kapura a következő posztulátumok érvényesek: NOT 0’=1; 1’=0; 0.0=0; 0+0=0; 0.1=0; 0+1=1; Ha
nem 0, úgy 1 kell legyen -- és fordítva. AND OR 1.0=0; 1+0=1; 1.1=1 1+1=1 BOOLE ALGEBRA 2 Boole kifejezések egyszerűsítéséhez az (előbbi posztulátumok alapján bizonyítható) alábbi összefüggések használhatók: EGY és ZÉRUS szabály Kommutativitás Asszociativitás Disztributivitás Idempotencia Komplementaritás Abszorpció Involució Inverzió (de Morgan) 0+A=A; 0.A=0; 1+A=1; 1A=A A+B=B+A; AB=BA A+(B+C)=(A+B)+C; A(BC)=(AB)C A+BC=(A+B)(A+C); A(B+C)=AB+AC A+A=A; A.A=A A+A’=1; A.A’=0 A+AB=A; A(A+B)=A; A+A’B=A+B (A’)’=A (A+B)’=A’.B’; (AB)’=A’+B’ BOOLE ALGEBRA 3 Egy példa Boole kifejezések egyszerűsítésére az elöbbi relációkkal: F = A + ABC + BCA’ + A’B + DA + D’A = A + BC(A + A’) +A’B + A(D + D’) = A + BC + A’B +A = A + BC + A’B = (A + A’B) + BC = A + B + BC = A + (B + BC) =A+B disztribúció komplementaritás idempotencia asszociativitás abszorpció asszociativitás abszorpció
AUTOMATA FORMALIZMUS Egy véges automata egy (A, S, V, k, f, g) hatos rendszer ahol: A egy véges elemszámú ábécé, amelynek szimbólumai képezik az automata bemeneteit; S az automata lehetséges állapotainak halmaza; V az automata egyes állapotaiban válaszként adható szimbólumok halmaza; k az automata kezdô állapota, k ∈ S; g az a leképzés, amellyel az S halmazt a V halmazra képezi le az automata, v = g ( s ) , v ∈ V és s ∈ S; f az a leképzés, amellyel az A és S halmazok szorzatát az S halmazra képezi le az automata, q = f ( s , a ) , a ∈ A, s ∈ S, q ∈ S. AZ AUTOMATA MŰKÖDÉSE Adott x A esetén az automata mûködése a következôképen írható le: Legyen x = x1 , x 2 . xn, és a válaszszöveg y = y1 , y 2 . yn Jelölje az automata mindenkori állapotát s i, i = 1, 2, . n 1. 2. 3. 4. 5. 6. i ← 1, si ← k, yi ← g ( s i ) Moore, if g ( s i , x i ) then Mealy, si+1 ← f ( si , x i ) , i ← i + 1, ha i ≤ n, ismételjük a
feladatot a 3. ponttól A LOGIKA ELEMEI A logikai változók lehetséges értékei: 0, 1 Ezeket 0 V illetve +5 V feszültségszinttel fogjuk reprezentálni Egyváltozós logikai művelet a NEGÁLÁS: Y = A’ Y A Kétváltozós logikai művelet az ÉS és VAGY: Y = A+B Y = A.B A B A 1 2 3 Y A B 1 A 3 2 Y LOGIKAI KAPUK ENGEDÉLYEZÉS és NEGÁLÁS De MORGAN SZABÁLY INVERTER ÉS KAPU VAGY KAPU De MORGAN SZABÁLY KOMBINÁCIÓS HÁLÓZATOK 2 INVERTER = MEMORIA ? Q ? Q DATA BUS 0 ? ? Q ? Q ? 0 Q 1 Q 0 1 0 0 DATA BUS 1 DATA BUS 1 Q 0 Q 1 0 Q 1 Q 0 DATA BUS 0 1 0 0 1 1 DATA BUS Q Q 1 Q 1 0/1 0 DATA BUS Q 1 0 DATA BUS 1 Q 0 Q 1 DATA BUS 1/0 ARITMETIKAI-LOGIKAI EGYSÉG i CLA CMA AND IOR RAL RAR ADD 000 001 010 011 100 101 110 ÖSSZEADÓ A+B Teljesösszeadó B A S’ C’ Félösszeadó: + 0 0 1 1 0 1 0 1 0 1 1 0 0 0 0 1 ELEKTRONIKUS VERKLI ROM DECODER 0 1
1 0 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 0 0 1 1 1 1 0 0 1 0 1 0 1 0 A0 2 3 A1 4 A2 ADR COUNTER DATA BUS pl. zongora billentyűkhöz FLEXIBILISEBB VERKLI ROM DECODER NEXT ADDRESS 0 1 2 0 A0 3 1 A1 4 0 A2 5 DATA 0 0 1 1 1 0 0 1 0 1 0 0 1 0 0 1 0 1 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 0 1 1 0 0 1 0 1 0 ADR LATCH 1 3 0 1 0 1 DATA BUS 0 0 1 MÉG FLEXIBILISEBB VERKLI ROM Even = 0 Odd = 1 DECODER NEXT ADDRESS 0 0 1 A0 0 A1 0 A2 A0 1 A1 A2 A3 2 3 DATA 0 0 0 1 1 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 2 0 1 0 1 0 1 0 1 0 0 1 3 0 0 1 1 1 0 0 1 0 1 0 4 0 1 1 0 1 0 0 1 0 0 0 5 0 0 0 0 0 0 1 0 1 1 0 6 ADR a a. 3 2a 2a+1 1 0 1 0 1 DATA BUS 0 0 1 ASM Algorithmic State Machine ASM és FOLYAMATÁBRA 0 MUX 000 0 1 010 010 0 1 011 011 0 1 100 100 0 1 101 101 0 1 100 001 RDY IRQ 0 1 5 7 A0 SR0 A1
SR1 A2 SR2 A3 001 000 100100001 001000001 100100001 T1 001 001000001 010 T2 011 100 T3 101 110 110 0 1 111 111 0 1 000 Y N 110 T4 111 I N T N Y INT Von NEUMANN COMPUTER NEUMANN ~1944 MEMÓRIA 0. Utasitás 1. „ 2. „ 3. „ PROCESSZOR PC RA CÍM BUS A MUX AND OR XOR CLR ADD SUB SHR SHL UTASÍTÁSOK ADATOK KLAVIATÚRA PRINTER Y= DY = D^2Y = 1 3 2 IN OUT IR ALU B ID CONTROL UNIT ADAT BUS CLOCK INPUT - OUTPUT UTASÍTÁSOK ASSEMBLY Language MOV DX, IN AL, MOV MOV OUT DX, AL, DX, 300H DX ;Move Port Address into DX ;Input from Port into AX 300H 55H AL ;Move Port Address into DX ;Move DATA (55H) into AL ;Output DATA to Port BASIC PA = &H300 DATA = INP ( PA ) OUT PA, DATA ;Port Address Assignment ;Input from Port PA into DATA ;Output DATA to Port PA PA := $300; DATA := PORT [PA]; PORT [PA] := $55; {Port Address assignment} {Input from Port into DATA} {Output DATA to Port PA} pa = 0x300; indata = inportb (pa); outportb
(pa,outdata0; /*Port Address assignment/ /*Input from Port into indata/ /*Ouput outdata to Port pa/ PASCAL C ADAT, CÍM és CONTROL BUS DATA D0 D1 M E M O R Y D15 ADDRESS A0 A1 A15 CONTROL RD’ WR’ MEM’ I/O’ INT BUS BUS CONNECTORS for I / O interfaces Interfészek: KEYBOARD DISPLAY DISK PRINTER Ezeket nekünk kell csinálni SERIAL SPECIAL P R O C E S S O R I/O CIKLUS IDŐDIAGRAMMJA T1 CLK AEN OUT INP DATA IOW DATA IOR T2 T3 T4 DMA (DIRECT MEMORY ACCESS) D0 D1 M E M O R Y DMA I/O DATA D15 ADDRESS A0 A1 A15 CONTROL RD’ WR’ MEM’ I/O’ INT DMA MEM ADR COUNTER I / O ADR P R O C E S S O R DATA DMA CONTROLLER