Une machine à calculer : l'octet

information-icon

Les premières épreuves du bac de français édition 2024 sont pour bientôt ! Consulte les dates du bac de français, notre programme de révision accompagné de toutes nos fiches de révisions pour te préparer au mieux à ton examen 💪

Du bit à l’octet

Taille d’un entier

  • Avec $x$ bits, on peut représenter $2^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 $n$ fixé de bits. Ce nombre de bits limite donc la valeur que peut prendre la donnée à un maximum qui correspondra à $2^{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 $8$, $16$, $32$ ou $64$ 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 $8$ bits).

Le système hexadécimal

  • Le système hexadécimal est un système de numération en base $16$, c’est-à-dire qu’il utilise 16 caractères pour représenter les entiers ($0$, $1$, $2$, $3$, $4$, $5$, $6$, $7$, $8$, $9$, $\text{A}$, $\text{B}$, $\text{C}$, $\text{D}$, $\text{E}$, $\text{F}$).
  • On note parfois la base d’un nombre en indice après celui-ci :
  • $10_2$ est un nombre codé en binaire, autre notation : on lui accole le préfixe $0\text{b}$ ;
  • $10_{10}$ un nombre codé en décimal ;
  • $10_{16}$ un nombre codé en hexadécimal, autre notation : on lui accole le préfixe $0\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 $0$ à $15$ 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 $8$ 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 $0$ par un $1$ et chaque $1$ par un $0$.
  • Le complément à deux d’un nombre binaire est le nombre obtenu en prenant son complément et en lui ajoutant $1$.
  • Avec le complèment à deux, le bit le plus à gauche est toujours le bit de signe.
  • 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 $n$ bits peut valoir entre $2^{n-1}-1$ et $-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 $n$ bits et $m$ bits (respectivement) :
  • La somme de ces entiers nécessite pour son expression binaire au plus $\text{max}(n, m) + 1$ bits.
  • Le produit de ces entiers nécessite pour son expression binaire au plus $n+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.