Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
  Derniers articles
  • Comment renommer NIB à XIB dans Xco…
  • Quelle est la différence entre un c…
  • Comment utiliser le Microsoft Visual…
  • Comment utiliser ASM dans Visual C 
  • Comment lire un fichier XLS avec un …
  • Comment écrire un programme simple …
  • Comment déterminer si une date est …
  • Comment identifier un utilisateur Wi…
  • Comment lier un compilateur C pour N…
  • Pourquoi ne peut- Xcode Voir mon iPh…
  •   C /C + + Programming
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    C /C + + Programming

    Qu’est-ce que le processus de compilation ?

    La compilation est le processus de conversion du code source écrit dans un langage de programmation ou de balisage en code exécutable. Il comprend différentes étapes, chacune transformant le code en une forme de niveau inférieur jusqu'à ce que le code exécutable final soit produit. Voici un aperçu général du processus de compilation :

    1. Prétraitement :

    - Il s'agit d'une étape facultative qui a lieu avant la compilation proprement dite.

    - Le préprocesseur traite les macros, les instructions conditionnelles et inclut des directives pour préparer le code source pour une compilation ultérieure.

    2. Analyse lexicale (numérisation) :

    - Le code source est divisé en jetons individuels, tels que des mots-clés, des identifiants, des opérateurs et des signes de ponctuation.

    - L'analyseur lexical, également appelé scanner, identifie ces jetons et les convertit en une séquence de symboles significatifs.

    3. Analyse syntaxique (analyse) :

    - L'analyseur syntaxique ou analyseur vérifie si la séquence de jetons suit les règles de grammaire du langage de programmation ou de balisage.

    - Il construit une structure hiérarchique représentant la syntaxe du programme et vérifie les erreurs de syntaxe.

    4. Analyse sémantique :

    - Le compilateur effectue une analyse sémantique pour garantir que le programme est sémantiquement correct.

    - Il vérifie la compatibilité des types de données, les déclarations de variables et les références, ainsi que les erreurs logiques ou les incohérences dans le code.

    5. Génération de représentation intermédiaire (RI) :

    - Le compilateur traduit le code source en une représentation intermédiaire (IR) telle que des arbres de syntaxe abstraite (AST) ou un code à trois adresses.

    - IR est une représentation indépendante du langage de la structure et de la sémantique du programme.

    6. Optimisation :

    - Des optimisations du compilateur sont appliquées à l'IR pour améliorer l'efficacité du code généré.

    - Les optimisations peuvent inclure la propagation constante, le déroulement de la boucle, l'allocation de registres et l'élimination du code mort.

    7. Génération de codes :

    - L'IR optimisé est converti en langage assembleur, qui est une représentation symbolique de bas niveau des instructions machine.

    - Le code assembleur est spécifique à l'architecture du processeur cible.

    8. Liaison :

    - Pour les programmes plus volumineux, l'étape de liaison combine des fichiers objets générés à partir de différents fichiers sources et bibliothèques externes.

    - La liaison résout les références de symboles entre les modules et garantit que toutes les dépendances sont satisfaites.

    9. Assemblage :

    - L'assembleur convertit le code du langage assembleur en code machine, qui sont des instructions binaires que l'ordinateur peut exécuter directement.

    10. Exécution :

    - Le code machine final est chargé dans la mémoire de l'ordinateur et exécuté par le CPU.

    Le processus de compilation est une série de transformations qui permettent à un programme linguistique de haut niveau écrit par des humains d'être traduit sous une forme directement compréhensible par l'ordinateur. Chaque étape du processus rapproche le code du langage natif de la machine tout en garantissant son exactitude et son efficacité.

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment écrire dans un fichier binaire d'un code de l'échantillon en C 
  • Comment appeler un destructeur en C + + 
  • Comment utiliser des pointeurs de fonction dans une recherche Argument binaire en C + + 
  • Comment lier un compilateur C pour NetBeans 
  • Comment flux vidéo en direct dans Xcode 
  • Que sont les algorithmes de planification non préemptifs ? 
  • Comment faire pour convertir un flotteur à une chaîne en programmation C 
  • Comment écrire une application multi thread en MFC 
  • Comment créer et détruire des objets 
  • Comment sauter d' une fonction d'annulation en C + + 
  • Connaissances Informatiques © http://www.ordinateur.cc