Օբյեկտային կոդ

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Jump to navigation Jump to search

Օբյեկտային կոդը (անգլ.՝ Object code) կամ երբեմն օբեյեկտային մոդուլը (անգլ.՝ object module) հանդիսանում է կոմպիլյատորի արդյունք[1]: Ընդհանուր առմամբ լեզվում օբյեկտային կոդը հրամանների հաջորդականություն է[2], սովորաբար այն մեքենայական լեզու է (օր՝բինար կոդ) կամ միջանկյալ լեզու, ինչպիսին է RTL -ը։

Օբյեկտային կոդը կարող է իր հերթին կապվել( անգլ.՝ linked) կատարվող ֆայլին կամ գրադարանային ֆայլին։ Օգտագործելու համար այն պետք է տեղադրվի կատարվող ֆայլի ( անգլ.՝ executable file), գրադարանային ֆայլի (անգլ.՝ library file) կամ օբյեկտային ֆայլի (անգլ.՝ object file) մեջ։

Օբյեկտային կոդը մեքենայական կոդի մի մասն է, որը դեռ չի կապվել ծրագրին։ Այն կոնկրետ գրադարանի կամ մոդուլի մեքենայական կոդ է, որը պատրաստում է վերջնական ծրագիր։ Այն կարող է նաև պարունակել ծրագրի մեքենայական կոդում չգտված լրացումներ (անգլ.՝ placeholders) կամ օֆսեթներ(անգլ.՝ offsets), որը լինկերը պետք է օգտագործի բոլորը իրար կապելու համար։ Քանի որ մեքենայական կոդը բինար կոդ է, այն կարող է կատարվել անմիջապես պրոցեսսորի(CPU) կողմից, օբյեկտային կոդը ունի մասամբ պարամետրավորված ցատկեր ( the jumps partially parameterized), այնպես որ լիկերը կարող է դրանք լրացնել:

Ասեմբլերն օգտագործվում է ասեմբեր կոդը մեքենայական կոդի փոխակերպելու (օբյեկտային կոդի): Լինկերը կապում է մի քանի օբյեկտային և գրադարանային ֆայլեր, կատարվող ֆայլը գեներացնելու համար։

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. «Compiler»։ TechTarget։ Վերցված է սեպտեմբերի 1, 2011։ «Traditionally, the output of the compilation has been called object code or sometimes an object module.» 
  2. Aho Alfred V., Sethi Ravi, Ullman Jeffrey D. (1986)։ «10 Code Optimization»։ Compilers: principles, techniques, and tools։ Computer Science։ Mark S. Dalton։ էջ 704։ ISBN 0-201-10194-7 

Հղումներ[խմբագրել | խմբագրել կոդը]