Labor elmélet 1. Flashcards

1
Q

Mit csinál a CPU?

A

CPU: memóriában tárolt adatokat kiolvassa, értelmezi és végrehajtja

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Mi az ALU?

A

Műveletvégző

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Mik a regiszterek?

A

~tárolók, sokkal gyorsabb, mint a memória közvetlen hozzáférése

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Mi a RAM?

A

elsődleges adattároló (bit/byte/word/dword)–Memóriaszervezés byte alapú(minden byte-hoz egy cím van rendelve)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Gépi kód felépítése

A
Műveleti kód operandus
pl.: mov ah, 03h
Műveleti kód: mit kell csinálni
Operandus: hol/min kell végrehajtani
Assemblyben mnemonikokat használunk.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Általános célú regiszterek (16 bites)

A

ax, bx, cx, dx
Ezek alsó és felső részre oszthatók:
pl.: ax=ah (8bit)(felső), al (8bit)(alsó) (ezek külön címezhető részek, nem különálló regiszterek
kép55

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Dedikált regiszterek

A

–SP: veremmutató (a verem tetejére mutat)
–BP: bázismutató (a verem egy elemét jelöli ki)
–SI: forrásindex (stringkezelő utasítások használatakor a forráscímet tartalmazza)
–DI: célindex (cél stringcímét tartalmazza)
–SR: státusz regiszter (Flag)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Memória címzés

A
16 bites címmel megcímezhető legnagyobb memória értéke 65535 (64K memória) Nagyobb megcímezhető memória használata érdekében:
–CS: kód szegmens
–DS: adat szegmens
–ES: extra szegmens
–SS: verem szegmens
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

SR (stárusz regiszter) állapotai

A

a Flagekettartalmazza, amelyek az állapotteret reprezentálják, ezek bizonyos műveletek hatására állapotot válthatnak kivonás, túlcsordulás, stb.)
C(CARRY FLAG –átviteljelző bit)
1-re áll, ha az aritmetikai művelet során átvitel vagy áthozat keletkezik bitléptető és forgató utasítások során is használatba kerül
P(PARITY FLAG –paritásjelző bit)
adatkommunikációs alkalmazások során szükségespáros parítás esetén értéke 0
A(AUXILIARY CARRY FLAG –segédátvitel jelző bit)
BCD (binárisan kódolt decimális) aritmetikában használatos
Z(ZERO FLAG –zérusjelző bit)
1-re áll ha az eredmény zérus
S(SIGN FLAG –eljelző bit)
negatív eredmény esetén 1-re áll
O(OVERFLOW FLAG –túlcsordulás jelző bit)
egy matematikai művelet eredménye meghaladja a kiszabott tartományt, akkor 1-re áll

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

80386 processzor kiegészítések regiszterek

A
•regiszterek
–EAX, EBX, ECX, EDX (32bites)
–ESP veremmutató, EBP bázismutató
–ESI (forrásindex), EDI (célindex)
•szegmens regiszterek
–CS (code), DS (data), SS (stack), ES (extra), FS, GS (16bites)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Lehetséges címzési módok

A
  • MOV AH, 0AH-ba0-t tölt
  • MOV AL, 04AL-be4-et tölt
  • MOV AX, 42134AX-be42134-et tölt
  • MOV AX, BXAX-bebetölti BX tartalmát
  • MOV AH, BL AH-babetölti BL tartalmát (azonos regiszterméret!)
  • MOV AX, 0FFFFhAX-bebetölti 0FFFF hexaszámot (65535 decimális, a betűvel kezdődő hexadecimális szám elé 0-t kell írni!)
  • MOV AL,-40AL-bebetölti -40 decimális számot
  • MOV AX,OFFSET MYDATAA MYDATA szegmensen belüli „offset” címe berülAX-beMYDATA címke egy memóriacímke, ahol az adat van
  • MOV AX,[SI] AX-betölti az SI regiszter által mutatott 16 bites értéket
  • MOV AL,[SI]AL-betölti az SI regiszter által mutatott 8 bites értéket
  • MOV AX,[SI+2] Az SI regiszter+2 cím által mutatott adat kerül AX-be
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Megszakítások fajtái

A
•Hardver megszakítások
•Szoftver megszakítások
–a program kódjából kerül aktiválásra
–a program futásával szinkron, mindig ugyanott következik be (INT utasítások)
–nem maszkolhatóak
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Szoftver megszakítások

A
  • amikor egy szoftvermegszakítás meghívásra kerül, az INT utasítás után megadott azonosítóhoz tartozó kiszolgáló rutin fut le
  • ebből 256 dbvan: INT 00h…INT 0FFh•a megszakítás-kezelő rutinok kezdőcímei a megszakítás vektortáblában találhatók
  • ezt a „táblázatot” az operációs rendszer tölti be a bootolásifolyamat során
  • az INT utasítások ebből olvassák ki a szolgáltatások kezdőcímét
  • INT n hatására az n. bejegyzés tartalma lesz a következő végrehajtandó utasítás címe
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

INT 21H

A
  • az int 21h-t szokás MS-DOS API-nakis hívni, mivel a legtöbb operációs rendszeri funkciót ezen keresztül tudjuk elérni
  • azt, hogy a szolgáltatásnak melyik al-funkciójátakarjuk használni, regiszterekben közöljük (pl. AH-ban)
  • Pl. karakter beolvasás, karakter kiírás, stringkiírás
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Gyakori utasítások áttekintése

A
  • MOV–adatmozgatás
  • ADD–összeadás
  • SUB–kivonás
  • CMP–összehasonlítás
  • JMP–feltétel nélküli vezérlés átadás
  • JZ, JNZ, JC, JNC, … -feltételes vezérlést átadó utasítások
  • PUSH, POP –vermet kezel utasítások
  • INT–megszakítási eljárás hívása
  • CALL, RET –szubrutin hívás
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

COM vs. EXE

A

•COM: a teljes program egy szegmensben van -64K (CP/M)
–Nincs fejlécük (header)
–Csak tisztán a futtatható kódot és a hozzáírt adatokat tartalmazzák
•EXE: külön kód, adat és veremszegmens, mindegyik lehet 64K (DOS)
–Van fejlécük (header)
–A fejléc alapján a DOS a programban szerepl címeketbetöltéskor át tudja írni, pl.: az adatszegmens címe