L'instruction d'affectation à un double rôle :
Evaluation de l'expression (calcul)
Puis affectation (rangement) dans la variable (identificateur)
Les types doivent être compatibles (les mélanges de types sont interdits)
Ne pas confondre ":=", l'opérateur d'affectation et "=", l'opérateur de test.
Soit X une variable de type integer
X := 10 signifie que l'on affecte la valeur 10 à la variable X, donc X vaut 10 après l'exécution de cette instruction.
On peut tester si X est égal à une certaine valeur avant d'effectuer un calcul :
if X = 3 then X := X / 2 ;
Après exécution de cette instruction, la valeur de X est toujours 10, car le test X = 3 n'est pas vérifié (puisque la valeur 10 a été placée dans X)