Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaRebeka Oroszné Megváltozta több, mint 10 éve
1
Számítógépek felépítése 3. előadás CPU, utasítás ciklus, címzés
2
3. előadás tartalma utasítás típusok, utasítás készlet
a központi feldolgozó egység működése utasítás ciklus utasítás szerkezet címzési módok
3
Utasítás típusok
4
Utasítás típusok adat-töltő, adat átvitel a számítógép funkcionális részei között aritmetikai, logikai műveletek végzése adatokkal program vezérlő, vezérlésátadás a program egyik részéről egy másik részére speciális, rendszer vezérlő, hatékony működést segítő I/O, adat átvitel a számítógép és a környezete között [Szám. alap. pp 73-
5
Adat-töltő Regiszter -> Regiszter Regiszter -> Memória
Memória -> Regiszter Memória -> Memória
6
Aritmetikai, Logikai aritmetikai műveletek: + - * / (különféle adattípusokon) logikai függvények: AND, OR, NOT, XOR összehasonlítások, vizsgálatok léptetések
7
Program vezérlő feltétlen elágazás (ugró) feltételes elágazás
szubrutin hívás
8
Rendszer vezérlő HALT, WAIT megszakítás kezelés
kölcsönös kizárás megvalósítása (Test And Set)
9
I/O adatátvitel a periféria és a gép között periféria vezérlése
10
A központi feldolgozó egység
feladata, kapcsolata a többi egységgel részei, felépítése működése megvalósítása
11
központi feldolgozó egység
(CPU) memória (MEM) vezérlő egység (CU) művelet végző egység (ALU)
12
központi feldolgozó egység
címsín központi feldolgozó egység (CPU) memória (MEM) vezérlő sín vezérlő egység (CU) művelet végző egység (ALU) adatsín
13
központi feldolgozó egység
címsín központi feldolgozó egység (CPU) memória (MEM) CU vezérlő sín ALU regiszterek adatsín
14
A központi feldolgozó egység részei
A központi feldolgozó egység (Central Processing Unit - CPU) részei : műveleti egység (aritmetikai logikai egység) (Arithmetic Logical Unit - ALU) vezérlő egység (Control Unit - CU) regiszterek (registers) sínek (bus) regiszter : „egy-egy adat befogadására, megadott hosszúságú, gyors működésű tárolóhely” A CPU megvalósítása: vezérlő egység megvalósítása... művelet végző egység megvalósítása... regiszterek megvalósítása... buszok megvalósítása...
15
A processzor utasításciklusa
A CPU működése A processzor utasításciklusa
16
Utasítás ciklus Fetch („elérés”) : Utasítás kód beolvasása
Utasítás kód értelmezése (dekódolás) Operandusok beolvasása Execute („végrehajtás”) : Műveletvégzés (ALU) Eredmény tárolása Következő utasítás címének kiszámítása
17
központi feldolgozó egység
címsín központi feldolgozó egység utasítás számláló regiszter ALU memória (MEM) vezérlő sín CU utasítás tároló regiszter adat regiszterek adatsín
18
Utasítás végrehajtás funkcionális vázlata
számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
19
Utasítás végrehajtás lépései 1.
meghatározni a következő utasítás címét és a tár címregiszterébe tölteni az utasítást a tárból az utasításregiszterbe tölteni
20
aritmetikai logikai egység
Utasítás végrehajtás 1. számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
21
Utasítás végrehajtás lépései 2.
meghatározni (címképzés) a tár címregiszterébe tölteni az 1. adat címét adat a tárból az egyik adatregiszterbe
22
Utasítás végrehajtás lépései 2.
számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
23
Utasítás végrehajtás lépései 3.
meghatározni (címképzés) a tár címregiszterébe tölteni az 2. adat címét adat a tárból egy másik adatregiszterbe
24
Utasítás végrehajtás lépései 3.
számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
25
Utasítás végrehajtás lépései 4.
utasítani az aritmetikai logikai egységet a művelet elvégzésére eredmény tárolása egy adatregiszterben
26
aritmetikai logikai egység
Utasítás végrehajtás 4. számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
27
Utasítás végrehajtás lépései 5.
meghatározni (címképzés) a tár címregiszterébe tölteni az eredmény címét az eredmény az adatregiszterből a tárba
28
aritmetikai logikai egység
Utasítás végrehajtás 5. számláló utasítás címképzés utasítás dekodoló vezérlő jelek utasítás regiszter ütemező címsín regiszterek adat [Számítástechnkia alapismeretek pp57] adatsín aritmetikai logikai egység tár puffer- regiszter tár cím- regiszter operatív tár
29
Utasítás végrehajtás lépések összefoglalása
következő utasítás címe, elérése, előkészítése 1. adat címe, elérése, előkészítése 2. adat címe, elérése, előkészítése művelet elvégzése eredmény címe, eltárolása
30
Utasítás végrehajtáshoz szükséges „információk”
vezérlőegységnek információ <- utasítás elvégzendő művelet 1. adat címe (helye) 2. adat címe (helye) erdmény címe (helye) következő utasítás címe nem lehetne máshogy ?!
31
Utasítások tárolási formái
utasítás szerkezet címzési módok utasítás típusok, utasítás készlet [Cserny könyv szerint]
32
Egy utasítás felépítése, részei
műveleti kód módósításra utaló rész címrész
33
4,3,2,1,0 címes utasítás formák (a megadott címek száma szerint)
[Szám. alap. pp58-61] Utasítás címzési módok :
34
4 címes utasítás forma műveleti kód 1. adat címe 2. adat címe eredmény
következő utasítás címe
35
3 címes utasítás forma műveleti kód 1. adat címe 2. adat címe eredmény
következő utasítás címe program számláló utasítás számláló regiszter , Program Counter (PC) PC := PC + utasítás hossz
36
2 címes utasítás forma műveleti kód 1. adat címe 2. adat címe eredmény
az eredmény a 2. adat címére kerül
37
1 címes utasítás forma műveleti kód 1. adat címe 2. adat címe eredmény
akkumulátor regiszter a 2. adat címe helyett akkumulátor regiszter, az eredmény az akkumulátor regiszterbe kerül
38
0 címes utasítás forma műveleti kód 1. adat címe eredmény címe
akkumulátor regiszter a művelet az akkumulátor regiszteren hajtódik végre
39
a címrész tartalma szerint
Utasítás formák a címrész tartalma szerint
40
jelölések S : tárcím R : regisztercím A : akkumulátor regiszter
I : közvetlen adat az utasításban MK : műveleti kód @ : tetszőleges művelet (S) : adat a tárban (R) : adat a regiszterben (A) : adat az akkumulátor regiszterben LI(n) : az n. utasítás hossza SI(n) : az n. utasítás címe
41
4 címes : MK S1 S2 S3 S4 (S2) -> (S3), SI(n+1) = S4 3 címes : MK S1 S2 S3 (S2) -> (S3), SI(n+1) = SI(n) + LI(n) 2 címes : MK S1 S2 (S2) -> (S2) ” 1 címes : MK S1 (A) -> (A) ” 0 címes : MK @ (A) -> (A) ”
42
1 R címes : MK R: @ (R) -> (R) 1 + R címes : MK R S : (S) -> (R) vagy (S) -> (S) 2 R címes : MK R1 R2 : (R2) -> (R1) 3 R címes : MK R1 R2 R3: (R2) -> (R3) közvetlen operandusú : MK I S vagy MK I (S) -> (S) vagy @ I -> (A)
43
címértelmezés címmegadás
Címzési módok címértelmezés címmegadás [Szám. alap. pp82-]
44
Címértelmezés műv. kód adat regiszter közvetlen (immediat) adatmegadás
rejtett (inheritent), implicit címzés adat műv. kód cím tár register mode ? register indirect közvetlen (direkt) címzés cím műv. kód 1 cím adat közvetett (indirekt) címzés
45
Címmegadás + műv. kód cím adat abszolút címmegadás bázis D adat
cím (D) D = displacement (eltolás) vagy „offset” rövidített címmegadás
46
Rövidített címmegadás
Mihez képest számítjuk a címet : lapcímes :az adott lap kezdetétől bázisregiszteres : bázisregiszter értékétől (általában a bázisregiszter tartalma rögzített) mutatós (pointeres) : a meghatározott regiszter értékétől (a regiszter tartalma a program végrehajtása során változik, pld. PC) példa : JMP relatív
47
Kombinált címzési módok
... Címmódósítás : indexelés (vektor feldolgozása : első elem megadása, index automatikus növelése) fix utasításhossz változó utasításhossz Intel és Motorola címzési lehetőségek [Cserny pp91-92]
49
Az utasítások felépítése, szerkezete
fix és változó utasítás hossz
50
Utasítások kódolása Példa : 8 bites utasításhossz, 3 bites címhossz
3 címes címzés lehetetlen 2 címes címzés : marad 2 bites műveleti kód : 4 féle utasítás 1 címes címzés : marad 5 bites műveleti kód : 32 féle utasítás 0 címes címzés : 8 bites műveleti kód : 256 féle utasítás
51
Utasítások kódolása műveleti kód 1. cím 2. cím 2 bit 3 bit 3 bit
00 xxx yyy 01 xxx yyy 10 xxx yyy 11 xxx yyy
52
Utasítások kódolása („expanding”)
2bit 3bit 3bit 00 xxx yyy 01 xxx yyy 10 xxx yyy yyy yyy yyy yyy yyy yyy yyy yyy 2 bites műveleti kód 3 db 2 címes utasítás 5 bites műveleti kód 8 db 1 címes utasítás Hasonló elven : 2bites műveleti kód, 3db 2címes utasítás+ 5bites műveleti kód, 7db 1címes utasítás+ 8bites műveleti kód, 8db 0címes utasítás
53
Eltérő címzésí módú gépek programozása példa (1)
Adott 4 különféle típusú gép : 0 címes gép (verem), pld.: ADD, PUSH (M), POP (M) 1 címes gép, pld.: ADD M = ACC <- (ACC) + (M) 2 címes gép, pld.: ADD X,Y = X <- (X) + (Y) 3 címes gép, pld.: ADD X,Y,Z = Z <- (X) + (Y) műveletek : MOV, ADD, SUB, DIV, MUL, (LDA,STA) Kiszámolandó : Z:= ((A+B)*C)/((D-E)*F)
54
Eltérő címzésí módú gépek programozása példa (2)
Adatok : M - 20 bites memóriacím X,Y,Z - 20 bites memória cím, vagy 3 bites regisztercím (R0-R7) a műveleti kód rész hossza 8 bit Kérdés mindegyik géptípusra (programra) : az utasítások száma a program mérete (bit-ben) a felhasznált regiszterek száma
55
REG ALU FLAG AC CU IR PC [Cserny pp57.] a proceszor építőelemei
56
Logikai struktura adattípusok programozható regiszterek
utasítás típusok (utasítás lista) utasítás formák címzési módok
57
Fizikai struktura operatív tár műveleti (aritmetikai logikai) egység
vezérlőegység megszakítási rendszer I/O rendszer
58
Összefoglalás
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.