Pour chaque mot de ce glossaire on indique par la notation Général
si il s'agit d'un concept général dans le domaine des langages de
programmation, par Matériel si il s'agit d'un concept du domaine de
l'architecture des machines, et par Jargon C si il s'agit d'un
particularisme du langage C.
Derrière cette indication, nous donnons le mot anglais utilisé pour désigner
ce concept.
- adresse
- Matériel ; Anglais : address. La mémoire d'une machine est
formée d'une suite d'éléments mémoires. L'adresse d'un élément est son rang
dans la suite.
Voir aussi : élément mémoire.
- affectation
- Général ; Anglais : assignment. Opération
qui a pour but de stocker une valeur dans la case mémoire
correspondant à une variable.
L'affectation est généralement réalisée par une instruction, dans le langage C,
elle est réalisée par un opérateur.
- bloc
- Général ; Anglais : block.
Construction d'un langage qui permet de regrouper des déclarations
et des instructions.
- booléen
- Général ; Anglais : boolean. type dont l'ensemble des
valeurs est formé des valeurs vrai et faux.
- chaîne de caractères
- Général ; Anglais : string. Suite contiguë en
mémoire de caractères.
- champ
- Général ; Anglais : field. Un élément d'un enregistrement.
- champ de bits
- Jargon C ; Anglais : bit field. Un champ
de structure C dont la taille est donnée en nombre de bits.
- compilation séparée
- Général ; Anglais : separate compilation.
Technique qui consiste à découper les gros programmes en différentes unités
de compilation pour en maîtriser la complexité.
Les différentes unités sont compilées séparément,
et un éditeur de liens est chargé de transformer les modules objets en
programme exécutable.
- complément à 2
- Matériel ; Anglais : 2's complement.
Le complément à 2 est une méthode de représentation des nombres signés.
Les nombres positifs sont représentés en base 2. Sur 8 bits, la représentation
de la valeur 6 est 00000110 et celle de 10 est 00001010.
Pour les nombres négatifs, on part de la valeur absolue que l'on représente
en binaire, on la complémente bit à bit et on additionne 1.
Sur 8 bits, la représentation de -6 est 11111010 et celle de -10 est
11110110
- déclaration
- Général ; Anglais : declaration.
Construction qui associe un identificateur et une entité du langage.
Il y a des déclarations de variable, de type, de procédure,
de fonction. L'identificateur est un nom pour l'entité déclarée.
- durée de vie
- Général ; Anglais : lifetime.
Concept qui s'applique aux variables.
La durée de vie d'une variable est le temps qui s'écoule entre le
moment où on alloue de la mémoire pour cette variable, et le moment où on
récupère la mémoire allouée.
Il existe classiquement trois types de durée de vie :
- -
- durée de vie du programme : la variable est créée au chargement du
programme et détruite à la fin du programme.
Une telle variable est dite statique.
- -
- durée de vie d'un bloc : la variable est créée quand on entre dans
le bloc et détruite quand on en sort.
Une telle variable est qualifiée de dynamique.
- -
- durée de vie programmée : la variable est créée et détruite par des
ordres explicites du programmeur.
Une telle variable est qualifiée de dynamique.
Voir aussi : pile, tas, statique, dynamique.
- effet de bord
- Général ; Anglais : side effect.
Modification de l'état de la machine. Un effet de bord
peut être interne au programme (par exemple, modification de la valeur d'une
variable) ou externe au programme (par exemple écriture dans un fichier).
Toute partie de programme qui n'est pas déclarative a pour but soit de
calculer une valeur, soit de faire un effet de bord.
Voir aussi : procédure, fonction.
- élément mémoire
- Matériel ; Anglais : storage unit.
Une fraction de la mémoire accessible en une seule instruction machine.
Une machine comporte généralement au moins trois types d'éléments mémoire :
un élément permettant de stocker un caractère, et un élément permettant de
stocker un entier, et un élément permettant de stocker un flottant.
- enregistrement
- Général ; Anglais : record.
Type défini par l'utilisateur
permettant de regrouper en une seule entité, des variables de types
différents. Au sein de l'enregistrement, les variables sont identifiées par
un nom.
- ensemble
- Général ; Anglais : set. Le concept mathématique
d'ensemble. Certains langages l'offrent (Pascal, Modula-2), d'autres pas
(Algol, C, Ada).
- évaluation
- Général ; Anglais : evaluation.
Ce concept s'applique à une
expression. Évaluer une expression c'est calculer sa valeur.
Voir aussi : évaluation court-circuit.
- évaluation court circuit
- Général ; Anglais : short circuit evaluation.
Se dit d'une évaluation qui n'évalue pas tous les opérandes. Par exemple,
dans le langage C, l'opérateur && évalue d'abord son opérande gauche,
si celui-ci est faux, il n'y aura pas d'évaluation de l'opérande droit.
- fonction
- Général ; Anglais : function.
Possède en commun avec la procédure d'associer un nom à un
traitement algorithmique, mais la caractéristique d'une fonction est de
délivrer une valeur utilisable dans une expression.
Les langages de programmation permettent généralement aux fonctions, en
plus du fait de retourner une valeur, de faire un ou plusieurs effets de bord.
Voir aussi : procédure.
- identificateur
- Général ; Anglais : identifier.
Synonyme de nom. Dans le domaine des langage de programmation, on parle
d'identificateur pour dire nom.
- initialisation
- Général ; Anglais : initialization.
opération consistant à donner une valeur initiale à une variable.
Il y a deux types d'initialisation : les initialisations statiques (à la
déclaration de la variable) et les initialisations dynamiques (réalisées par
des instructions).
- membre
- Jargon C ; Anglais : member Le mot utilisé en C pour dire
champ (d'un enregistrement).
- mot-clé
- Général ; Anglais : keyword.
Un mot dont la signification est fixée par le langage, par opposition aux
identificateurs qui sont librement choisis par le programmeur.
- objet
- Général ; Anglais : object. Voir source.
- paramètre effectif
- Général ; Anglais : effective parameter ou
argument. La valeur qui est passée en paramètre à la fonction.
- paramètre formel
- Général ; Anglais : formal parameter ou
parameter. Le nom d'un paramètre dans la déclaration d'une procédure
ou fonction.
- passage de paramètre
- Général ; Anglais : parameter passing.
Technique de communication de paramètre entre l'appelant et une procédure
ou fonction appelée. Il existe diverses façons de passer les paramètres
dont les plus utilisées sont le passage par valeur et le passage par adresse.
Le langage C n'utilise que le passage par valeur.
- pile
- Général ; Anglais : stack. Dans un langage récursif, les variables
locales à une procédure doivent être allouées dans une pile, car à un moment
donné il peut y avoir plusieurs activations en cours de la même procédure,
et donc plusieurs instanciations des variables de la procédure.
Voir aussi : durée de vie, tas.
- pointeur
- Général ; Anglais : pointer. Type dont les valeurs possibles
sont des adresses de variable.
- portée
- Général ; Anglais : scope. Ce concept s'applique aux
identificateurs.
La portée d'un identificateur est la partie du programme où l'ensemble des
occurences d'un identificateur font référence à la même déclaration.
Ce sont les blocs qui permettent de limiter la portée d'un identificateur.
- procédure
- Général ; Anglais : procedure.
Permet d'associer un nom à un traitement algorithmique.
La procédure est la brique de base de la construction de programme.
Le but d'une procédure est de réaliser au moins un effet de bord
(sinon elle ne sert à rien).
- récursivité
- Général ; Anglais : recursivity. Une fonction
ou procédure est dite récursive si elle s'appelle elle-même. Les
langages les plus anciens (Fortran 77, Cobol) ne permettent pas la
récursivité, mais a peu près tous les langages modernes l'autorisent
(Pascal, C).
- source
- Général ; Anglais : source. Forme du programme écrit en
langage de programmation. Par opposition à objet qui est la forme
du programme une fois traduit en instructions machines.
Entre la source et l'objet, la sémantique est conservée, seule la forme
change.
- structure
- Jargon C ; Anglais : structure. Synonyme
d'enregistrement.
- surchargement
- Général ; Anglais : overloading. Un symbole est dit
surchargé quand sa sémantique dépend du contexte. Dans le langage C,
le surchargement des opérateurs est une véritable plaie : * est à
la fois opérateur d'indirection et de multiplication, & est à
la fois opérateur ``adresse de '' et ``and bit à bit'', etc ...
- tas
- Général ; Anglais : heap. Zone de la mémoire où sont effectuées
les allocations dynamiques de variables explicitement demandées par le
programmeur. Dans le langage C, les allocations et les libérations dans le
tas se font par des fonctions de la bibliothèque standard : calloc et
malloc pour les allocations, free pour les libérations.
Voir aussi : durée de vie, pile.
- type
- Général ; Anglais : type.
Attribut d'une variable qui détermine
l'ensemble des valeurs que peut prendre cette variable et les opérateurs
qu'on peut lui appliquer.
- type de base
- Général ; Anglais : basic type.
type qui est connu du langage, par opposition aux types définis par le
programmeur. Classiquement, les types de base sont booléen,
caractère, entier, flottant.
Le langage C90 n'a pas le type booléen, mais ce type existe en C99.
- type défini par le programmeur
- Général ; Anglais : user-defined type.
(On n'a pas inventé de nom pour ce concept : il est désigné par une
périphrase.) À partir des types de base, le programmeur peut construire de
nouveaux types : tableau de type, pointeur vers type, etc ...
- type entier
- Jargon C ; Anglais : integral type.
Regroupe les types suivants :
- -
- les char
- -
- toutes les variétés de int : signés, non signés, longs ou
courts.
- -
- les types énumérés (définis par enum).
- type flottant
- Jargon C ; Anglais : floating type.
Regroupe les float, double et long double.
- unité de compilation
- Général ; Anglais : compilation unit.
Un des fichiers source composant un programme développé selon la technique
de la compilation séparée.
Voir aussi : compilation séparée.
- variable
- Général ; Anglais : variable.
Une abstraction du concept d'élément mémoire.
- variable globale
- Général ; Anglais : global variable.
Variable déclarée à l'extérieur de toute procédure ou fonction.
Les variables globales sont accessibles par toutes les procédures et fonctions.
- variable locale
- Général ; Anglais : local variable.
Variable déclarée à l'intérieur d'une procédure ou fonction.
Les variables locales sont inaccessibles à l'extérieur de la procédure ou
fonction dans laquelle elles sont déclarées.
Matthieu Moy
2017-02-08