Représenter les nombres : base 10 et base 5

Denis Dréano
INFO1-01

Représenter les nombres : base 10 et base 5

Objectifs cantonaux : O2.3. Semaine dédoublée (×2, groupes A/B séparés).

Cours complet sur la plateforme Runestone de Cédric Donner : Représentation des nombres — base 10 et base 5.

On quitte la programmation pour quelques semaines afin d’étudier comment un ordinateur représente l’information — en commençant par les nombres. Avant d’aborder le système binaire (omniprésent en informatique), on reconstruit d’abord le fonctionnement du système décimal, puis on l’applique à une autre base pour bien comprendre le principe général.

Le problème : représenter des quantités

▷ Un système de numération très simple : l’unaire

La façon la plus simple de représenter un nombre est de tracer un trait (« coche ») par unité : le nombre 13 s’écrit IIIIIIIIIIIII. Ce système a trois défauts majeurs :

  • il est très long à lire (il faut compter chaque trait) ;
  • il prend énormément de place pour de grands nombres ;
  • il est très facile de se tromper en écrivant ou en lisant (une coche effacée ou mal comptée change tout).

Le système décimal — celui que vous utilisez tous les jours — résout ces problèmes en introduisant des symboles différents pour chaque quantité de 0 à 9, puis en réutilisant ces mêmes symboles à des positions différentes pour représenter des quantités plus grandes.

Base 10 : les « billets » positionnels

▷ Représentation par billets de banque

Imaginez des billets de valeur 1, 10, 100, 1000, … (les puissances de 10 : \(10^0, 10^1, 10^2, 10^3, \ldots\)). Pour représenter un nombre, on utilise le moins de billets possible, avec au maximum neuf billets de chaque valeur (au-delà de neuf, on échange dix billets contre un billet de la catégorie supérieure). Le nombre final est la somme des valeurs de tous les billets utilisés — c’est exactement ce que représente la notation positionnelle habituelle : chaque chiffre correspond au nombre de billets d’une catégorie donnée.

C’est ce principe — un nombre maximal de « billets » par catégorie, puis un échange contre la catégorie supérieure — qu’on va maintenant appliquer à une autre base, pour bien le détacher de l’habitude du chiffre 10.

Construire la base 5

▷ Pourquoi la base 5 ?

La base 5 n’est pas utile en elle-même en informatique, mais c’est une bonne étape intermédiaire pour bien comprendre la base 2 (le binaire), la semaine prochaine. Le principe est identique à la base 10, mais avec des billets de valeur \(5^0, 5^1, 5^2, \ldots\) et au maximum quatre billets de chaque valeur.

◈ Valeurs des billets en base 5

  • \(5^0 = 1\)
  • \(5^1 = 5\)
  • \(5^2 = 25\)
  • \(5^3 = 125\)
  • \(5^4 = 625\)

Comme en base 10, on n’utilise jamais plus de quatre billets d’une même valeur : dès qu’on en aurait cinq, on les échange contre un billet de la catégorie supérieure.

→ Exemple — convertir 2404₅ en base 10

Le nombre \(2404_5\) correspond à 2 billets de 125, 4 billets de 25, 0 billet de 5 et 4 billets de 1 :

\(2\cdot 125 + 4\cdot 25 + 0\cdot 5 + 4\cdot 1 = 250 + 100 + 0 + 4 = 354_{10}\)

! Ne pas oublier les zéros

En notation positionnelle, un chiffre 0 signifie qu’aucun billet de cette catégorie n’est utilisé — il ne faut jamais l’omettre, sous peine de changer complètement la valeur du nombre.

Passer de la base 10 vers la base 5

→ Exemple — convertir 1200 (base 10) en base 5

On « paie » 1200 avec le moins de billets possible, du plus grand au plus petit :

  • une seule pièce de 625 est possible (1200 - 625 = 575 restants) ;
  • 4 pièces de 125 (575 - 4·125 = 75 restants) → chiffres connus : 14--- ;
  • 3 pièces de 25 (75 - 3·25 = 0 restant) → chiffres connus : 143-- ;
  • plus rien à payer : 0 pièce de 5, 0 pièce de 1 → 14300.

Donc \(1200_{10} = 14300_5\).

Les mains à la pâte

  • Convertissez en décimal : \(2340_5\), puis \(333_5\).
  • Comptez de 1 à 30 en base 5 (indice : dès qu’un chiffre atteindrait 5, il repasse à 0 et on augmente le chiffre suivant de 1 — exactement comme en base 10, mais le « débordement » arrive dès 5 au lieu de 10).
  • Convertissez en base 5 le nombre décimal de votre choix entre 50 et 500, en détaillant chaque étape comme dans l’exemple ci-dessus.