TS - Spécialité ISN ISN - Informatique et Sciences du Numérique LA PROGRAMMATION 1. LA PROGRAMMATION La programmation d’un ordinateur consiste à « expliquer » à une machine ce qu’elle doit faire en sachant qu’elle ne peut effectuer qu’un traitement automatique sur des séquences de caractères. Un programme est une suite d’instructions, encodées en respectant de manière très stricte un ensemble de conventions fixées à l’avance que l’on appelle « langage informatique ». La machine est pourvue d’un mécanisme qui décode ces instructions en associant à chaque « mot » du langage une action précise. 2. LANGAGE MACHINE, LANGAGE DE PROGRAMMATION Un ordinateur est une machine qui effectue des opérations simples sur des séquences de signaux électriques ne prenant que deux états (par exemple un potentiel électrique maximum ou minimum). Ces séquences peuvent être considérées conventionnellement comme des suites de nombres ne prenant que deux valeurs 0 et 1 (système binaire). Un ordinateur est incapable de traiter autre chose que des nombres binaires. Toute information d’un autre type (textes, les images, les sons, les nombres) doit être convertie ou codée en format binaire. Ceci est également valable pour les programmes, c’est-à-dire les séquences d’instructions que l’on va fournir à la machine pour lui dire ce qu’elle doit faire. La suite d’instructions composée de caractères formant des mots-clés constituant le programme, doit être traduite avant d’être transmise à l’ordinateur. Le système de traduction proprement dit s’appelle interpréteur ou bien compilateur, suivant la méthode utilisée pour effectuer la traduction. On appelle langage de programmation un ensemble de mots-clés associé à un ensemble de règles très précises indiquant comment on peut assembler ces mots pour former des « phrases » que l’interpréteur ou le compilateur puisse traduire en langage machine (binaire). La programmation Page n°1/3 TS - Spécialité ISN 3. COMPILATION ETT INTERPRETATION Le programme tel que nous l’écrivons à l’aide d’un logiciel éditeur (traitement de texte spécialisé) est appelé programme source (ou code source). sou Il existe deux techniques pour effectuer la traduction d’un tel programme source en code binaire exécutable par la machine : l’interprétation interprétation et la compilation. Un logiciel interpréteur analyse e, traduit, et exécute au fur et à mesure chaque ligne du programme source Aucun programme objet n’est généré et le logiciel interpréteur doit être utilisé chaque fois que l’on veut faire fonctionner le programme. Dans cette technique en effet, chaque ligne du programme. Parmi les langages interprétés interpr on trouve, le langage HTML, PHP, PHP Javascript, Perl… Code source Résultat Interpréteur … et le résultat apparaît sur l’écran L’interpréteur lit le code source … Un logiciel compilateur lit et traduit tradui la totalité du texte source en une fois. Il génère une nouvelle suite de codes que l’on appelle programme objet (ou code objet). Celui-ci Celui peut être exécuté indépendamment du compilateur et être conservé tel quel dans un fichier exécutable. Les principaux langages compilés sont les langages C, C++, Fortran, Pascal… Code source Compilateur Le compilateur lit le code source… La programmation Code objet … et e génère un code objet. Exécuteur Le code objet est exécuté … Résultat … et le résultat apparaît sur l’écran Page n°2/3 TS - Spécialité ISN Certains langages modernes combinent les deux techniques. techniques. C’est le cas notamment de Python et de Java. On commence par compiler le code objet afin de générer un code intermédiaire appelé bytecode,, lequel sera ensuite transmis à un interpréteur pour l’exécution finale. finale Le bytecode est facilement portable, c'est-à-dire dire qu’il peut s’exécuter sur n’importe quelle machine disposant d’un interpréteur adapté. Code source Compilateur Le compilateur lit le code source… La programmation ByteCode Interpréteur Résultat … et le résultat … et génère un L’interpréteur lit le code intermédiaire code intermédiaire … apparaît sur l’écran Page n°3/3