ഒബ്ജക്റ്റ് കോഡ്
കമ്പ്യൂട്ടിങ്ങിൽ, ഒബ്ജക്ട് കോഡ് അല്ലെങ്കിൽ ഒബ്ജക്ട് മോഡ്യൂൾ എന്നാൽ അസെംബ്ലർ അല്ലെങ്കിൽ കംപൈലർ നിർമിക്കുന്ന ഔട്ട്പുട്ടാണ്. ഇത് പ്രവർത്തനക്ഷമമായ പ്രോഗ്രാമായി പരിവർത്തനം ചെയ്യുന്നതിന്റ ഭാഗമായി യന്ത്രഭാഷയിലേക്ക് പരിഭാഷപ്പെടുത്തപ്പെടുന്നു[1].
ഓബ്ജക്ട് കോഡ് എന്നത് കംപ്യൂട്ടർ പ്രവർത്തനത്തിന് ആവശ്യമായ നിർദ്ദേശങ്ങളുടേയും കോഡിന്റേയും ഒരു ക്രമമാണിത്. ഇത് സാധാരണയായി മെഷീൻ ഭാഷയിലോ (ബൈനറി കോഡ്) അല്ലെങ്കിൽ രജിസ്റ്റർ ട്രാൻസ്ഫർ ലാംഗ്വേജ് (RTL) പോലുള്ള ഇന്റർമീഡിയറ്റ് ഭാഷയിലോ ഉണ്ടാകും (Intermediate Language (IL) എന്നാൽ, ഇത് ഒരു കോഡിന്റെ ഇടക്കാല രൂപമാണ്. സാധാരണ പ്രോഗ്രാമുകൾ IL ആയി മാറ്റുന്നു, പിന്നീട് അത് കമ്പ്യൂട്ടർ അതിനെ യന്ത്രഭാഷയിലേക്ക് മാറ്റും. ഇത് പ്രോഗ്രാമുകളെ വിവിധ കമ്പ്യൂട്ടറുകളിൽ പ്രവർത്തിക്കാൻ സഹായിക്കുന്നു.)[2]. കമ്പ്യൂട്ടറിൽ എഴുതി കിട്ടുന്ന കോഡ് ഒരു പ്രോഗ്രാമിന്റെ അവസാന റിസൾട്ടാണെന്ന് കാണിക്കുന്നു. ആദ്യകാലത്ത്, ഈ കോഡിനെ "സബ്ജക്റ്റ് പ്രോഗ്രാം" എന്നു വിളിച്ചിരുന്നു.
വിശദാംശങ്ങൾ
തിരുത്തുകഒബ്ജക്റ്റ് ഫയലുകൾ ചേർത്ത് പ്രവർത്തിക്കുന്ന ഫയലുകളായി (എക്സിക്യൂട്ടബിൾ) മാറ്റാം. ഇത് ഉപയോഗിക്കാനായി, കോഡ് പ്രവർത്തനക്ഷമമായ ഫയലിൽ അല്ലെങ്കിൽ ഒരു ലൈബ്രറിയിൽ സേവ് ചെയ്യണം. ഓബ്ജക്റ്റ് കോഡ് എന്നത് മെഷീൻ കോഡിന്റെ ഒരു ഭാഗമാണ്, അത് ഇതുവരെ പൂർണ്ണമായ പ്രോഗ്രാമുമായി ബന്ധിപ്പിച്ചിട്ടില്ല. ഒബ്ജക്റ്റ് കോഡ് ഒരു ചെറിയ കോഡ് സെറ്റാണ്, ഒരു പ്രോഗ്രാമിന്റെ ഭാഗം മാത്രമായാണ് ഇത് പ്രവർത്തിക്കുക. ഉദാഹരണത്തിന്, ഒരു ലൈബ്രറി (വ്യത്യസ്ത ഫംഗ്ഷനുകൾ അടങ്ങുന്ന കോഡ് കളക്ഷൻ) അല്ലെങ്കിൽ ഒരു മോഡ്യൂൾ (പ്രോഗ്രാമിന്റെ ചെറിയ വിഭാഗം) ഉണ്ടാക്കാൻ ഇത് ഉപയോഗിക്കും. ഈ ഒറ്റപ്പെട്ട ഭാഗങ്ങൾ കൂട്ടിയെടുത്താൽ മാത്രം, പ്രോഗ്രാമിന്റെ പൂർണ്ണ പ്രവർത്തനശേഷിയുള്ള രൂപം ലഭിക്കും.
ഓബ്ജക്ട് കോഡ് പ്രോഗ്രാമിന്റെ മുഴുവൻ ഭാഗമാക്കി ലിങ്ക് ചെയ്യപ്പെടാത്ത മെഷീൻ കോഡിന്റെ ഭാഗമാണ്. ഇത് കമ്പൈലർ സൃഷ്ടിക്കുന്ന ഇടക്കാല ഫയലായി കാണാം. ഓബ്ജക്ട് കോഡ് ഒരു പ്രത്യേക ലൈബ്രറി അല്ലെങ്കിൽ മോഡ്യൂളിനായി സൃഷ്ടിച്ച മെഷീൻ കോഡാണ്, ഇതാണ് പ്രോഗ്രാമിന്റെ ഭാഗമാകുന്നത്. ഓബ്ജക്ട് കോഡിൽ പ്ലേസ്ഹോൾഡറുകൾ അല്ലെങ്കിൽ ഓഫ്സെറ്റുകൾ ഉണ്ടാകാം, അവ ലിങ്കർ ഉപയോഗിച്ച് പ്രോഗ്രാമിന്റെ എല്ലാ ഭാഗങ്ങളും ബന്ധിപ്പിക്കാൻ സഹായിക്കുന്നു. മെഷീൻ കോഡ് സിപിയുവിൽ നേരിട്ട് പ്രവർത്തിപ്പിക്കാവുന്ന കോഡാണ്. ഓബ്ജക്ട് കോഡ് തൽക്കാലം പൂർണ്ണമല്ലാത്ത കോഡാണ്, ലിങ്കർ ഉപയോഗിച്ച് പിന്നീട് എല്ലാ ഭാഗങ്ങളും ചേർത്ത് ഒരു പൂർണ്ണ പ്രോഗ്രാമാക്കാൻ സാധിക്കും. ഓബ്ജക്ട് ഫയൽ ഒരു പൂർണ്ണ പ്രോഗ്രാമിന്റെ ഭാഗമായ ഇടക്കാല ഫയലാണ്. ഇത് ഒരു പ്രത്യേക സ്ഥാനത്ത് (സാധാരണ മെമ്മറിയിൽ 0) ആരംഭിക്കാൻ തയ്യാറാക്കപ്പെട്ടിരിക്കും. ഓബ്ജക്ട് ഫയലിൽ പ്രോഗ്രാമിന്റെ നിർദ്ദേശങ്ങൾ ഉൾപ്പെടും, ഉദാഹരണത്തിന്, എവിടെയാണ് ഡാറ്റ സംഗ്രഹിക്കേണ്ടത്, അല്ലെങ്കിൽ എവിടേക്ക് `ജമ്പ്` ചെയ്യേണ്ടതാണെന്ന് പറയുന്ന വിവരങ്ങൾ നൽകുന്നു. ലിങ്കർ എന്നത് ഒരു ടൂൾ ആണ്, ഇത് ഒന്നിലധികം ഓബ്ജക്ട് ഫയലുകൾ എടുത്ത് അവ തമ്മിൽ ബന്ധിപ്പിക്കുകയും പ്രോഗ്രാമിന്റെ എല്ലാ ഭാഗങ്ങളും ശരിയായ സ്ഥാനങ്ങളിൽ ക്രമീകരിക്കുകയും ചെയ്യും. ഉദാഹരണത്തിന്, പ്രോഗ്രാമിലെ ഓരോ ഭാഗവും യഥാർത്ഥ മെമ്മറി സ്ഥലത്തേക്ക് നീക്കപ്പെടുകയും കൂട്ടിച്ചേർക്കുകയും ചെയ്യും.
അസംബ്ലർ അസംബ്ലി കോഡ് മെഷീൻ കോഡായി മാറ്റുന്ന ഒരു ഉപകരണമാണ്. ലിങ്കർ വിവിധ ഒബ്ജക്ട് ഫയലുകളും ലൈബ്രറി ഫയലുകളും ചേർത്ത് പ്രവർത്തനക്ഷമമായ പ്രോഗ്രാം ഉണ്ടാക്കുന്നു. അസംബ്ലർ ചിലപ്പോൾ നേരിട്ട് മെഷീൻ കോഡിലേക്ക് ഫയലുകൾ സൃഷ്ടിക്കുന്നു. അസംബ്ലർ ചെറുതും അടിസ്ഥാനപരവുമായ പ്രവർത്തനങ്ങൾ മാത്രമേ ചെയ്യൂ. ലിങ്കർ മുഴുവൻ പ്രോഗ്രാമിന്റെ ക്രമീകരണവും സ്ഥിരതയും ഉറപ്പാക്കുന്നു[3].
അവലംബം
തിരുത്തുക- ↑ "Compiler". TechTarget. Retrieved 1 September 2011.
Traditionally, the output of the compilation has been called object code or sometimes an object module.
- ↑ Aho, Alfred V.; Sethi, Ravi; Ullman, Jeffrey C. (1986). "10 Code Optimization". Compilers: principles, techniques, and tools. Computer Science. Mark S. Dalton. p. 704. ISBN 0-201-10194-7.
- ↑ Fischer, Charles N. "What do compilers produce?" (PDF). University of Wisconsin Madison. Retrieved April 2, 2024.