Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  
BulgaraCeha slovacaCroataEnglezaEstonaFinlandezaFranceza
GermanaItalianaLetonaLituanianaMaghiaraOlandezaPoloneza
SarbaSlovenaSpaniolaSuedezaTurcaUcraineana

įstatymaiįvairiųApskaitosArchitektūraBiografijaBiologijaBotanikaChemija
EkologijaEkonomikaElektraFinansaiFizinisGeografijaIstorijaKarjeros
KompiuteriaiKultūraLiteratūraMatematikaMedicinaPolitikaPrekybaPsichologija
ReceptusSociologijaTechnikaTeisėTurizmasValdymasšvietimas

Darbo su paprogramėmis komandos

kompiuteriai



+ Font mai mare | - Font mai mic



DOCUMENTE SIMILARE



Darbo su paprogramėmis komandos

Šios komandos skirtos pereiti į paprogramź bei grįžti iš jos bes¹lygiškai ir įvykdžius s¹lyg¹. Komandos požymių nekeičia. Grupź sudaro 18 bazinių komandų, kurių s¹rašas pateiktas 6 lentelėje. Kreipimosi į paprogrames komandos naudoja tiesioginį adresavim¹.



6 lentelė. Mikroprocesoriaus I8085  kreipimosi į paprogrames ir grįžimo komandos

Eil.

Nr.

Komandos

mnemonika

Požymiai

Baitai

Taktai

Komandos

komentaras

S Z AC P CY

CALL ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, bes¹lygiškai

CNZ ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai Z=0

CZ ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai Z=1

CNC ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai CY=0

CC ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai CY=1

CPO ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai P=0

CPE ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai P=1

CP ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai S=0

CM ADR

─ ─ ─ ─ ─

M[SP] ← PC, PC ← ADR, kai S=1

RET

─ ─ ─ ─ ─



PC ← M[SP], bes¹lygiškai

RNZ

─ ─ ─ ─ ─

PC ← M[SP], kai Z=0

RZ

─ ─ ─ ─ ─

PC ← M[SP], kai Z=1

RNC

─ ─ ─ ─ ─

PC ← M[SP], kai CY=0

RC

─ ─ ─ ─ ─

PC ← M[SP], kai CY=1

RPO

─ ─ ─ ─ ─

PC ← M[SP], kai P=0

RPE

─ ─ ─ ─ ─

PC ← M[SP], kai P=1

RP

─ ─ ─ ─ ─

PC ← M[SP], kai S=0

RM

─ ─ ─ ─ ─

PC ← M[SP], kai S=1

– taktų skaičius, kai s¹lyga neįvykdyta / taktų skaičius, kai s¹lyga įvykdyta.

Kreipimosi į paprogrames komandų mnemonika prasideda C (angl. Call, kreipimasis) raide, o grįžimo iš paprogramių R (angl. Return, grįžimas) raide.

Pagal vykdomus veiksmus kreipimosi į paprogrames komandos visiškai atitinka valdymo perdavimo (nukreipimo) komandas. Vienintelis skirtumas, kad prieš atliekant veiksm¹, kreipimosi į paprogrames komandose, programos skaitiklio PC turinys (grįžimo adresas) įrašomas į dėklo atmintį. Todėl, taikant programoje darbo su paprogramėmis komandas, būtina iš anksto nustatyti dėklo atminties rodiklį. Be to s¹lyginių komandų mnemonikos skiriasi tik pirm¹ja raide, kuri kreipimosi į paprogrames komandose yra C (angl. Call), o valdymo perdavimo komandose J (angl. Jump).

Grįžimo iš paprogramių komandų veiksmai yra vienodi – grįžimo adreso (įsiminto dėklo atmintyje PC turinio) rašymas į PC. S¹lyginėms grįžimo komandoms galioja tos pačios s¹lygos, kaip ir kreipimosi į paprogrames bei valdymo perdavimo komandoms.

Šios grupės CALL ir RET komandų tipinio panaudojimo pavyzdys atrodo taip:

LXI SP, D16 ;SP D16, SP pradinis nustatymas, D16 – 2 baitų TOS adresas

. . . . . . . . . . ;programa

M1:  CALL MP ;M[SP] PC = M2, PC MP

M2:  . . . . . . . . . . ;programa

MP:  PUSH PSW ;M[SP] PSW

PUSH BC ;M[SP] BC

PUSH DE ;M[SP] DE

PUSH HL ;M[SP] HL

. . . . . . . . . . ;paprogramės turinys (kūnas)

POP HL ;HL M[SP]

POP DE ;DE M[SP]

POP BC ;BC M[SP]

POP PSW ;PSW M[SP]

MG:  RET ;PC M[SP], PC = M2

Prieš pradedant kreiptis į paprogramź (es), LXI SP, D16 (SPHL) komanda nustatomas dėklo atminties rodiklis, kuris rodo dėklo viršūnės (TOS) adres¹. Paprastai dėklo atminties pradžia yra didžiausias galimas atminties lauko adresas (pvz., FFFFH). M1: programos vietoje vykdoma kreipimosi į paprogramź komand¹, t.y. į dėklo atmintį, pradedant adresu SP-1, įrašomas PC turinys, kuris lygus M2: adresui (grįžimo adresui). Po to į PC įrašomas MP (paprogramės pradžios adresas, nurodytas jos komandoje, kaip 2 –asis ir 3 – asis baitai). Pereinama į paprogramės pradži¹ (MP programos viet¹). Paprogramėje, PUSH PSW, PUSH BC, PUSH DE, PUSH HL komandomis mikroprocesoriaus registrų turinys (kontekstas) įsimenamas dėklo atmintyje. Toliau vykdomos komandos, įrašytos paprogramės turinyje (kūne). Čia, gali būti atliekamos bet kokios komandos, pagal t¹ patį scenarijų pereinama į kitas paprogrames, naudojamos PUSH, POP komandos, pastarųjų skaičius turi būti vienodas. Prieš baigiant darb¹ paprogramėje, POP HL, POP DE, POP BC, POP PSW komandomis atvirkščia tvarka MP registrų turinys (kontekstas) atstatomas, skaitant duomenis iš dėklo atminties. Paprogramės gale (MG programos vietoje) vykdoma RET (grįžimo) komanda, kuri iš dėklo atminties 2 baitus perkelia į PC. Šie duomenys yra M2 grįžimo adresas. Pereinama į M2 programos viet¹ ir pradedama vykdyti šioje vietoje įrašyta komanda. 





Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 596
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved