Compilateurs
Quelle caractéristique de l'arbre syntaxique abstrait (AST) est correcte ?
- AIl conserve comme nœuds tous les éléments du code source, jusqu'aux parenthèses et séparateurs
- BIl omet les symboles sans incidence sur la sémantique et exprime la priorité des opérateurs par la forme de l'arbre
- CIl correspond un à un aux instructions du CPU et s'exécute tel quel
Afficher la réponse et l'explication
Réponse : B. Il omet les symboles sans incidence sur la sémantique et exprime la priorité des opérateurs par la forme de l'arbre
L'analyse syntaxique produit, conformément aux règles de grammaire, un arbre incluant parenthèses et séparateurs (arbre syntaxique concret), qui contient beaucoup d'informations inutiles pour la suite. L'arbre syntaxique abstrait ne garde comme nœuds que les opérations et instructions nécessaires à la sémantique du programme ; pour (a + b) * c, par exemple, le nœud d'addition placé sous le nœud de multiplication indique l'ordre de calcul sans parenthèses. La correspondance avec les instructions du CPU relève du code généré dans une phase ultérieure.