Cod obiect

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

În informatică , codul obiect (sau fișierul obiect) este traducerea codului sursă în limbajul mașinii (binar), ușor de înțeles de computer . Codul obiect este generat automat de un program special numit compilator ; este apoi transmis unui linker care generează cod executabil . Acești doi pași sunt uneori îmbinați într-unul singur, numit în general compilare

Descriere

Schema de operare a unui compilator
Pictogramă lupă mgx2.svg Același subiect în detaliu: Cod sursă , Compilație și Linker .

În timp ce programul sursă corespunde, dacă vrem să facem o comparație, cu proiectul unei case, programul obiect corespunde casei în sine, care este utilizată. Obiectul fișier este , prin urmare, în ochii utilizatorului, programul care rulează pe calculator . Conținutul codului obiectului este specific atât în ​​funcție de tipul de computer utilizat, cât și în funcție de compilatorul sau limbajul folosit pentru a-l genera. În general, codurile de obiecte pentru diferite computere nu pot fi schimbate și nici nu este posibil să se amestece coduri de obiecte generate de diferite compilatoare (există multe excepții de la această ultimă regulă).

Codurile obiectelor se găsesc de obicei grupate în fișiere obiect care conțin o serie de funcții strâns legate, cum ar fi o serie de operații matematice. Acest lucru permite să aveți un număr gestionabil de fișiere obiect, printre care utilizatorul va alege un set limitat pentru programul său. Astfel de fișiere obiect sunt adesea numite biblioteci , dintre care există mai multe tipuri.

Codul obiect este compus în mod normal din cod executabil , plus o serie de informații care permit linkerului să-l combine, dacă este necesar, cu alte coduri obiect pentru a genera un program de lucru. Aceste informații sunt inserate în cea mai mare parte în decorarea funcțiilor prezente în codul obiectului.

Cine are doar fișierul obiect îl poate folosi, dar, în general, nu poate urmări codul sursă care l-a generat ( software proprietar ) dacă acesta nu este distribuit în mod liber de către dezvoltator ( software gratuit ). În general, analiza codului obiect pentru a-i urmări funcțiile (dacă acestea nu sunt cunoscute) este, dacă nu imposibilă, cel puțin foarte dificilă și este o ramură a ingineriei inverse .

Elemente conexe