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= Positif1= 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 :
- Coder (la valeur absolue) en binaire.
- Inverser tous les bits (0 devient 1, 1 devient 0).
- Ajouter 1.
Exemple : Coder -100 sur 8 bits
- en binaire
0110 0100- Inverser
1001 1011- Ajouter 1
1001 1100Ré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 donne0xFF.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 ().