Műveletek. Dr. Seebauer Márta. Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Műveletek. Dr. Seebauer Márta. Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár"

Átírás

1 Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Műveletek Dr. Seebauer Márta főiskolai tanár

2 Az adatmanipulációs fa A adatmanipulációs fa következő szintje minden művelet esetén megállapítja, hogy mely utasítás-típusok megengedettek mely operandus-típus választható. A számítógépet a program működteti. A processzor csak a gépi kódú programokat képes értelmezni. Utasítás - a számítógép által végrehajtható, alapvető feladatok ellátására szolgáló művelet leírása. módosító rész Data types (T) Adattípusok Operations (O) Mûveletek Operand-types (R) Utasítás-típusok Addressing modes(a) Címzési módok DMT FP * /.. rrr rmr mmm.. ((R)+D) ((PC)+D) ((RI)+D) ((PC)+D).. Opkód Címrész Codes (C) Kódok IOOIIOO műveleti kód operandusok helye A változó, gyakran igen hosszú utasítások a CISC processzorokra jellemzőek. A RISC processzorok utasításai rögzített hosszúságúak és rövidek.

3 Megszakítások és kivételkezelés A programvégrehajtás időszakosan felfüggeszthető megszakítások (interrupt) esetén, a processzortól független külső esemény idézi elő DMA megszakításkérés BIOS rutin meghívása kivétel (exeption) esetén, processzoron belül fellépő esemény okozza paritáshiba osztási hiba túlcsordulás Megszakítás? nem igen Lehívási ciklus (fetch) Megszakítási műveletsorozat Végrehajtási ciklus (execution)

4 Programvégrehajtás folyamata utasítás fetch a következő 6 cím számítása dekódolás művelet végrehajtás (execution) 4 az operandus effektív címének meghatározása operandus fetch MAR MDR IR PC DEC Memory Address Register Memory Data Register Instruction Register Program Register Decoder 1. A soron következő utasítás beolvasása a memóriából az utasításregiszterbe. A programszámláló beállítása a következő utasítás címére. 2. A beolvasott utasítás dekódolása, típusának meghatározása. 3. Ha az utasítás memóriabeli szót használ, a szó helyének a megállapítása. 4. Ha szükséges, a szó beolvasása egy regiszterbe. 5. Az utasítás végrehajtása. Az eredmény visszaírása a kijelölt helyre. 6. Vezérlésátadó utasítás esetén a következő cím kiszámítása RAM Operatív tár PC MAR IR MDR CPU Központi egység DEC Általános célú regiszterek AC. CU Vezérlő egység AC ALU Számolómű OUT IN

5 Utasítás-végrehajtás lépései Utasításlehívás (fetch) PC tartalmazza a soron következő utasítás címét PC MAR (MAR) MDR MDR IR PC+1 PC Feltétlen vezérlésátadás, JMP IR DEC DEC címrész PC Utasításfeldolgozás LOAD IR DEC DEC címrész MAR (MAR) MDR MDR AC Műveletvégzés, pl. ADD IR DEC DEC MAR (MAR) MDR AC+MDR AC STORE IR DEC DEC címrész MAR AC MDR MDR (MAR)

6 Utasítástípusok Utasítások Adatmozgató Műveleti Vezérlésátadó Speciális

7 Adatmozgató utasítások Adatmozgató Processzor-memória Processzor-veremtár Processzor-periféria I/O Töltő LOAD Betöltés a sztekbe PUSH Programozott átvitel Tároló STORE Kivétel a sztekből POP Megszakításos átvitel Mozgató MOVE Közvetlen memória-elérés DMA

8 I/O műveletek Ha a műveleti kód beviteli vagy kiviteli műveletet határoz meg, akkor az utasítás lehívását követő memória-hozzáférés elmarad. Az elemi műveletek: Beviteli utasítás IR DEC a művelet dekódolása DEC MAR a címrész átvitele IN AC a bemeneti regiszter tartalmának átvitele az akkumulátorba Visszatérés az utasítás-lehívó ciklushoz. Kiviteli utasítás IR DEC a művelet dekódolása DEC MAR a címrész átvitele AC OUT az akkumulátor tartalmának átvitele a kimeneti regiszterbe Visszatérés az utasítás-lehívó ciklushoz.

9 Műveletvégző utasítások Művelet Aritmetikai Logikai Léptető/forgató Bit Karakterlánc String Összeadás ADD AND Léptetés SHIFT Kivonás SUBTRACT OR Forgatás ROTATE Szorzás MULTIPLY NOT Osztás DIVIDE EXLUSIVE-OR Abszolút érték ABSOLUTE EQUIVALENCE Előjelváltás NEGATE 1-gyel növelni INCREMENT 1-gyel csökkenteni DECREMENT

10 Vezérlésátadó utasítások Vezérlő Szubrutin hívó Visszatérés Ciklus Ugrások CALL RETURN Feltételes Feltétel nélküli JUMP JUMP CONDITIONAL

11 Feltételes ugrás utasítás A feltételes ugrások csak akkor hajtódnak végre, ha a megadott feltétel igaz. Meg kell vizsgálni a megadott feltételt, pl. az A regiszter tartalmát, ha az nulla, akkor az utasítás címrésze átkerül a PC regiszterbe, tehát ugrást hajt végre. ha az A regiszter tartalma nem nulla, akkor a soron következõ utasításra tér át. Az ugrás lehet feltétel bit értékétől függő is. Ezen ugrások előtt be kell állítani a feltételbiteket. Ezt vagy aritmetikai, de szívesebben összehasonlító utasítással állítják be. Példa SUB op1,op2 helyett inkább: CMP op1,op2

12 Szubrutinok CPU PC CALL PC régi STACK (verem) Return hatására a veremből a PC régi bekerül a PC-be és a CALL utáni utasításra adja át a vezérlést RETURN stack-pointer Az IBM PC-kben a stack-szegmens verem 64 Kbájt, efölött túlcsordulás következik be

13 Speciális vezérlő utasítások Speciális Megszakítást engedélyező/tiltó Processzor működését leállító Flag-manipuláló Koprocesszor vezérlő SET CONTROL VARIABLES Program leállítása HALT Feltétel ellenőrzése és a flag-ek beállítása TEST Program végrehajtásának felfüggesztése egy feltétel teljesüléséig WAIT Operandusok összehasonlítása és a flag-ek beállítása COMPARE Üres utasítás NOP Flag-ek törlése CLEAR

14 Utasításszerkezet négycímes háromcímes kétcímes egycímes nulla címes Opkód műveleti kód módosító rész Címrész operandusok helye

15 Négycímes utasítás Opkód 1. operandus címe 2. operandus címe Eredmény címe Következő utasítás címe Ez már csak történeti kategória: az első gépek tervezése során a negyedik cím a következő utasítás címét adta meg. Így működött például az EDVAC. Ritka kivételtől eltekintve az utasításokat lineárisan is lehet tárolni a memóriában, tehát úgy, hogy a következő utasítás a következő címen szerepeljen. A vezérlést úgy lehet megtervezni, hogy az n-ik cím alatt található utasítás végrehajtása után az (n+1)-edik című utasításra térjen át, kivételt képez a vezérlésátadó utasítás, amelyik megadja a következő utasítás címét. A negyedik operandus helyett vezették be a PC-regisztert Neumann a Felsőfokú Tanulmányok Intézetének gépét, az IAS-t már egycímesre tervezte. Hátránya hosszú utasítások - memória-pazarló adatrögzítési hibák veszélye karbantartás, azaz új utasítások beszúrásának nehézkessége Opkód PC bevezetése Cim Köv. utasítás

16 Háromcímes utasítás Opkód 1. operandus címe 2. operandus címe Eredmény címe Az AC bevezetése, vagy az eredmény a 2. operandus helyére kerül Ez egy explicit deklarálása annak, hova kerüljön az eredmény. A háromcímes utasítástípussal szembeni fő Neumann-i érv, hogy szinte soha nincs szükség arra, hogy két, a memóriában elhelyezkedő számot összeadjunk - vagy valamilyen más műveletet végezzünk közöttük, majd az eredményt visszaírjuk a memóriába. Általában az a helyzet, hogy a gép által kiszámított eredmény az aritmetikai egységben marad, mert további műveletet kell rajta végezni. Még ennek a műveletnek az eredménye is gyakran az aritmetikai egységben marad további műveletek végrehajtása céljából. További hátránya: hosszú az utasítás, sok memóriát igényel Előnye: párhuzamosítási lehetőség: RISC

17 Kétcímes utasítás Opkód 1. operandus címe 2. operandus és az eredmény címe AC bevezetése szükséges Az célrekesz előző tartalma elvész. Az eredmény helyének implicit deklarálása. Ilyen típusok: IBM 360/370 (rendelkeznek egy és háromcímű utasításokkal is) Előnye: rövidebb Hátránya: azt az operandust, ahova az eredmény kerül felülírja. Szükség esetén gondoskodni kell a kimentéséről

18 Egycímes utasítás Opkód Az operandus címe Veremtároló bevezetése A művelet mindig a megcímzett tároló hely és az akkumulátor között kerül végrehajtásra. Egy aritmetikai művelet (pl. összeadás) elvégzéséhez három utasításra van szükség. 1. egyik operandust át kell vinni az egyik címről az aritmetika egységbe (akkumulátorba); 2. el kell hozni a másik operandust egy másik címrõl és hozzáadni ahhoz, amelyik már az aritmetikai egységben (akkumulátorban) volt; 3. az eredményt egy harmadik címen el kellett tárolni. A korai gépek közül ilyen volt az EDSAC, Ferranti Mark 1, Whirlwind I, Univac I, IBM 701, IBM 704. Ilyen még a hatvanas évekből pl. IBM 1130, 1800, System/7, Siemens 300. Előnye: rövid, egyszerű utasítás - memória-takarékos, RISC gépek Hátránya: több utasítással valósítható csak meg egy olyan művelet, amely kétcímesnél eggyel is megoldható

19 Nulla címes utasítás Opkód A műveleti kód után nem áll operatív tár cím, ezért veremtároló használatára van szükség. Egy operandust implicit operandusnak nevezünk, ha az utasítás maga egyértelműen meghatározza. A programozónak az utasítással kapcsolatosan nem kell specifikálnia semmit. Előnye: rövid utasítások, hiszen nincsen címrész Hátránya: igen speciálisak, tehát felduzzaszthatják az utasítás-készletet Például NOP (no operation) CLEARD (a D flag törlése: az implicit operandus a D flag) PUSH, POP CALL, RET (a veremtároló tartalma ezen utasítások implicit operandusa)

20 Művelet LOAD A MULTIPLY B STORE T LOAD C MULTIPLY C ADD T STORE X Egycímes gép Comment A betöltése AC-be AC ACxB AC tartalmának eltárolása T címre C betöltése AC-be AC ACxC AC AC+T AC tartalmának eltárolása T címre Példa X=AxB+CxC Háromcímes gép Művelet Comment MULTIPLY T,A,B T AxB MULTIPLY X,C,C X CxC ADD X,X,T X X+T Nullacímes gép Kétcímes gép Művelet Comment MOVE T,A T A MULTIPLY T,B T TxB MOVE X,C X C MULTIPLY X, C X XxC ADD X,T X X+T Művelet PUSH A PUSH B MULTIPLY PUSH C PUSH C MULTIPLY ADD POP X Comment A betöltése a stack-be B betöltése a stack-be A és B kivétele a stack-ből és AxB betöltése a stack-be C betöltése a stack-be C ismételt betöltése a stack-be C és C kivétele a stack-ből és CxC betöltése a stack-be CxC és AxB kivétele a stackből és összegük betöltése a stack-be Stack tetejének eltárolása X címre

21 Processzorok utasításszerkezete Jelenleg CISC processzorok többsége egy-, illetve a kétcímes utasítástípust használ. A RISC architektúrák - mivel regiszter-architektúrák - ezért előnyben részesítik a három címes formátumot, hogy kiküszöböljék a rendeltetési címre vonatkozó korlátozásokat. Ortogonális utasításkészlet egyértelmű utasításkészlet, az egyes részek feldolgozása mindig ugyanúgy történik. A címek kidolgozásának módja minden utasításnál azonos, nem függ a műveleti kódtól.

22 Operandus típusok Természetesen az ideális megoldás a felhasználó szempontjából az lenne, ha az operandusként tetszőleges adatteret megadhatna. Általános esetben a következő lehetőségek állnak rendelkezésre, mint lehetséges operandus helyek: akkumulátor, gyors, de csak egy van belőle, ami szűk keresztmetszetet okoz az operatív tár tág lehetőségek, hiszen hatalmas, de nagyon lassú az általános célú regiszterkészlet bármelyike, gyors, de korlátozott a száma, mert drága a verem-tároló, gyors, csak a tetejét látjuk, szűk keresztmetszet literálok vagy immediate, gyors, hiszen az utasításban helyezkedik el, merev, csak a programmódosítással változtatható A továbbiakban meg kell határoznunk az operandus típusát. Az operandusokat akkor tartjuk ugyanazon típusúnak, ha ugyanazon adattérből vettük őket, vagy ugyanabba az adattérbe tesszük. Tehát a lehetséges operandusok halmaza az akkumulátor operandus az operatív tár operandus regiszter operandus verem-tároló operandus immediate operandus.

23 Utasítástípusok a tervezési térben 3-address instruction type for dyadic operations specification specification specification of op d of op s1 of ops2 a m r s i a m r s i a m r s i A 3-címes diadikus műveletek lehetséges kombinációit kifejezhetjük a következőképpen is: { a, m, r, s} x { a, m, r, s, i} x { a, m, r, s, i} Tehát az absztrakt architektúrának kell specifikálnia - minden művelet vonatkozásában, hogy mely utasítás típusok lehetségesek és - minden operandus vonatkozásában, hogy mely operandus típusok lehetségesek. Felhasználói szemmel nézve az lenne az ideális, ha valamennyi lehetséges változat biztosított lenne. Viszont ez az általánosítás sem a helyfoglalás (túl nagy kódteret igényelne), sem pedig a hatékonyság szempontjából nem előnyös.

24 Architektúrák osztályozása az operandus típusok szerint Architektúra Szabályos Vegyes IBM 360/370, Intel Akkumulátor Memória Regiszter Stack Akku-regiszter Akku-memória 2 címes 3 címes 2 címes 3 címes ara aar ama aam m 1 m 1 m 2 m 2 m 1 m 2 m 3 m 1 m 2 r 1 r 1 r 2 r 2 r 1 r 2 r 3 r 1 r 2

25 Szabályos architektúrák Van néhány architekturális stílus, amely figyelmet érdemel, ezeket szabályos architektúráknak nevezzük. Bizonyos architektúrák ugyanazt az operandus típust biztosítják valamennyi adatmanipuláció esetén (rrr vagy sss), kivéve természetesen a LOAD és a STORE utasítást. A szabályos architektúrákat széles körben használják. A támogatott utasítás-típusnak megfelelően külön nevük van, mint például a Regiszter, vagy más néven LOAD/STORE, és a Stack architektúrák. architecture type accumulator-based architecture register-architecture (load-store-architecture) memory-architecture stack-architecture instruction type of the data-manipulation instructions aam, ama r r r mmm s s s 2-address format (RT/ PC) 3-address format (SPARC, 88000) 2-address format (TMS9900) 3-address format (B5000, HP 3000)

26 Címzési módszerek Egy processzor az utasításkészlete állhat fix vagy változó hosszúságú utasításokból. Az utasítás bitjeinek nagyobb részét nem a műveleti kód, hanem az operandusok címe foglalja el. Pl. A műveleti kód számára 256 utasításból álló utasításkészlet esetén 8 bit elegendő, de ha a memóriacímek 32 bitesek, egy három címes utasításhoz elvileg 104 bitre lenne szükség. a többször használt adatot regiszterbe töltjük, így egyetlen LOAD utasítással a memóriából áttölthető. A regiszterek használata kettős előnnyel jár: rövidebben címezhetőek és lényegesen gyorsabbak az operandus specifikációjának csökkentése 2, 1 vagy 0 címes utasítások használata relatív címek alkalmazása. Előny: abszolút címzésnél a címet a fordításkor már ismerni kell. Opkód Opkód 1. cím Opkód Opkód 1. cím 2. cím 1. cím 2. cím 3. cím

27 Közvetlen címzés Az operandust közvetlenül az utasításban adjuk meg. Hátránya csak konstans érték adható meg korlátozott a felhasználható bitek száma Pl. MOV R1 4

28 Direkt címzés A memóriabeli operandus megadása a teljes címével. Az utasítás mindenkori végrehajtása ugyanazt a memóriamezőt érinti, tehát a változó értéke módosulhat, de a helye nem. Jellemzően olyan globális változók esetében használják, amelyeknek a címe fordításkor ismert.

29 Regisztercímzés Amíg a direkt címzés a memóriahelyet címez, addig a regisztercímzés a regiszter címére mutat. A fordítóprogramok elemzik a forráskódot, és a gyakran használt változókat regiszterekben helyezik el. Gyakran használt címzési mód. A LOAD/STORE architektúrák kizárólag ezt a címzési módot alkalmazzák.

30 Regiszter-indirekt címzés A specifikált operandus címét egy regiszter tartalmazza, amelynek a címét definiáljuk az utasításban. Ezt a címet mutatónak (pointernek) hívjuk. Előnye nem kell a memóriacímet az utasításban tárolni a cím értéke a program végrehajtása során változhat Példa A egydimenziós 1024 elemű tömb elemei összegének kiszámítása. Az elemek 4 bájtos egész számok #0 konstans 0 #A Az A tömb memóriacíme regisztercímzés LOOP: közvetlen címzés MOV R1, #0 MOV R2, #A MOV R3, #A+4096 ADD R1,(R2) ADD R2, #4 CMP R2, R3 BLT LOOP A ciklusmag utasításai nem tartalmaznak memóriacímet regiszter-indirekt címzés

31 Indexcímzés A hivatkozott memória címét egy regiszter tartalmának és egy konstans értéknek az összege határozza meg. Ezt eltolásnak (offset) nevezzük, amely az utasításban memóriacím hosszúságú mezőt foglal. MOV R4, A(R2) Példa Adott A és B 1024 elemű egydimenziós tömbök. Keressük, létezik-e legalább egy olyan A i /B i pár, amelynek egyike sem 0. Ehhez kiszámítjuk páronként A AND B logikai szorzatot, amelyeknek képezzük OR művelettel az akkumulált összegét. MOV R4 R A(R2) LOOP: MOV R1, #0 MOV R2, #0 MOV R3, #4096 MOV R4, A(R2) AND R4, B(R2) OR R1, R4 ADD R2, #4 CMP R2, R3 BLT LOOP

32 Bázisindex címzési mód A hivatkozott memóriacím két regiszter tartalmának összegéből és egy esetleges eltolásból összegéből áll. Az egyik regiszter a bázis, a másik az index. Ezt a címzési módot alkalmazó gépek a gyakorlatban 8 és 16 bites eltolást biztosítanak. Példa LOOP: MOV R1, #0 MOV R2, #0 MOV R3, #4096 MOV R5, #A MOV R6, #B MOV R4, (R2+R5) AND R4, (R2+R6) OR R1, R4 ADD R2, #4 CMP R2, R3 BLT LOOP

33 Veremcímzési mód Fordított lengyel jelölés A változók sorrendje az infix és a prefix jelölésben megegyezik, a műveleti jelek sorrendje azonban nem azonos. A fordított lengyel jelölésben a műveletek sorrendje megegyezik a kifejezés kiértékelésekor azok végrehajtási sorrendjével.

34 Címzési módok elágazó utasításokban Címekre nemcsak az adatokon végzett műveleteknél van szükség. Az elágazó vagy eljáráshívó utasítások szintén igényelnek olyan címzési módot, amellyel az ugrási cím megadható. direkt címzés a célcímet teljes egészében közvetlenül az utasításban adjuk meg regiszter-indirekt címzés az ugrási címet kiszámítjuk, és egy regiszterben tároljuk, amely címére vonatkozva hajtjuk végre az ugrást. Hatékony módszer, de hiba esetén nehezen deríthető fel. indexmód a célcím egy regiszter tartalmához viszonyított eltolási érték PC-relatív címzés az eltolási érték hozzáadódik az utasításszámláló aktuális értékéhez. Ez egyszerű index címzés, ahol a PC egy regiszternek számít.

35 Műveleti kód és a címzési mód ortogonalitása Ideális eset, amely a fordítóprogram számára biztosítja a jó minőségű kód előállítását az utasítások és a címzési módok szabályos szerkezete minimális számú utasításformátum minden műveleti kód megenged minden értelmes címzési módot minden regiszter elérhető minden regiszter módban (beleértve ez FP veremkeret mutatót, SP veremmutatót, PC utasításszámlálót) Ideális három címes fix hosszúságú utasításkészlet Opkód Cél Forrás1 0 Forrás2 8 aritmetikai-logikai utasítások Opkód Opkód 1 Cél Forrás1 Eltolás Eltolás közvetlen címzés LOAD/STORE utasítások index módba elágazás, eljáráshívás LOAD/STORE utasítások közvetlen címzéssel

36 Kétcímes gép változó utasítás hosszúsággal mindkét operandus lehet memóriaszó műveletek regiszter-memóriaszó memóriaszó-regiszter regiszter-regiszter memóriaszó-memóriaszó rendkívül költséges a memória hozzáférés miatt egyszerű és átlátható fordítás Opkód Mód Reg Eltolás Mód Reg Eltolás Feltételes 32 bites direkt cím vagy eltolás Feltételes 32 bites direkt cím vagy eltolás Címzési módok (Mód=3 bit) - közvetlen - direkt - regiszter - regiszter-indirekt - index - veremcímzés - 2 további

37 Utasításkészlet Egy processzor utasításkészlete azoknak az elemi utasításoknak az összessége, amelynek végrehajtására a legalsó, hardver szinten a processzor alkalmas. A legalsó szint azt jelenti, hogy az utasítás végrehajtása vagy huzalozott módon, áramköri szinten valósul meg, vagy az elemi lépéseket vezérlő mikroprogram segítségével. Az utasításkészlet jellemzése a rendelkezésre álló elemi utasítások száma és tartalma az utasításokkal kezelhető feltételek száma az utasítások jellemzőinek következetes használati lehetősége, a kivételek minimális száma az utasításkészlet kialakítása mennyire nyújt hatékony támogatást a programíráshoz a programok fordításához az ellenőrizhetőséghez

38 Számítógépes műveletek végrehajtásának HW/SW aránya 100% Hardver Szoftver 10% ?

39 IBM/ CPU belső architektúrája és utasításszerkezete RR utasítás Opkód R1 R2 16db 32 bites általános regiszter 4db 64 bites lebegő pontos regiszter RX utasítás Opkód R1 X2 RS utasítás B2 D Opkód R1 R3 B2 D2 Fix pontos ALU Decimális ALU Lebegőpontos ALU SI utasítás 0 Opkód 8 I B1 D1 Belső busz SS utasítás MAR IR PC MDR Opkód L B1 D1 B2 D2 Állapotszó Memória CU Operatív tár jelei R - általános célú regiszter X - index regiszter B - bázis regiszter D - cím eltolás L -operandus hossza I - immediate operandus

40 Intel processzorok utasításszerkezete i8086/88 i i80386/486 Pentium PREFIX - Módosító bájt 0xFF menekülő kód a második műveleti kód bájt jelzésére PREFIX OPCODE MODE SIB OFFSET DATA OPCODE D W MOD REG R/M MODE operandus helye D - adatforgalom iránya W operandus mérete (byte/szó) 2 3 SCALE INDEX 3 BASE SIB kiegészítő információ az operandus helyéről OFFSET az operandus memóriabeli címe DATA utasításban elhelyezett szám konstans

41 A Pentium II címzési módszerei A Pentium II címzési módjai igen szabálytalanok, és attól is függenek, hogy 16 vagy 32 bites az utasítás. 32 bites utasításnál a támogatott címzési módok: - közvetlen - direkt - regiszter - regiszter-indirekt - index - egy speciális mód a tömbelemek címzésére Nem minden címzési mód alkalmazható minden utasításban, és nem minden regiszter használható minden címzési módban. Ez megnehezíti a fordító programok írását és bizonytalan kódot eredményez. A MODE bájt tartalma határozza meg a címzési módot. Az egyik operandust a MOD és az R/M mezők határozza meg, a másik operandus mindig regiszter, és a REG mező tartalmazza. Néhány módban egy SIB bájt követi a MODE bájtot. Ekkor szorozni kell az indexregisztert a SCALE-tól függően (1,2,4,8), hozzá kell adni a bázisregiszterhez és a MOD-tól függően hozzá kell adni 8 vagy 32 bites eltolási értéket

42 Állapottér Amikor az adattéren utasítást (manipulációt) hajtunk végre, változhat az állapottér (flag-ek) állapota, pl.előjel, túlcsordulás, stb. Állapottér Felhasználó számára látható Felhasználó számára transzparens Programszámláló PC állapotjelzők egyéb pl. nyomkövetés veremkezelés megszakításkezelés virtuális memóriakezelés Feltételkód CC egyetlen állapotindikátor adattípusonként változó állapotindikátorok

43 Állapotjelzők A korai rendszerek tipikusan feltételkódokat használtak valamennyi kivételes esemény jelzésére (az adatmanipulációk, I/O stb. okozta kivételek). Erre a legismertebb példa az IBM System/360, ahol egy 2 bit hosszúságú feltételkódot (CC) deklaráltak. Egy fejlettebb megoldást képvisel a dedikált indikátorok, közös néven flag-ek használata. Például az i8086 esetében az adatmanipulációk vonatkozásában a következő flag-eket deklarálták: A jelenleg bevezetett architektúrák esetében egyébként a különböző adattípusok esetében önálló flag- készletet deklarálnak. Pl. a SPARC CY7C601 integer egysége a következő flag-ekkel rendelkezik: OF S Z AC C N Z V C where: N: negative Z: zero V: overflow C: carry where: OF: S: Z: AC: C: overflow sign zero auxiliary carry carry A lebegőpontos adatok számára ennél a processzornál különálló 32-bites állapotregisztert deklaráltak, melyből csak egy kis rész látható a programozó számára. A különálló flag-ekre egy másik példa az i486-os processzorcsalád. Ennél ismét önálló flag-ek vannak a fixpontos (és logikai) valamint a lebegőpontos operandusok számára:

44 Az i486 állapotszava Önálló flag-ek vannak a fixpontos (és logikai) valamint a lebegőpontos operandusok számára busy top of stack pointer condition code b c 3 top c 2 c 1 c 0 e s s f p e u e o e z e d e i e error summary status stack flag exception flags: precision underflow overflow zero divide denormalized operand invalid operation

45 Állapotműveletek Az állapotinformációt gyakran tágabb értelemben használjuk, amit Program Status Word (PSW) vagy kontextusnak hívunk. Ennek a célja egy hatékony mechanizmus biztosítása az állapot információ mentésére és visszatöltésére eljárás-híváskor vagy multitaszk üzemmód stb. esetén. A PSW általában tartalmazza a felhasználó által látott status információt és a rendszer által látott információ egy bizonyos részét. A PSW gyakran korrelál a vezérlőegység státuszával. A felhasználó által látható állapot helyzet legtöbb komponensét speciális utasítással lehet manipulálni: beállítani, tesztelni kiinduló állapotba hozni (reset) betölteni menteni. A programszámláló (PC) egyébként egy különleges szerepet játszik az állapotműveletek vonatkozásában. Létezik egy egész vezérlés-átadásra szolgáló utasítás készlet.

Operandus típusok Bevezetés: Az utasítás-feldolgozás menete

Operandus típusok Bevezetés: Az utasítás-feldolgozás menete Operandus típusok Bevezetés: Az utasítás-feldolgozás menete Egy gépi kódú utasítás általános formája: MK Címrész MK = műveleti kód Mit? Mivel? Az utasítás-feldolgozás általános folyamatábrája: Megszakítás?

Részletesebben

Digitális rendszerek. Utasításarchitektúra szintje

Digitális rendszerek. Utasításarchitektúra szintje Digitális rendszerek Utasításarchitektúra szintje Utasításarchitektúra Jellemzők Mikroarchitektúra és az operációs rendszer közötti réteg Eredetileg ez jelent meg először Sokszor az assembly nyelvvel keverik

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 3. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

Részletesebben

1. Az utasítás beolvasása a processzorba

1. Az utasítás beolvasása a processzorba A MIKROPROCESSZOR A mikroprocesszor olyan nagy bonyolultságú félvezető eszköz, amely a digitális számítógép központi egységének a feladatait végzi el. Dekódolja az uatasításokat, vezérli a műveletek elvégzéséhez

Részletesebben

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix

5-6. ea Created by mrjrm & Pogácsa, frissítette: Félix 2. Adattípusonként különböző regisztertér Célja: az adatfeldolgozás gyorsítása - különös tekintettel a lebegőpontos adatábrázolásra. Szorzás esetén karakterisztika összeadódik, mantissza összeszorzódik.

Részletesebben

Számítógépek felépítése, alapfogalmak

Számítógépek felépítése, alapfogalmak 2. előadás Számítógépek felépítése, alapfogalmak Lovas Szilárd, Krankovits Melinda SZE MTK MSZT kmelinda@sze.hu B607 szoba Nem reprezentatív felmérés kinek van ilyen számítógépe? 2 Nem reprezentatív felmérés

Részletesebben

Számítógépek felépítése

Számítógépek felépítése Számítógépek felépítése Emil Vatai 2014-2015 Emil Vatai Számítógépek felépítése 2014-2015 1 / 14 Outline 1 Alap fogalmak Bit, Byte, Word 2 Számítógép részei A processzor részei Processzor architektúrák

Részletesebben

találhatók. A memória-szervezési modell mondja meg azt, hogy miként

találhatók. A memória-szervezési modell mondja meg azt, hogy miként Memória címzési módok Egy program futása során (legyen szó a program vezérléséről vagy adatkezelésről) a program utasításai illetve egy utasítás argumentumai a memóriában találhatók. A memória-szervezési

Részletesebben

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység Mikroprocesszor CPU C Central Központi P Processing Számító U Unit Egység A mikroprocesszor általános belső felépítése 1-1 BUSZ Utasítás dekóder 1-1 BUSZ Az utasítás regiszterben levő utasítás értelmezését

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Pentium 4 Nagyon sok előd kompatibilitás!), a fontosabbak: 44: 4 bites, 88: 8 bites, 886, 888: es, 8 bites adat sín 8286: 24 bites nem lineáris) címtartomány 6 K darab 64 KB-os szegmens) 8386: IA-32 architektúra,

Részletesebben

Balaton Marcell Balázs. Assembly jegyzet. Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született.

Balaton Marcell Balázs. Assembly jegyzet. Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született. Balaton Marcell Balázs Assembly jegyzet Az Assembly egy alacsony szintű nyelv, mely a gépi kódú programozás egyszerűsítésére született. 1. Regiszterek Regiszterek fajtái a. Szegmensregiszterek cs (code):

Részletesebben

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás ATmega128 CPU Single-level pipelining Egyciklusú ALU működés Reg. reg., reg. konst. közötti műveletek 32 x 8 bit általános célú regiszter Egyciklusú

Részletesebben

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg.

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg. Mikroprocesszor A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg. A mikroprocesszor részei A mikroprocesszor a szokásos

Részletesebben

SzA19. Az elágazások vizsgálata

SzA19. Az elágazások vizsgálata SzA19. Az elágazások vizsgálata (Az elágazások csoportosítása, a feltételes utasítások használata, a műveletek eredményének vizsgálata az állapottér módszerrel és közvetlen adatvizsgálattal, az elágazási

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Máté: Számítógép architektúrák 211117 Utasításrendszer architektúra szintje ISA) Amit a fordító program készítőjének tudnia kell: memóriamodell, regiszterek, adattípusok, ok A hardver és szoftver határán

Részletesebben

Assembly programozás levelező tagozat

Assembly programozás levelező tagozat Assembly programozás levelező tagozat Szegedi Tudományegyetem Képfeldolgozás és Számítógépes Grafika Tanszék 2011-2012-2 Tematika Assembly nyelvi szint. Az Intel 8086/88 regiszter készlete, társzervezése,

Részletesebben

Központi vezérlőegység

Központi vezérlőegység Központi vezérlőegység A számítógép agya a központi vezérlőegység (CPU: Central Processing Unit). Két fő része a vezérlőegység (CU: Controll Unit), ami a memóriában tárolt program dekódolását és végrehajtását

Részletesebben

Számítógép architektúrák

Számítógép architektúrák Számítógép architektúrák Számítógépek felépítése Digitális adatábrázolás Digitális logikai szint Mikroarchitektúra szint Gépi szint Operációs rendszer szint Assembly nyelvi szint Probléma orientált (magas

Részletesebben

A 32 bites x86-os architektúra regiszterei

A 32 bites x86-os architektúra regiszterei Memória címzési módok Jelen nayagrészben az Intel x86-os architektúrára alapuló 32 bites processzorok programozását tekintjük. Egy program futása során (legyen szó a program vezérléséről vagy adatkezelésről)

Részletesebben

Számítógépek felépítése, alapfogalmak

Számítógépek felépítése, alapfogalmak 2. előadás Számítógépek felépítése, alapfogalmak Lovas Szilárd SZE MTK MSZT lovas.szilard@sze.hu B607 szoba Nem reprezentatív felmérés kinek van ilyen számítógépe? Nem reprezentatív felmérés kinek van

Részletesebben

A Számítógépek felépítése, mőködési módjai

A Számítógépek felépítése, mőködési módjai Mechatronika, Optika és Gépészeti Informatika Tanszék Kovács Endre tud. Mts. A Számítógépek felépítése, mőködési módjai Mikroprocesszoros Rendszerek Felépítése Buszrendszer CPU OPERATÍV TÁR µ processzor

Részletesebben

Összeadás BCD számokkal

Összeadás BCD számokkal Összeadás BCD számokkal Ugyanúgy adjuk össze a BCD számokat is, mint a binárisakat, csak - fel kell ismernünk az érvénytelen tetrádokat és - ezeknél korrekciót kell végrehajtani. A, Az érvénytelen tetrádok

Részletesebben

Adatelérés és memóriakezelés

Adatelérés és memóriakezelés Adatelérés és memóriakezelés Jelen nayagrészben az Intel x86-os architektúrára alapuló 32 bites processzorok programozását tekintjük. Egy program futása során (legyen szó a program vezérléséről vagy adatkezelésről)

Részletesebben

Egyszerű RISC CPU tervezése

Egyszerű RISC CPU tervezése IC és MEMS tervezés laboratórium BMEVIEEM314 Budapesti Műszaki és Gazdaságtudományi Egyetem Egyszerű RISC CPU tervezése Nagy Gergely Elektronikus Eszközök Tanszéke (BME) 2013. február 14. Nagy Gergely

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák I-51 (19) Cél: beépített rendszerekben való alkalmazás Fő szempont: olcsóság (ma már 1-15 ), sokoldalú alkalmazhatóság A memóriával, be- és kivitellel együtt egyetlen lapkára integrált számítógép Mikrovezérlő

Részletesebben

Máté: Assembly programozás

Máté: Assembly programozás Dr. Máté Eörs docens Képfeldolgozás és Számítógépes Grafika Tanszék Árpád tér 2. II. em. 213 6196, 54-6196 (6396, 54-6396) http://www.inf.u-szeged.hu/~mate Tantárgy leírás: http://www.inf.u-szeged.hu/oktatas/kurzusleirasok/

Részletesebben

Adatok ábrázolása, adattípusok

Adatok ábrázolása, adattípusok Adatok ábrázolása, adattípusok Összefoglalás Adatok ábrázolása, adattípusok Számítógépes rendszerek működés: információfeldolgozás IPO: input-process-output modell információ tárolása adatok formájában

Részletesebben

Számítógép architektúra

Számítógép architektúra Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Számítógép architektúra Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Irodalmi források Cserny L.: Számítógépek

Részletesebben

Utasításszintű architektúra Adattér

Utasításszintű architektúra Adattér Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Utasításszintű architektúra Adattér Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu ISA Instruction Set

Részletesebben

Architektúra, megszakítási rendszerek

Architektúra, megszakítási rendszerek Architektúra, megszakítási ek Mirıl lesz szó? Megszakítás fogalma Megszakítás folyamata Többszintű megszakítási ek Koschek Vilmos Példa: Intel Pentium vkoschek@vonalkodhu Koschek Vilmos Fogalom A számítógép

Részletesebben

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1 INFORMATIKAI RENDSZEREK ALAPJAI (INFORMATIKA I.) 1 NEUMANN ARCHITEKTÚRÁJÚ GÉPEK MŰKÖDÉSE SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1 Ebben a feladatban a következőket fogjuk áttekinteni: Neumann rendszerű számítógép

Részletesebben

Mutatók és mutató-aritmetika C-ben március 19.

Mutatók és mutató-aritmetika C-ben március 19. Mutatók és mutató-aritmetika C-ben 2018 március 19 Memória a Neumann-architektúrában Neumann-architektúra: a memória egységes a címzéshez a természetes számokat használjuk Ugyanabban a memóriában van:

Részletesebben

Aritmetikai utasítások I.

Aritmetikai utasítások I. Aritmetikai utasítások I. Az értékadó és aritmetikai utasítások során a címzési módok különböző típusaira látunk példákat. A 8086/8088-as mikroprocesszor memóriája és regiszterei a little endian tárolást

Részletesebben

A számítógép alapfelépítése

A számítógép alapfelépítése Informatika alapjai-6 számítógép felépítése 1/8 számítógép alapfelépítése Nevezzük számítógépnek a következő kétféle elrendezést: : Harvard struktúra : Neumann struktúra kétféle elrendezés alapvetően egyformán

Részletesebben

Számítógép Architektúrák I-II-III.

Számítógép Architektúrák I-II-III. Kidolgozott államvizsgatételek Számítógép Architektúrák I-II-III. tárgyakhoz 2010. június A sikeres államvizsgához kizárólag ennek a dokumentumnak az ismerete nem elégséges, a témaköröket a Számítógép

Részletesebben

VI. SZOFTVERES PROGRAMOZÁSÚ VLSI ÁRAMKÖRÖK

VI. SZOFTVERES PROGRAMOZÁSÚ VLSI ÁRAMKÖRÖK VI. SZOFTVERES PROGRAMOZÁSÚ VLSI ÁRAMKÖRÖK 1 Az adatok feldolgozását végezhetjük olyan általános rendeltetésű digitális eszközökkel, amelyeket megfelelő szoftverrel (programmal) vezérelünk. A mai digitális

Részletesebben

Assembly. Iványi Péter

Assembly. Iványi Péter Assembly Iványi Péter További Op. rsz. funkcionalitások PSP címének lekérdezése mov ah, 62h int 21h Eredmény: BX = PSP szegmens címe További Op. rsz. funkcionalitások Paraméterek kimásolása mov di, parameter

Részletesebben

Paraméter átadás regisztereken keresztül

Paraméter átadás regisztereken keresztül Eljárások paramétereinek átadási módjai Az eljárások deklarációjánál nincs mód arra, hogy paramétereket adjunk meg, ezért más, közvetett módon tudunk átadni paramétereket az eljárásoknak. Emlékeztetőül:

Részletesebben

Informatika 1 2. el adás: Absztrakt számítógépek

Informatika 1 2. el adás: Absztrakt számítógépek Informatika 1 2. el adás: Budapesti M szaki és Gazdaságtudományi Egyetem 2015-09-08 1 2 3 A egy M = Q, Γ, b, Σ, δ, q 0, F hetes, ahol Q az 'állapotok' nem üres halmaza, Γ a 'szalag ábécé' véges, nem üres

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák A mikroprogram Mic 1: 4.. ábra. 51x3 bites vezérlőtár a mikroprogramnak, MPC (MicroProgram Counter): mikroprogram utasításszámláló. MIR (MicroInstruction Register): mikroutasítás regiszter. Az adatút ciklus

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Az GOTO offset utasítás. P relatív: P értékéhez hozzá kell adni a két bájtos, előjeles offset értékét. Mic 1 program: Main1 P = P + 1; fetch; goto() goto1 OP=P 1 // Main1 nél : P=P+1 1. bájt goto P=P+1;

Részletesebben

Programozás alapjai. 10. előadás

Programozás alapjai. 10. előadás 10. előadás Wagner György Általános Informatikai Tanszék Pointerek, dinamikus memóriakezelés A PC-s Pascal (is) az IBM PC memóriáját 4 fő részre osztja: kódszegmens adatszegmens stackszegmens heap Alapja:

Részletesebben

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot

Részletesebben

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Bevezetés A laborgyakorlatok alapvető célja a tárgy későbbi laborgyakorlataihoz szükséges ismeretek átadása, az azokban szereplő

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák NEXT ADDRESS JMPC JAMN JAMZ SLL8 SRA1 F0 F1 ENA EN INVA INC H OPC TOS LV SP PC MDR MAR WRITE READ FETCH 4 sín Mikroutasítások 24 bit: az adatút vezérléséhez bit: a következő utasítás címének megadásához,

Részletesebben

Számítógép Architektúrák (MIKNB113A)

Számítógép Architektúrák (MIKNB113A) PANNON EGYETEM, Veszprém Villamosmérnöki és Információs Rendszerek Tanszék Számítógép Architektúrák (MIKNB113A) 4. előadás: Utasítás végrehajtás folyamata: címzési módok, RISC-CISC processzorok Előadó:

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák MPC új tartalma, JMPC JMPC esetén MPC 8 alacsonyabb helyértékű bitjének és MR 8 bitjének bitenkénti vagy kapcsolata képződik MPC-ben az adatút ciklus vége felé (MR megérkezése után). Ilyenkor Addr 8 alacsonyabb

Részletesebben

Az integrált áramkörök kimenetének kialakítása

Az integrált áramkörök kimenetének kialakítása 1 Az integrált áramörö imeneténe ialaítása totem-pole three-state open-olletor Az áramörö általános leegyszerűsített imeneti foozata: + tápfeszültség R1 V1 K1 imenet V2 K2 U i, I i R2 ahol R1>>R2, és K1,

Részletesebben

Bevezetés a számítástechnikába

Bevezetés a számítástechnikába Bevezetés a számítástechnikába Megszakítások Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. november 9. Bevezetés Megszakítások

Részletesebben

7. Fejezet A processzor és a memória

7. Fejezet A processzor és a memória 7. Fejezet A processzor és a memória The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley

Részletesebben

Számítógép Architektúrák

Számítógép Architektúrák Számítógép Architektúrák Utasításkészlet architektúrák 2015. április 11. Budapest Horváth Gábor docens BME Hálózati Rendszerek és Szolgáltatások Tsz. ghorvath@hit.bme.hu Számítógép Architektúrák Horváth

Részletesebben

VEZÉRLŐEGYSÉGEK. Tartalom

VEZÉRLŐEGYSÉGEK. Tartalom VEZÉRLŐEGYSÉGEK Tartalom VEZÉRLŐEGYSÉGEK... 1 Vezérlőegységek fajtái és jellemzői... 2 A processzor elemei... 2 A vezérlés modellje... 2 A vezérlőegységek csoportosítása a tervezés módszere szerint...

Részletesebben

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

SZÁMÍTÓGÉP ARCHITEKTÚRÁK SZÁMÍTÓGÉP ARCHITEKTÚRÁK Kártyás ajtónyitó tervezése Horváth Gábor BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu, belso@hit.bme.hu Budapest, 2018-02-19 Hálózati Rendszerek és Szolgáltatások

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Mikroarchitektúra szint Feladata az ISA (Instruction Set Architecture gépi utasítás szint) megvalósítása. Nincs rá általánosan elfogadott, egységes elv. A ISA szintű utasítások függvények, ezeket egy főprogram

Részletesebben

A mikroprocesszor felépítése és működése

A mikroprocesszor felépítése és működése A mikroprocesszor felépítése és működése + az egyes részegységek feladata! Információtartalom vázlata A mikroprocesszor feladatai A mikroprocesszor részegységei A mikroprocesszor működése A mikroprocesszor

Részletesebben

A MiniRISC processzor

A MiniRISC processzor BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK A MiniRISC processzor Fehér Béla, Raikovich Tamás, Fejér Attila BME MIT

Részletesebben

Processzor (CPU - Central Processing Unit)

Processzor (CPU - Central Processing Unit) Készíts saját kódolású WEBOLDALT az alábbi ismeretanyag felhasználásával! A lap alján lábjegyzetben hivatkozz a fenti oldalra! Processzor (CPU - Central Processing Unit) A központi feldolgozó egység a

Részletesebben

INTEL 8085 gépi utasításkészlete

INTEL 8085 gépi utasításkészlete 1 INTEL 8085 gépi utasításkészlete ADATMOZGATÓ UTASÍTÁSOK MOV r1,r2 (r1)

Részletesebben

1. ábra: Perifériára való írás idődiagramja

1. ábra: Perifériára való írás idődiagramja BELÉPTETŐ RENDSZER TERVEZÉSE A tárgy első részében tanult ismeretek részbeni összefoglalására tervezzük meg egy egyszerű mikroprocesszoros rendszer hardverét, és írjuk meg működtető szoftverét! A feladat

Részletesebben

Számítógép architektúrák

Számítógép architektúrák Számítógép architektúrák Kártyás ajtónyitó tervezése 2016. március 7. Budapest Horváth Gábor docens BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu Számítógép Architektúrák Horváth

Részletesebben

Számítógépek, számítógép rendszerek

Számítógépek, számítógép rendszerek Számítógépek, számítógép rendszerek 5. Hardver architektúrák, a CPU Dr. Vadász Dénes Miskolc, 2005. február TARTALOM TARTALOM... a 5. Hardver architektúrák, a központi egység működése... 1 5.1. Az ALU

Részletesebben

2017/12/16 21:33 1/7 Hardver alapok

2017/12/16 21:33 1/7 Hardver alapok 2017/12/16 21:33 1/7 Hardver alapok < Hardver Hardver alapok Szerző: Sallai András Copyright Sallai András, 2011, 2013, 2014 Licenc: GNU Free Documentation License 1.3 Web: http://szit.hu Bevezetés A számítógépet

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Pentium 4 utasításformái (514 ábra) Több generáción keresztül kialakult architektúra Csak egy operandus lehet memória cím Prefix, escape (bővítésre), MOD, SIB (Scale Index Base) 0 5 1 2 0 1 0 1 0 4 0 4

Részletesebben

Utasításfajták Memóriacímzés Architektúrák Végrehajtás Esettanulmányok. 2. előadás. Kitlei Róbert november 28.

Utasításfajták Memóriacímzés Architektúrák Végrehajtás Esettanulmányok. 2. előadás. Kitlei Róbert november 28. 2. előadás Kitlei Róbert 2008. november 28. 1 / 21 Adatmozgató irányai regiszter és memória között konstans betöltése regiszterbe vagy memóriába memóriából memóriába közvetlenül másoló utasítás nincsen

Részletesebben

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások 8. Fejezet Processzor (CPU) és memória: The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley

Részletesebben

Informatika érettségi vizsga

Informatika érettségi vizsga Informatika 11/L/BJ Informatika érettségi vizsga ÍRÁSBELI GYAKORLATI VIZSGA (180 PERC - 120 PONT) SZÓBELI SZÓBELI VIZSGA (30 PERC FELKÉSZÜLÉS 10 PERC FELELET - 30 PONT) Szövegszerkesztés (40 pont) Prezentáció-készítés

Részletesebben

Assembly utasítások listája

Assembly utasítások listája Assembly utasítások listája Bevezetés: Ebben a segédanyagban a fontosabb assembly utasításokat szedtem össze. Az utasítások csoportosítva vannak. A fontos kategóriába azok az utasítások tartoznak, amiknek

Részletesebben

Bevezetés a számítástechnikába

Bevezetés a számítástechnikába Bevezetés a számítástechnikába, Címzési módok, Assembly Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. november 2/9. ú utasítás

Részletesebben

Az interrupt Benesóczky Zoltán 2004

Az interrupt Benesóczky Zoltán 2004 Az interrupt Benesóczky Zoltán 2004 1 Az interrupt (program megszakítás) órajel generátor cím busz környezet RESET áramkör CPU ROM RAM PERIF. adat busz vezérlõ busz A periféria kezelés során információt

Részletesebben

2016/08/31 02:45 1/6 Hardver alapok

2016/08/31 02:45 1/6 Hardver alapok 2016/08/31 02:45 1/6 Hardver alapok < Hardver Hardver alapok Szerző: Sallai András Copyright Sallai András, 2011, 2013, 2014 Licenc: GNU Free Documentation License 1.3 Web: http://szit.hu Bevezetés A számítógépet

Részletesebben

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása

A fordítóprogramok szerkezete. Kódoptimalizálás. A kódoptimalizálás célja. A szintézis menete valójában. Kódoptimalizálási lépések osztályozása A fordítóprogramok szerkezete Forrásprogram Forrás-kezelő (source handler) Kódoptimalizálás Fordítóprogramok előadás (A,C,T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus

Részletesebben

Intel x86 utasításkészlet

Intel x86 utasításkészlet Intel x86 utasításkészlet Kód visszafejtés. Izsó Tamás 2013. október 31. Izsó Tamás Intel x86 utasításkészlet/ 1 Section 1 Intel mikroprocesszor Izsó Tamás Intel x86 utasításkészlet/ 2 Intel mikroprocesszor

Részletesebben

Mi az assembly? Gyakorlatias assembly bevezető. Sokféle assembly van... Mit fogunk mi használni? A NASM fordítóprogramja. Assembly programok fordítása

Mi az assembly? Gyakorlatias assembly bevezető. Sokféle assembly van... Mit fogunk mi használni? A NASM fordítóprogramja. Assembly programok fordítása Mi az assembly Gyakorlatias assembly bevezető Fordítóprogramok előadás (A, C, T szakirány) programozási nyelvek egy csoportja gépközeli: az adott processzor utasításai használhatóak általában nincsenek

Részletesebben

A 6502 mikroprocesszor

A 6502 mikroprocesszor A 6502 mikroprocesszor Czirkos Zoltán BME EET 2013. február 13. A 6502 processzorról Z80-korabeli Chuck Peddle (rendszer) és Bill Mensch (layout) főtervezők MOS Technology de sok cég gyártotta azóta Apple

Részletesebben

Archi2 Gyak. (Processzorok Utasításszintű Kezelése) 2014 ősz

Archi2 Gyak. (Processzorok Utasításszintű Kezelése) 2014 ősz Archi2 Gyak (Processzorok Utasításszintű Kezelése) 2014 ősz Ajánlott irodalom Agárdi Gábor: Gyakorlati Assembly, LSI Oktatóközpont, 1996, ISBN 963 577 117 7 Agárdi G.: Gyakorlati Assembly haladóknak, LSI

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 4. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

Részletesebben

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások

8. Fejezet Processzor (CPU) és memória: tervezés, implementáció, modern megoldások 8. Fejezet Processzor (CPU) és memória: The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander John Wiley and Sons 2003 Wilson Wong, Bentley

Részletesebben

Digitális technika VIMIAA02 9. hét

Digitális technika VIMIAA02 9. hét BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT Processzor adatstruktúrák

Részletesebben

Máté: Számítógép architektúrák 2010.12.01.

Máté: Számítógép architektúrák 2010.12.01. Máté: Számítógép architektúrák... A feltételes ugró utasítások eldugaszolják a csővezetéket Feltételes végrehajtás (5.5 5. ábra): Feltételes végrehajtás Predikáció ió C pr. rész Általános assembly Feltételes

Részletesebben

Gábor Dénes Főiskola Győr. Mikroszámítógépek. Előadás vázlat. 2004/2005 tanév 4. szemeszter. Készítette: Markó Imre 2006

Gábor Dénes Főiskola Győr. Mikroszámítógépek. Előadás vázlat. 2004/2005 tanév 4. szemeszter. Készítette: Markó Imre 2006 Gábor Dénes Főiskola Győr Mikroszámítógépek Előadás vázlat 102 2004/2005 tanév 4. szemeszter A PROCESSZOR A processzorok jellemzése A processzor felépítése A processzorok üzemmódjai Regiszterkészlet Utasításfelépítés,

Részletesebben

Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT Processzor adatstruktúrák

Részletesebben

Számítógép felépítése

Számítógép felépítése Alaplap, processzor Számítógép felépítése Az alaplap A számítógép teljesítményét alapvetően a CPU és belső busz sebessége (a belső kommunikáció sebessége), a memória mérete és típusa, a merevlemez sebessége

Részletesebben

Assembly. Iványi Péter

Assembly. Iványi Péter Assembly Iványi Péter Miért? Ma már ritkán készül program csak assembly-ben Általában bizonyos kritikus rutinoknál használják Miért nem használjuk? Magas szintű nyelven könnyebb programozni Nehéz más gépre

Részletesebben

Processzorok Utasításszintű Kezelése tavasz

Processzorok Utasításszintű Kezelése tavasz Processzorok Utasításszintű Kezelése 2014 tavasz Ajánlott irodalom Agárdi Gábor: Gyakorlati Assembly, LSI Oktatóközpont, 1996, ISBN 963 577 117 7 Agárdi G.: Gyakorlati Assembly haladóknak, LSI oktatóközpont,

Részletesebben

Máté: Számítógép architektúrák

Máté: Számítógép architektúrák Pentium 4 utasításformái (4 ábra) Több generáción keresztül kialakult architektúra Csak egy operandus lehet memória cím Prefix, escape (bővítésre), MOD, SIB (Scale Index Base) 0- prefix - művkód 6 utasítás

Részletesebben

Mikrokontrollerek. Tihanyi Attila 2007. május 8

Mikrokontrollerek. Tihanyi Attila 2007. május 8 Mikrokontrollerek Tihanyi Attila 2007. május 8 !!! ZH!!! Pótlási lehetőség külön egyeztetve Feladatok: 2007. május 15. Megoldási idő 45 perc! Feladatok: Első ZH is itt pótolható Munkapont számítás Munkapont

Részletesebben

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

SZÁMÍTÓGÉP ARCHITEKTÚRÁK SZÁMÍTÓGÉP ARCHITEKTÚRÁK Pipeline utasításfeldolgozás Horváth Gábor, Belső Zoltán BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu, belso@hit.bme.hu Budapest, 2018-04-24 1 UTASÍTÁSOK

Részletesebben

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból

Részletesebben

OPERÁCIÓS RENDSZEREK. Elmélet

OPERÁCIÓS RENDSZEREK. Elmélet 1. OPERÁCIÓS RENDSZEREK Elmélet BEVEZETÉS 2 Az operációs rendszer fogalma Az operációs rendszerek feladatai Csoportosítás BEVEZETÉS 1. A tantárgy tananyag tartalma 2. Operációs rendszerek régen és most

Részletesebben

A Számítógépek hardver elemei

A Számítógépek hardver elemei Mechatronika, Optika és Gépészeti Informatika Tanszék Kovács Endre tud. Mts. A Számítógépek hardver elemei Korszerű perifériák és rendszercsatolásuk A µ processzoros rendszer regiszter modellje A µp gépi

Részletesebben

Mintavételes szabályozás mikrovezérlő segítségével

Mintavételes szabályozás mikrovezérlő segítségével Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés

Részletesebben

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges

Részletesebben

Digitális technika VIMIAA01 9. hét

Digitális technika VIMIAA01 9. hét BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT Eddig Tetszőleges

Részletesebben

Assembly Utasítások, programok. Iványi Péter

Assembly Utasítások, programok. Iványi Péter Assembly Utasítások, programok Iványi Péter Assembly programozás Egyszerű logikán alapul Egy utasítás CSAK egy dolgot csinál Magas szintű nyelven: x = 5 * z + y; /* 3 darab művelet */ Assembly: Szorozzuk

Részletesebben

Jelfeldolgozás a közlekedésben

Jelfeldolgozás a közlekedésben Jelfeldolgozás a közlekedésben 2015/2016 II. félév 8051 és C8051F020 mikrovezérlők Fontos tudnivalók Elérhetőség: ST. 108 E-mail: lovetei.istvan@mail.bme.hu Fontos tudnivalók: kjit.bme.hu Aláírás feltétele:

Részletesebben

Adatszerkezetek 1. Dr. Iványi Péter

Adatszerkezetek 1. Dr. Iványi Péter Adatszerkezetek 1. Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot kódoltan tároljuk

Részletesebben

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés . Számítógépek működési elve Bevezetés az informatikába. előadás Dudásné Nagy Marianna Az általánosan használt számítógépek a belső programvezérlés elvén működnek Külső programvezérlés... Vezérlés elve

Részletesebben

Egyszerű számítógép működése

Egyszerű számítógép működése gyszerű számítógép működése gy Neumann és egy Harvard arcitektúrájú számítógép egyszerűsített blokkvázlatát mutatják az alábbi ábrák. Neumann architektúra cím busz környezet CPU ROM RAM perifériák órajel

Részletesebben

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

SZÁMÍTÓGÉP ARCHITEKTÚRÁK SZÁMÍTÓGÉP ARCHITEKTÚRÁK Az utasítás-pipeline szélesítése Horváth Gábor, Belső Zoltán BME Hálózati Rendszerek és Szolgáltatások Tanszék ghorvath@hit.bme.hu, belso@hit.bme.hu Budapest, 2018-05-19 1 UTASÍTÁSFELDOLGOZÁS

Részletesebben

Számítógép Architektúrák (MIKNB113A)

Számítógép Architektúrák (MIKNB113A) PANNON EGYETEM, Veszprém Villamosmérnöki és Információs Rendszerek Tanszék Számítógép Architektúrák (MIKNB113A) 4. előadás: Utasítás végrehajtás folyamata: címzési módok, RISC-CISC processzorok Előadó:

Részletesebben