Représentation des entiers Numération Représentation des entiers Numération - Représentation des entiers
Notion de mot Les système informatiques manipulent des informations binaires et travaillent en général sur une longueur fixe de bits que l’on appelle mot. Suivant le processeur, la taille du mot est différente : 32 ou 64 bits pour les processeurs actuels 16 ou 32 bits pour les microcontrôleurs (arm, ST Micro Electronique…) Numération - Représentation des entiers
Exemple pour un processeur 16 bits Numération - Représentation des entiers
Représentation des entiers négatifs Les entiers signés La solution la plus simple pour représenter les entiers négatifs consiste à réserver un bit pour le signe. La convention retenue impose de mettre le bit de poids le plus fort à : 0 pour représenter un nombre positif 1 pour un nombre négatif Numération - Représentation des entiers
Combien peut on représenter de nombres positifs et négatifs sur 4, 8 bits… Avec cette méthode, on peut représenter sur 8 bits l’intervalle de nombre entiers : 27 soit 128 nombres >= 0 et 128 nombres < 0 Plus généralement sur n bits : 2 n-1 nombres >= 0 et 2 n-1 nombres < 0 Numération - Représentation des entiers
Règles adoptées par les constructeurs Si le bit de signe à la valeur 0, la donnée est positive Si le bit de signe à la valeur 1, la donnée est négative La valeur zéro est considérée comme positive Les valeurs positives sont représentées sous leur forme binaire Les valeurs négatives sont représentées sous leur forme complémentée. Numération - Représentation des entiers
Représentation complémentée Complément restreint (complément à un) Le complément restreint d’un nombre binaire s’obtient par une simple inversion des bits constituant ce nombre. (les bits à 1 passent à 0 et les bits à 0 passe à 1) Exemple : Numération - Représentation des entiers
Représentation complémentée Complément restreint (complément à un) Inconvénient majeur, le complément restreint autorise deux représentation distinctes de la valeur 0 Un « zéro positif » +0 Un « zéro négatif » -0 Numération - Représentation des entiers
Représentation complémentée Complément vrai (ou complément à 2) Le complément vrai d’un nombre binaire s’obtient en ajoutant 1 au complément restreint Nombre en binaire (+74) : 0 1 0 0 1 0 1 0 Complément restreint : 1 0 1 1 0 1 0 1 + 1 Complément vrai (-74) : 1 0 1 1 0 1 1 0 Numération - Représentation des entiers Bit de signe
Représentation complémentée Complément vrai (ou complément à 2) Le plus grand nombre positif sur 8 bits est : 0111 1111 qui représente 27 -1 soit 127 Le plus grand nombre négatif sur 8 bits est : 1000 0000 qui représente -27 soit -128 Numération - Représentation des entiers
Addition d’entiers 1er Cas : pas de débordement, résultat négatif Exemple : (-64) + 16 = (-48) (-64) : 1 1 0 0 0 0 0 0 16 : + 0 0 1 1 1 1 1 1 (-48) : 1 1 0 1 0 0 0 0 |(-48)| : 0 0 1 1 0 0 0 0 Numération - Représentation des entiers
Addition d’entiers 2ème Cas : débordement, résultat positif Exemple : 64 + (-16) = 48 64 : 0 1 0 0 0 0 0 0 (-16) : + 1 1 1 1 0 0 0 0 48 : 1 0 0 1 1 0 0 0 0 Le résultat est positif Le bit de poids fort est à 0 Ignoré : en dehors des 8 bits Numération - Représentation des entiers
Addition d’entiers 3ème Cas : débordement, résultat négatif Exemple : (-64) + (-16) = (-80) (-64) : 1 1 0 0 0 0 0 0 (-16) : + 1 1 1 1 0 0 0 0 (-80) : 1 1 0 1 1 0 0 0 0 Le résultat est négatif Le bit de poids fort est à 1 Ignoré : en dehors des 8 bits Numération - Représentation des entiers
En cas de débordement, on ignore celui-ci en ne le reportant pas. Résumé En cas de résultat positif (bit de poids fort à 0), on obtient directement le résultat. En cas de résultat négatif (bit de poids fort à 1), on recherche la valeur absolue du résultat : On re complémente à vrai (complément restreint + 1) pour vérifier. En cas de débordement, on ignore celui-ci en ne le reportant pas. Numération - Représentation des entiers