En informatique, le code objet est le produit d'un compilateur. Plus généralement, le code de l'objet est une suite d'instructions dans un langage informatique, généralement en langage machine (c'est-à-dire en binaire) ou d'un langage intermédiaire tels que le Register Transfer Language (RTL). Le terme indique que le code est le but de la compilation, avec l'apparition des premières sources se référant au code source comme un "programme sujet".
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.
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
En informatique et en technologies de l'information, un fichier exécutable, parfois (par métonymie) un programme, ou simplement un exécutable est un fichier contenant un programme et identifié par le système d'exploitation en tant que tel. Le chargement d'un tel fichier entraîne la création d'un processus dans le système, et l'exécution du programme, par opposition au fichier de données qui doit d'abord être interprété par un programme pour prendre sens.
C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes, dont la programmation procédurale, la programmation orientée objet et la programmation générique. Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés dans les applications où la performance est critique. Créé initialement par Bjarne Stroustrup dans les années 1980, le langage C++ est aujourd'hui normalisé par l'ISO.
En informatique, une bibliothèque logicielle est une collection de routines, qui peuvent être déjà compilées et prêtes à être utilisées par des programmes. Les bibliothèques sont enregistrées dans des fichiers semblables, voire identiques aux fichiers de programmes, sous la forme d'une collection de fichiers de code objet rassemblés accompagnée d'un index permettant de retrouver facilement chaque routine. Le mot « librairie » est souvent utilisé à tort pour désigner une bibliothèque logicielle.
L'objectif de ce cours est d'introduire les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'Informatique et de développer une première compétence en programmation (
We teach the fundamental aspects of analyzing and interpreting computer languages, including the techniques to build compilers. You will build a working compiler from an elegant functional language in
Couvre la décomposition modulaire dans les projets logiciels, en mettant l'accent sur la réduction des dépendances et les avantages de la programmation modulaire.
Scala is a general-purpose programming language developed at EPFL. It combines concepts coming from object-oriented languages with other ones coming from functional languages. Scala is strongly typed and comes with a relatively complex type system, which i ...
EPFL2006
, ,
Developers rely on automated testing and verification tools to gain confidence in their software. The input to such tools is often generated by compilers that have been designed to generate code that runs fast, not code that can be verified easily and quic ...
2013
Scala relies on libraries as the default mechanism for language extension. While this provides an elegant solution for growing the language, the performance penalty incurred by call-by-name parameters, boxing and anonymous functions is high. We show that i ...