Lucrarea de laborator – Instructiuni de transfer intre registre
2.1 Elemente ale limbajului de asamblare
Programul sursa este format dintr-un numar de linii, care pot fi:
• Directive de asamblare
• Etichete si declaratii de simboluri
• Comentarii
• Linii de instructiuni
O linie de instructiune a programului sursa are urmatoarea structura:
{Eticheta :}_Mnemonic_ {Prefix}_Operand1 {,{Prefix} Operand2}_{; Comentariu}
unde:
• Parantezele acolade indica un cimp optional;
• Semnul _ indica un separator, care poate fi format din spatii sau tab-uri; Intre Operand1 si Operand2, separatorul este de regula o virgula;
• Eticheta este un grup de caractere care incepe cu o litera si nu coincide cu un cuvint rezervat. Ea trebuie urmata de semnul “:” atunci cind se afla la inceputul liniei. Cind este referita ca operand (de exemplu la o instructiune de salt) , ea nu mai este urmata de acest semn. Exemple: Eticheta1, Loop15, Salt, Label, L22, etc.
• Mnemonicul este o prescurtare a descrierii instructiunii si este conform cu setul de instructiuni al procesorului;
• Operandul poate fi un nume de registru, o constanta numerica (date sau adrese), sau o eticheta, conform descrierii instructiunii respective;
• Prefixele dau precizari suplimentare despre operanzi, conform descrierii instructiunii respective;
• Comentariul este optional si trebuie precedat de semnul “;” . Tot ceea ce urmeaza pe o linie dupa acest semn este ignorat de asamblor.
Toate programele care urmeaza a fi asamblate cu macroasamblorul TASM vor avea o parte de preambul minimala, de forma:
.model small
.stack 100h
.code
start:
--------------
Primele trei liniii sunt directive de asamblare, care declara cantitatea de memorie folosita, pozitia stivei, si inceputul segmentului de cod. A patra linie este eticheta de intrare in program acesta incheindu-se cu declaratia END eticheta_de_intrare.
Finalizarea se poate face cu o linie de bucla infinita si cu directiva end, de forma
Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.