PREMIERE PARTIE

NOTIONS DE BASE SUR LE FONCTIONNEMENT DE L'ORDINATEUR



    I. L’ARITHMETIQUE SIGNEE

On appelle arithmétique non signée l’arithmétique dans laquelle tous les entiers sont positifs. En arithmétique signée au contraire, les nombres peuvent être soit positifs, soit négatifs. Un nombre signé n’est donc pas forcément négatif.

Les données informatiques se présentent sous la forme d’une succession de chiffres binaires, les bits. Nous supposerons que les systèmes de numération binaire et hexadécimal vous sont déjà familiers.

Il est en revanche fort possible que vous ne connaissiez pas la façon dont un ordinateur représente les nombres négatifs. Il existe deux conventions : la notation en signe et valeur absolue et la notation en complément à 2.

La première est extrêmement simple : le premier bit représente le signe, et les autres bits la valeur absolue du nombre. Le bit de signe vaut 1 si le nombre est strictement négatif, 0 sinon.

Par exemple, le nombre (–14) codé sur 8 bits s’écrit ainsi :

10001110

Cette convention n’est quasiment jamais utilisée en informatique. On lui préfère la représentation en complément à 2 dont le principe est le suivant :

- les nombres positifs sont codés de la même façon qu’en convention « signe et valeur absolue ».

- les nombres négatifs sont obtenus en inversant tous les bits, puis en ajoutant 1.

Exemple : le nombre 14 codé sur 8 bits est représenté ainsi :

00001110

et (–14) ainsi :

  • inversion des bits : 11110001

  • ajout d’une unité : 11110010

  • résultat : 11110010

Remarque : le résultat intermédiaire, 11110001, est appelé « complément à 1 ».

Vous allez immédiatement comprendre l’avantage de cette représentation. Faisons la somme de 14 et de (–14), de la même façon que s’il s’agissait d’entiers positifs :

00001110 + 11110010 = 100000000

Le résultat étant codé sur 8 bits, le 1 situé à gauche n’est pas pris en compte. On obtient donc 14 + (–14) = 0.

L’intérêt évident est que la différence de deux nombres peut se calculer avec le même algorithme que leur somme. Il suffit de transformer au préalable le nombre retranché en son opposé. Cette conversion est très simple et très rapide.

Au contraire, en représentation « signe et valeur absolue », on aurait eu besoin de nombreux algorithmes, car plusieurs cas se présentent.

Remarque : la représentation en complément à 2 revient en fait à écrire (-1) comme ceci :

11111111

(-2) comme cela :

11111110

(-3) comme cela :

11111101

etc…

Il y a ainsi une symétrie entre les nombres positifs et les nombres négatifs. Il en résulte que le bit le plus à gauche représente le signe, de la même façon qu’en notation « signe et valeur absolue ». Avant tout calcul, nous pouvons donc affirmer que le nombre 10010101 est négatif.



Sommaire

Suite