Etichetă (programare)

Etichetă ( etichetă în engleză  ) - un nume simbolic, un identificator pentru indicarea mai convenabilă a datelor și a codului în limbaje de programare . Permite programatorului să facă fără calcularea și recalcularea adreselor și a decalajelor în cadrul programului ( compilatorul efectuează aceste acțiuni pentru el ). În ciuda faptului că majoritatea limbajelor de programare de nivel înalt acceptă operațiuni de etichetare, utilizarea lor este extrem de nedorită, deoarece codul programului devine slab lizibil, iar depanarea unui astfel de program durează mai mult timp.

La compilare, fiecare etichetă este asociată cu o anumită adresă (număr), care este introdusă în modulul executabil. Astfel, dacă este necesar, compilatorul poate calcula offset-ul dintre semne (diferența de adresă).

În majoritatea limbajelor de programare, formatul etichetei este următorul:

nume eticheta:

Mai întâi vine numele etichetei (scris și după anumite reguli – în funcție de limbajul de programare), apoi două puncte, apoi codul sau datele care vor fi accesate după numele etichetei.

Exemplu

;… mov eax , offset data jmp label_2 label_1: ;… label_2: ;… data: db „Bună ziua ! , 0

În timpul asamblarii , eticheta de date va fi mapată la un număr (adresa primului octet al șirului „Bună ziua!”) și în loc de „date offset”, acest număr va fi scris pe prima linie.

În a doua linie a exemplului, se face un salt necondiționat la instrucțiunile după eticheta label_2. Dacă adresa este absolută (adică argumentul comenzii de salt este adresa însăși), atunci a doua linie va conține adresa etichetei label_2 în loc de label_2. Dacă tranziția este relativă (setată printr-un offset față de eticheta curentă), atunci label_2 din aceeași (a doua) linie va fi înlocuită cu diferența de adresă (label_2 - label_1), adică offset-ul dintre etichete.

Vezi și