En informatique, le code objet est une suite d'instructions dans un langage informatique[1], généralement en langage machine (c'est-à-dire en binaire) ou en un langage intermédiaire tel que le Register Transfer Language (RTL). Le code objet est le produit d'un compilateur[2]. Le terme « objet » indique que ce code est le but de la compilation, le code source ayant pu être qualifié de "programme sujet".
Détails
Les fichiers objets peuvent être liés pour former un fichier exécutable ou un fichier de bibliothèque. Pour être utilisé, le code objet doit être placé dans un fichier exécutable, un fichier de bibliothèque ou un fichier objet.
Le code objet est une partie du code machine qui n’a pas encore été liée à un programme complet. C’est le code de l’ordinateur de la bibliothèque ou d’un module qui le produit. Il peut également contenir des espaces réservés, qui ne figure pas dans le code machine d’un programme, que l’éditeur de liens utilise pour connecter le tout. Alors que le code machine est le code binaire qui peut être exécuté directement par le processeur, le code objet contient des vides partiellement paramétrés de sorte qu'un éditeur de liens peut les remplir.
Un assembleur est utilisé pour convertir le code assembleur en code machine (code objet). Un éditeur de liens lie plusieurs fichier objet (et fichier de bibliothèque) pour générer un fichier exécutable. Les assembleurs peuvent également assembler directement en code machine fichier exécutable, sans passer par la phase de code objet.
Voir aussi
Références
- Alfred V. Aho, Ravi Sethi et Jeffrey D. Ullman, Compilers : principles, techniques, and tools, Mark S. Dalton, , 796 p. (ISBN 0-201-10194-7), « 10 Code Optimization », p. 704
- « Compiler », TechTarget (consulté le ) : « Traditionally, the output of the compilation has been called object code or sometimes an object module. »