Médaille
N°1 pour apprendre & réviser du collège au lycée.
Une machine à calculer : l'octet

Déjà plus de

1 million

d'inscrits !

0/3
0 / 15
Challenge tes acquis !
Remporte un max d’étoiles
et de school coins !
`

Du bit à l’octet

Taille d’un entier

  • Avec xx bits, on peut représenter 2x2^x nombres différents.
  • En informatique, la taille d’un entier est le nombre de bits avec lequel celui-ci est codé.
  • Selon le système informatique ou le programmeur, on choisira de coder une donnée de type entier avec un nombre nn fixé de bits. Ce nombre de bits limite donc la valeur que peut prendre la donnée à un maximum qui correspondra à 2n12^{n}-1.
bannière propriete

Propriété

Pour évaluer le nombre de bits nécessaires pour coder un entier, on cherche la plus petite puissance de deux dont la valeur est strictement supérieure à cet entier (voir le cours précédent pour la représentation d’un entier en binaire).

  • Dans un système informatique donné, les entiers sont souvent codés avec une taille standard (souvent 88, 1616, 3232 ou 6464 bits).
  • La taille d’un entier peut être exprimée en bits, mais il est bien plus courant de l’exprimer en octets (groupe de 88 bits).

Le système hexadécimal

  • Le système hexadécimal est un système de numération en base 1616, c’est-à-dire qu’il utilise 16 caractères pour représenter les entiers (00, 11, 22, 33, 44, 55, 66, 77, 88, 99, A\text{A}, B\text{B}, C\text{C}, D\text{D}, E\text{E}, F\text{F}).
  • On note parfois la base d’un nombre en indice après celui-ci :
  • 10210_2 est un nombre codé en binaire, autre notation : on lui accole le préfixe 0b0\text{b} ;
  • 101010_{10} un nombre codé en décimal ;
  • 101610_{16} un nombre codé en hexadécimal, autre notation : on lui accole le préfixe 0x0\text{x}.

L’intérêt du système hexadécimal, pour un informaticien, est qu’il possède la propriété suivante :

bannière propriete

Propriété

On peut représenter les nombres de 00 à 1515 avec un caractère en hexadécimal, soit autant qu’avec quatre bits en binaire. Autrement dit, on peut représenter un octet avec deux caractères hexadécimaux. Ainsi, l’écriture d’un nombre en hexadécimal peut se voir comme une écriture condensée du binaire, puisque l’on utilise deux caractères hexadécimaux pour représenter un octet qui tient sur 88 bits, soit 4 fois plus de caractères

Entiers relatifs au système de complément à deux

  • Le complément à un d’un nombre binaire est le nombre obtenu en remplaçant chaque 00 par un 11 et chaque 11 par un 00.

  • Le complément à deux d’un nombre binaire est le nombre obtenu en prenant son complément et en lui ajoutant 11.

  • Avec le complèment à deux, le bit le plus à gauche est toujours le bit de signe.((fleche))

  • Dans un système de complément à deux, l’addition et la soustraction fonctionnent de la même manière que pour l’addition d’entiers naturels, à la seule différence qu’il faut ignorer l’éventuel dépassement dû à la dernière retenue.

  • Dans un système de complément à deux, un entier relatif codé sur nn bits peut valoir entre 2n112^{n-1}-1 et 2n1-2^{n-1}.

Des entiers trop grands

Taille du résultat d’une opération

  • Soit deux entiers naturels dont l’expression en binaire nécessite au plus nn bits et mm bits (respectivement) :
  • La somme de ces entiers nécessite pour son expression binaire au plus max(n,m)+1\text{max}(n, m) + 1 bits.
  • Le produit de ces entiers nécessite pour son expression binaire au plus n+mn+m bits.
  • Cette propriété est aussi vraie pour les additions et les multiplications dans n’importe quel système de numération.

Dépassement d’entier

  • Le dépassement d’entier est l’erreur informatique qui se produit, quand le résultat d’un calcul est un entier trop grand pour la taille qui lui a été attribuée. Le système informatique est alors incapable d’écrire le résultat correctement.
  • Selon le système informatique, un dépassement d’entier peut être plus ou moins grave : un programme bien conçu peut prévoir cette possibilité et établir une marche à suivre si un tel cas ce produit.
  • Parfois, les limites techniques du calculateur font du dépassement d’entier un problème critique.
  • Pour permettre des calculs sur les valeurs élevées, les langages de programmation proposent souvent des types d’entier spécifiques : entier de taille arbitraire.