Pour stocker des entiers signés (positifs et négatifs), l’ordinateur utilise la notation en Complément à 2.

1. Le Principe sur N bits

Sur bits, le bit le plus à gauche (MSB) est le bit de signe :

  • 0 = Positif
  • 1 = Négatif

Plage de valeurs (Range)

Pour un codage sur bits, l’intervalle des entiers représentables est :

Exemples du cours

  • 8 bits (1 octet) : De à
  • 16 bits (2 octets) : De à

2. Coder un nombre (Décimal Binaire)

Cas Positif

Convertir simplement en binaire et compléter avec des 0 à gauche. Exemple : sur 8 bits 0000 1010

Cas Négatif (Méthode du Complément à 2)

Pour coder :

  1. Coder (la valeur absolue) en binaire.
  2. Inverser tous les bits (0 devient 1, 1 devient 0).
  3. Ajouter 1.

Exemple : Coder -100 sur 8 bits

  1. en binaire 0110 0100
  2. Inverser 1001 1011
  3. Ajouter 1 1001 1100

Résultat : 1100 1100 (en hexadécimal : CC)

3. Décoder un nombre (Binaire Décimal)

Regardez le premier bit :

  • Si 0... : C’est positif. Convertissez normalement.
  • Si 1... : C’est négatif. Le nombre est .

Attention aux Hexadécimaux

Dans vos exercices, (1010 1111) est donné en binaire, mais parfois on donne 0xFF. F = 1111, A = 1010.

4. Opérations et Overflow (Dépassement)

L’ordinateur effectue l’addition bit à bit. Si le résultat dépasse la capacité (ex: sur 16 bits), on a un Overflow. Le nombre “boucle” et devient négatif (ou inversement).

Or, le max sur 16 bits est . Le résultat sera donc interprété comme négatif ().