Alapvető digitális logikai áramkörök

Post on 13-Jan-2016

39 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Alapvető digitális logikai áramkörök Integrált áramkör ( IC , Integrated Circuit, chip, lapka) 5x5 mm 2 szilícium darab kerámia vagy műanyag lapon (tokban), lábakkal (pins). Négy alaptípus: SSI (Small Scale Integrated 1-10 kapu), MSI (Medium Scale ..., 10-100 kapu), - PowerPoint PPT Presentation

Transcript

Máté: Architektúrák 3. előadás 1

Alapvető digitális logikai áramkörök

Integrált áramkör (IC, Integrated Circuit, chip, lapka) 5x5 mm2 szilícium darab kerámia vagy műanyag lapon (tokban), lábakkal (pins). Négy alaptípus:

• SSI (Small Scale Integrated 1-10 kapu),

• MSI (Medium Scale ..., 10-100 kapu),

• LSI (Large Scale..., 100-100 000 kapu),

• VLSI (Very Large Scale ..., > 100 000 kapu).

Máté: Architektúrák 3. előadás 2

3.10. ábra SSI lapka négy NAND kapuval

Vcc: feszültség, GND: föld.

14 13 12 11 10 9 8

1 2 3 4 5 6 7

Vcc

GND

Bevágás

Máté: Architektúrák 3. előadás 3

Kívánalom: sok kapu – kevés láb

Kombinációs áramkörök

Definíció: A kimeneteket egyértelműen meghatározzák a pillanatnyi bemenetek.

Máté: Architektúrák 3. előadás 4

• Multiplexer: n vezérlő bemenet, 2n adatbemenet, 1 kimenet. Az egyik adatbemenet kapuzott (gated) a kimenetre (3.11-12. ábra).

C

D0

D1

D2

D3

D4

D5

D6

D7

A B

F

Sematikus rajza

Máté: Architektúrák 3. előadás 5

n vezérlő bemenetű multiplexerrel tetszés szerinti n változós Boole-függvény megvalósítható az adatbemenetek megfelelő választásával. Pl. a 3 változós többségi függvény:

Párhuzamos-soros átalakítás: vezérlő vonalakon rendre: 000, 001, … 111.

Máté: Architektúrák 3. előadás 6

multiplexer demultiplexer

• Demultiplexer: egy egyedi bemenetet irányít az n vezérlő bemenet értékétől függően a 2n kimenet egyikére

Máté: Architektúrák 3. előadás 7

dekódolódemultiplexer

• Dekódoló: n bemenet, 2n kimenet. Pontosan egy kimeneten lesz 1 (3.13. ábra). Demultiplexerrel: a bemenetet igazra állítjuk.

Máté: Architektúrák 3. előadás 8

KIZÁRÓ VAGY

(XOR eXclusive OR) kapu

A B X0 0 00 1 11 0 11 1 0

Igazság tábla:

Szimbolikus jelölése

A

BX

• Összehasonlító (comparator): (3.14. ábra)

Máté: Architektúrák 3. előadás 9

• Programozható logikai tömbök: PLA (3.15. ábra) (Programmable Logic Array).

0

1

49

0 1 5

A B L

12 bemenő jel

Ha ezt a biztosítékot kiégetjük, akkor nem jelenik meg B# az 1-es ÉS kapu bemenetén

Ha ezt a biztosítékot kiégetjük, akkor az 1-es ÉS kapu kimenete nem

jelenik meg az 5-ös VAGY kapu bemenetén

24 bemenő vonal

50 bemenő vonal

6 kimenet

Máté: Architektúrák 3. előadás 10

Máté: Architektúrák 3. előadás 11

Aritmetikai áramkörökA kombinációs áramkörökön belül külön csoportot alkotnak.

Léptető:

C=1: jobbra,

C=0: balraléptet.

Máté: Architektúrák 3. előadás 12

Összeadók:

Fél-összeadó (half adder, 3.17. ábra)

Máté: Architektúrák 3. előadás 13

Összeadók:

Teljes-összeadó (full adder, 3.18. ábra)

Máté: Architektúrák 3. előadás 14

Aritmetikai-logikai egység: bitszelet (bit slice, 3.19. ábra), F0, F1 -től függően ÉS, VAGY, NEGÁCIÓ vagy +

Máté: Architektúrák 3. előadás 15

• átvitel továbbterjesztő összeadó (ripple carry adder):

Máté: Architektúrák 3. előadás 16

• átvitel kiválasztó összeadó (carry select adder) eljárás:

Máté: Architektúrák 3. előadás 17

Nem kombinációs áramkörök

Óra (clock, 3.21. ábra): ciklusidő (cycle time). Pl.: 500 MHz - 2 nsec. Finomabb felbontás késleltetéssel.Aszimmetrikus óra.

késleltetés

AB

C

Máté: Architektúrák 3. előadás 18

Memória: „Emlékszik” az utolsó beállításra.

Tároló: Szint vezérelt (level triggered).

SR tároló (Set Reset latch, 3.22. ábra). Stabil állapot: a két kimenet 0, 1 vagy 1, 0. S (set), R (reset) bemenet. (Q# ≡ Q)

Máté: Architektúrák 3. előadás 19

Mindkét SR tároló indeterminisztikussá válna, ha S = R = 1 egyszerre fordulna elő.

Máté: Architektúrák 3. előadás 20

Az inverternek van egy pici (1-10 ns) késleltetése (Δ).

Máté: Architektúrák 3. előadás 21

Flip-flop: élvezérelt (edge triggered), D flip-flop: 3.26. ábra.

Máté: Architektúrák 3. előadás 22

3.27. ábra: Tárolók és flip-flopok

(a) CK=1, (b) CK=0 szint esetén írja be D-t,

(c) CK emelkedő, (d) CK lefelé menő élénél.

Sokszor S (set, PR preset), R (reset,CLR clear) be- és Q# kimenet is van.

D Q

CK

D Q

>CK

(a) (b)

tárolók

(c) (d)

flip-flopok

D Q

CK

D Q

>CK

CK: órajel

Máté: Architektúrák 3. előadás 23

3.28. ábra: (a) 2 független D flip-flop,

1 2 3 4 5 6 7

14 13 12 11 10 9 8

D Q

>CK Q#

CLR

PR

D Q

>CK Q#

CLR

PR

Vcc

GND

Máté: Architektúrák 3. előadás 24

3.28. ábra: (b) közös CK-val és CLR-rel vezérelt 8 bites D flip-flop: regiszter

20 19 18 17 16 15 14 13 12 11

1 2 3 4 5 6 7 8 9 10GND

Vcc

D Q

>CKCLR

D Q>CKCLR

D Q

>CKCLR

D Q>CKCLR

D Q

>CKCLR

D Q>CKCLR

D Q

>CKCLR

D Q>CKCLR

Máté: Architektúrák 3. előadás 25

Memória szervezése

Elvárás: szavak címezhetősége.

3.29. ábra: Négy db három bites szó. Bemenetek: három a vezérléshez, – CS (Chip Select): lapka választás, – RD (ReaD): 1: olvasás, 0: írás választása, – OE (Output Enable): kimenet engedélyezése.

kettő a címzéshez (dekódoló), három a bemenő adatoknak, három adat kimenet.

Máté: Architektúrák 3. előadás 26

3.29. ábra.

4 3-as memória

Máté: Architektúrák 3. előadás 27

Memória szervezése Az igazi memóriáknál a bemenet és kimenet közös

(kevesebb lábra van szükség): Nem invertáló és invertáló pufferek (ezek három állapotú eszközök, tri-state device, 3.30. ábra).

adat be adat ki

vezérlés

adat be adat ki

vezérlés

nem invertáló puffer invertáló puffer

magas

alacsony

Ha a vezérlő jel

magas

alacsony

Ha a vezérlő jel

Máté: Architektúrák 3. előadás 28

Memórialapkák Előnyös, ha a szavak száma 2 hatvány. 4 Mbit-es memória kétféle szervezése: 3.31. ábra.

A0 A1...

A18

D0 D1...

D7

512 K 8 bites

memória

(4 Mbit)

CS WE OE

A0 A1...

A10D

4096 K 1 bites

memória

(4 Mbit)

CS WE OE

RAS

CAS

19 cím, 8 adat vonal

11 cím, 1 adat vonalRow Address Strobe

Column Address Strobe

Máté: Architektúrák 3. előadás 29

Memórialapkák A jel (bemenet) beállított (asserted) vagy negált.

CS beállított: 1, de CS# beállított: 0

a) 512 K bájtos elrendezés: 19 cím, 8 adat vonal.

b) 2048*2048 bites elrendezés: 11 cím, 1 adat vonal: Bit kiválasztás sor- (RAS: Row Address Strobe) és oszlopindex CAS (Column ...) segítségével. Gyakran alkalmazzák nagyobb memóriáknál, bár a két cím megadása lassíthat.

Nagyobb memóriáknál 1, 4, 8, 16 bites kimeneteket is használnak.

Máté: Architektúrák 3. előadás 30

RAM (Random Access Memory) • Statikus RAM (SRAM). D flip-flop elemekből épül fel.

Amíg áram alatt van, tartja a tartalmát. Elérési idő: néhány nsec (cache-nek jók).

• Dinamikus RAM (DRAM): minden bit egy tranzisztor és egy kondenzátor: néhány msec-onként frissíteni kell, de nagyobb adatsűrűség érhető el. Elérési idő: néhány tíz nsec (főmemóriák). - régi: FPM (Fast Page Mode) sor-, oszlopcím.- újabb: EDO (Extended Data Output) lehet új

memóriahivatkozás, mielőtt az előző befejeződik.• SDRAM (Synchronous DRAM). A központi óra vezérli.

Blokkos átvitel. Újabban: DDR (Double Data Rate). Az órajel föl- és lefutó élénél is van adatátvitel.

Máté: Architektúrák 3. előadás 31

ROM (Read-Only Memory)ROM: gyárilag kialakított tartalom.PROM (Programmable ROM): a tartalom

biztosítékok kiégetésével alakul ki (a PLA-khoz hasonlóan, 3.15. ábra).

EPROM (Erasable PROM): a biztosítékok speciális fénnyel kiolvaszthatók és „kijavíthatók”.

EEPROM: elektromos impulzusokkal.Flash memória: törlés és újraírás csak blokkonként.

Kb. 100 000 használat után „elkopnak”. Ilyen van a legtöbb MP3 lejátszóban, digitális fényképezőgépben …

Máté: Architektúrák 3. előadás 32

512 MB-os flash memória (2006)

Máté: Architektúrák 3. előadás 33

1 GB-os flash memória (2007)

Máté: Architektúrák 3. előadás 34

Az I8086/8088 utasítás rendszereJelőlések : értékadás : felcserélésop, op1, op2: tetszőlegesen választható operandus

(közvetlen, memória vagy regiszter). op1 és op2 közül az egyik regiszter kell legyen!reg: általános, bázis vagy index regisztermem: memória operandusipr: (8 bites) IP relatív cím port: port cím (8 bites eltolás vagy DX)[op]: az op által mutatott cím tartalma

Máté: Architektúrák 3. előadás 35

Adat mozgató utasítások Nem módosítják a flag-eket (kivéve POPF és SAHF)

MOV op1, op2 ; op1 op2 (MOVe)XCHG op1, op2 ; op1 op2 (eXCHanGe), op2 sem

; lehet közvetlen operandusXLAT ; AL [BX+AL] (trans(X)LATe), a

; BX által címzett maximum 256 byte-; os tartomány AL-edik byte-jának ; tartalma lesz AL új tartalma

LDS reg, mem ; reg mem, mem+1; DS mem+2, mem+3 (Load DS)

LES reg, mem ; reg mem, mem+1; ES mem+2, mem+3 (Load ES)

LEAreg, mem ; reg mem effektív (logikai) címe ; (Load Effective Address)

Máté: Architektúrák 3. előadás 36

A veremmel (stack-kel) kapcsolatos adat mozgató utasítások:

PUSH op ; SP SP-2; (SS:SP) op

PUSHF ; (PUSH Flags)

; SP SP-2; (SS:SP) STATUS

POP op ; op (SS:SP); SP SP+2

POPF ; (POP Flags)

; STATUS (SS:SP); SP SP+2

Az Intel 8080-nal való kompatibilitást célozza az alábbi két utasítás:

SAHF ; STATUS alsó 8 bitje AH

LAHF ; AH STATUS alsó 8 bitje

Máté: Architektúrák 3. előadás 37

Aritmetikai utasításokADD op1, op2 ; op1 op1 + op2 (ADD)

Pl.: előjeles/előjel nélküli számok összeadása MOV AX, -1 ; AX=-1 (=0FFFFH)ADD AX, 2 ; AX=1, C=1, O=0

ADC op1, op2 ; op1 op1 + op2 + C ; (ADD with Carry)

Pl.: két szavas összeadás (előjeles/előjel nélküli)ADD AX, BXADC DX, CX ; (DX:AX) = (DX:AX) +

(CX:BX)

INC op ; op op + 1, C változatlan! (INCrement)

Máté: Architektúrák 3. előadás 38

SUB op1, op2 ; op1 op1 - op2 (SUBtraction)

CMP op1, op2 ; flag-ek op1 - op2 szerint (CoMPare)

SBB op1, op2 ; op1 op1 - op2 – C:

; a több szavas kivonást segíti.

DECop ; op op - 1, C változatlan ; (DECrement)

NEG op ; op -op (NEGate)

Máté: Architektúrák 3. előadás 39

Az összeadástól és kivonástól eltérően a szorzás és osztás esetében különbséget kell tennünk, hogy előjeles vagy előjel nélküli számábrázolást alkalmazunk-e. További lényeges eltérés, hogy két 8 bites vagy 16 bites mennyiség szorzata ritkán fér el 8 illetve 16 biten, ezért a szorzás műveletét úgy alakították ki, hogy 8 bites tényezők szorzata 16, 16 biteseké pedig 32 biten keletkezzék:

Szorzásnál op nem lehet közvetlen operandus!

MUL op ; előjel nélküli szorzás (MULtiplicate),

IMUL op ; előjeles szorzás (Integer MULtiplicate).

Ha op 8 bites AX AL op.

Ha op 16 bites (DX:AX) AX op.

Máté: Architektúrák 3. előadás 40

Osztásnál op nem lehet közvetlen operandus!

DIV op ; (DIVide) előjel nélküli osztás,IDIV op ; (Integer DIVide) előjeles osztás,

; A nem 0 maradék előjele megegyezik; az osztóéval.

Ha op 8 bites: AL AX/op hányadosa,AH AX/op maradéka.

Ha op 16 bites: AX (DX:AX)/op hányadosa,DX (DX:AX)/op maradéka.

Osztásnál túlcsordulás azonnal elhal (abortál) a programunk!

Máté: Architektúrák 3. előadás 41

Ha bájtot bájttal vagy szót szóval akarunk osztani, akkor:• Előjel nélküli osztás előkészítése AH illetve DX

nullázásával történik. • Előjeles osztás előkészítésére szolgál az alábbi két előjel

kiterjesztő utasítás: CBW ; (Convert Byte to Word)

; AX AL előjel helyesenCWD ; (Convert Word to Double word)

; (DX:AX) AX előjel helyesen Pozitív számok esetén (az előjel 0) az előjel kiterjesztés az AH illetve a DX regiszter nullázását, negatív számok esetén (az előjel 1) csupa 1-es bittel való feltöltését jelenti.

Az előjel kiterjesztés máskor is alkalmazható.

Máté: Architektúrák 3. előadás 42

; Két vektor skalár szorzata. 1. változat

code segment para public ’code’

assume cs:code, ds:data, ss:stack, es:nothing

skalar proc far

push ds ; visszatérési cím a verembe

xor ax,ax ; ax 0

push ax ; visszatérés offset címe

mov ax,data ; ds a data szegmensre mutasson

mov ds,ax ; sajnos „mov ds,data”

; nem megengedett

; A

Máté: Architektúrák 3. előadás 43

mov cl,n ; cl n, 0 n 255

xor ch,ch ; cx = n szavasan

xor dx,dx ; az eredmény ideiglenes helye

JCXZ kesz ; ugrás a kesz címkére,

; ha CX (=n) = 0

xor bx,bx ; bx 0,

; bx-et használjuk indexezéshez

Máté: Architektúrák 3. előadás 44

ism: mov al,a[bx] ; al a[0], később a[1], ...

imul b[bx] ; ax a[0]b[0], a[1]b[1], ...

add dx,ax ; dx részösszeg

inc bx ; bx bx+1, az index növelése

; B

dec cx ; cx cx-1, (vissza)számlálás

JCXZ kesz ; ugrás a kész címkére, ha cx=0

jmp ism ; ugrás az ism címkére

kesz: mov ax,dx ; a skalár szorzat értéke ax-ben

; C

Máté: Architektúrák 3. előadás 45

call hexa ; az eredmény kiírása

; hexadecimálisan

mov si,offset kvse ; kocsi vissza soremelés

call kiiro ; kiírása

ret ; vissza az Op. rendszerhez

skalar endp ; a skalár eljárás vége

; D

Máté: Architektúrák 3. előadás 46

hexa proc ; ax kiírása hexadecimálisanxchg ah,al ; ah és al felcserélésecall hexa_b ; al (az eredeti ah) kiírásaxchg ah,al ; ah és al visszacserélésecall hexa_b ; al kiírásaret ; visszatérés

hexa endp ; a hexa eljárás vége; ----------------------------------------------------------hexa_b proc ; al kiírása hexadecimálisan

push cx ; mentés a verembemov cl,4 ; 4 bit-es rotálás előkészítéseROR al,CL ; az első jegy az alsó 4 bitencall h_jegy ; az első jegy kiírása ROR al,CL ; a második jegy az alsó 4 bitencall h_jegy ; a második jegy kiírása pop cx ; visszamentés a verembőlret ; visszatérés

hexa_b endp ; a hexa_b eljárás vége

Máté: Architektúrák 3. előadás 47

h_jegy proc ; hexadecimális jegy kiírásapush ax ; mentés a verembeAND al,0FH ; a felső 4 bit 0 lesz,

; a többi változatlanadd al,’0’ ; + 0 kódjacmp al,’9’ ; 9 ?JLE h_jegy1 ; ugrás h_jegy1 -hez, ha igenadd al,’A’-’0’-0AH ; A-F hexadecimális jegyek

; kialakításah_jegy1: mov ah,14 ; BIOS szolgáltatás előkészítése

int 10H ; BIOS hívás: karakter kiíráspop ax ; visszamentés a verembőlret ; visszatérés

h_jegy endp ; a hexa_b eljárás vége

Máté: Architektúrák 3. előadás 48

kiiro proc ; szöveg kiírás (DS:SI)-tőlpush axcld

ki1: lodsb ; ala következő karaktercmp al, 0 ; al =? 0je ki2 ; ugrás a ki2 címkéhez, ha al=0mov ah,14 ; BIOS rutin paraméterezéseint 10H ; az AL-ben lévő karaktert

; kiírja a képernyőrejmp ki1 ; a kiírás folytatása

ki2: pop axret ; visszatérés a hívó programhoz

kiiro endp ; a kiíró eljárás vége; ----------------------------------------------------------code ends ; a code szegmens vége

Máté: Architektúrák 3. előadás 49

data segment para public ’data’n db 3a db 1, 2, 3b db 3, 2, 1kvse db 13, 10, 0 ; kocsi vissza, soremelésdata ends ; a data szegmens vége; ==========================================stack segment para stack ’stack’

dw 100 dup (?) ; 100 word legyen a veremstack ends ; a stack szegmens vége; ==========================================

end skalar ; modul vége, ; a program kezdő címe: skalar

Máté: Architektúrák 3. előadás 50

Vezérlés átadó utasítások

Eljárásokkal kapcsolatos utasítások

Eljárás hívás:

CALL op ; eljárás hívás

- közeli: push IP, IP op,

- távoli: push CS, push IP, (CS:IP) op.

Visszatérés az eljárásból:

RET ; visszatérés a hívó programhoz (RETurn)

- közeli: pop IP,

- távoli: pop IP, pop CS.

RET op ; . . . , SP SP+op

; op csak közvetlen adat lehet!

Máté: Architektúrák 3. előadás 51

Feltétlen vezérlés átadás (ugrás)

JMP op ; ha op közeli: IP op,

; ha távoli: (CS:IP) op.

Máté: Architektúrák 3. előadás 52

Feltételes ugrások, aritmetikai csoport

Előjeles Reláció Előjel nélküli

JZ ≡ JE = JZ ≡ JE

JNZ ≡ JNE ≠ JNZ ≡ JNE

JG ≡ JNLE > JA ≡ JNBE

JGE ≡ JNL ≥ JAE ≡ JNB ≡ JNC

JL ≡ JNGE < JB ≡ JNAE ≡ JC

JLE ≡ JNG ≤ JBE ≡ JNA

A feltételek: Zero, Equal, No (Not), Greater, Less, Above, Below, Carry

Máté: Architektúrák 3. előadás 53

A feltételek: Zero, Equal, No (Not), Carry, Sign, Overflow, Parity Even, Parity Odd.

Feltételes ugrások, logikai csoport

a flag igaz (1) flag a flag hamis (0)

JZ ≡ JE Zero JNZ ≡ JNE

JC Carry JNC

JS Sign JNS

JO Overflow JNO

JP ≡ JPE Parity JNP ≡ JPO

JCXZ CX = 0

Máté: Architektúrák 3. előadás 54

Minden feltételes vezérlés átadás IP relatív címzéssel (SHORT) valósul meg!

Pl.:

JZ MESSZE ; Hibás, ha

; MESSZE messze van

Megoldás:

JNZ IDE ; Negált feltételű ugrás

JMP MESSZE

IDE: . . .

Máté: Architektúrák 3. előadás 55

Ciklus szervező utasítások

IP relatív címzéssel (SHORT) valósulnak meg.

LOOP ipr ; CX CX – 1, ugrás ipr -re,

; ha CX 0

LOOPZ ipr ; CX CX – 1, ugrás ipr -re,

; ha (CX 0 és Z=1)

LOOPE ipr ; ugyanaz mint LOOPZ

LOOPNZ ipr ; CX CX – 1, ugrás ipr -re,

; ha (CX 0 és Z=0)

LOOPNE ipr ; ugyanaz mint LOOPNZ

Máté: Architektúrák 3. előadás 56

FeladatokMit nevezünk kombinációs áramkörnek?Milyen kombinációs áramköröket ismer?Milyen be- és kimenetei vannak a multiplexernek, a

demultiplexernek, a dekódolónak?Mire használható a multiplexer, és hogyan?Mire használható a PLA, és hogyan?Milyen aritmetikai áramköröket ismer?Hogy működik a léptető?Hogy működik a „fél összeadó”? Mi indokolja a „fél összeadó” elnevezést?

Máté: Architektúrák 3. előadás 57

Feladatok

Hogy épül fel a teljes összeadó?

Milyen részei vannak az ALU-nak?

Milyen be- és kimenetei vannak az 1 bites ALU-nak?

Milyen műveletek végezhetők el az ALU-val?

Hogy működik az átvitel továbbterjesztő/kiválasztó összeadó?

Máté: Architektúrák 3. előadás 58

FeladatokHogy érhetünk el az órajelnél finomabb időzítést?Milyen nem kombinációs áramköröket ismer?Kombinációs áramkör-e az ALU?Hogyan csökkenthető az összeadásnál az átvitelekből

származó idő?Hány stabil állapota van az SR tárolónak?Mi a különbség az SR és az időzített SR tároló között?Mi a különbség az SR és D tároló között?Mi a pulzusgenerátor, és mi a működési elve?Mi a különbség a tároló és a flip-flop között?

Máté: Architektúrák 3. előadás 59

FeladatokHogy működik az invertáló és a nem invertáló puffer?Miért használnak a memóriáknál invertáló vagy nem

invertáló puffert?Hogy címezhető meg n címlábon 2n nél nagyobb

memória?Mit jelent, hogy a CS/CS# bemenet beállított/negált?Mi a RAM?Milyen elemekből épül fel a SRAM?Milyen elemekből épül fel a DRAM?Hogy működik a DRAM?

Máté: Architektúrák 3. előadás 60

Feladatok

Hogy működik az SDRAM?

Mit jelent az FPM rövidítés?

Mit jelent az EDO rövidítés?

Hogy működik a DDR?

Mit jelent a ROM rövidítés?

Hogy működik az EPROM?

Hogy működik az EEPROM?

Milyen memória van a legtöbb fényképezőgépben?

Máté: Architektúrák 3. előadás 61

Feladatok

Milyen adat mozgató utasításokat ismer? Hogy működnek?

Milyen aritmetikai utasításokat ismer? Hogy működnek?

Mit csinál az IDIV utasítás?

Mit csinál az CWD utasítás?

Miért hibás az

imul [di+bx]

utasítás?

Máté: Architektúrák 3. előadás 62

Feladatok

Írjon program részletet a/b kiszámítására, feltéve, hogy a és b előjeles/előjel nélküli bájt/word!

Írjon program részletet a/b kiszámítására, feltéve, hogy a előjeles és b előjel nélküli bájt/word!

Írjon program részletet a/b kiszámítására, feltéve, hogy a előjeles bájt és b előjeles word!

Írjon program részletet a/b kiszámítására, feltéve, hogy a előjeles bájt és b előjel nélküli word!

Írjon program részletet a/b kiszámítására, feltéve, hogy a előjeles word és b előjel nélküli bájt!

Máté: Architektúrák 3. előadás 63

FeladatokMelyik az eljárást hívó utasítás?Hova helyezi el a visszatérési címet a CALL utasítás?Mi a különbség a közeli és távoli eljárás hívás között?Meghívható-e egy közeli/távoli eljárás másik

szegmensből?Honnan „tudja” a CALL utasítás, hogy közeli vagy

távoli a hívott eljárás?Honnan „tudja” a RET utasítás, hogy közeli vagy

távoli ugrással kell visszatérni az eljárásból?Mi történik RET 4 hatására?Mi történik CALL FAR 8[BX][SI] hatására?

Máté: Architektúrák 3. előadás 64

FeladatokMilyen a feltételes ugró utasítások címzési módja?Mi a különbség a JA és JG utasítás között?Sorolja fel az aritmetikai csoportba tartozó feltételes

ugró utasításokat!Írjon programrészletet, amely az A, B, C címkéhez

ágazik el aszerint, hogy AX <, = vagy > 0!Írjon programrészletet, amely az A, B, C címkéhez

ágazik el aszerint, hogy X <, = vagy > Y! X előjeles, Y előjel nélküli bájt.

A program JCXZ A utasítása hibás, mert az A címke túl messze van. Hogy javítható a hiba?

Máté: Architektúrák 3. előadás 65

FeladatokMilyen ciklus szervező utasításokat ismer? Hogy

működnek?Mi a különbség a LOOP és a LOOPZ utasítás között?Írjon programrészletet az 50 elemű, szavakból álló A

tömb első 0 elemének megtalálására!Írjon programrészletet az 50 elemű, szavakból álló A

tömb utolsó 0 elemének megtalálására!Írjon programrészletet az 50 elemű, bájtokból álló A

tömbben található a betűk megszámlálására!Hibás a LOOPNE A utasítás, mert az A címke túl

messze van. Hogy javítható a hiba?

top related