Un ordinateur peut afficher une photographie, jouer une chanson, montrer un film et conserver une phrase écrite dans presque toutes les langues. Pourtant, la mémoire et les liaisons électroniques ne transportent pas directement des montagnes, des voix, des lettres ou des visages : elles transportent des suites de bits. Le passage du monde perçu aux données numériques repose sur des règles précises, différentes pour le texte, l'image, le son et la vidéo.

Dire que « tout devient 0 et 1 » est juste, mais cela n'explique pas le mécanisme. Il faut comprendre comment un caractère, une couleur, une onde sonore ou une image vidéo devient un nombre, puis comment l'ordinateur retrouve sa signification. Trois notions sont essentielles : l'échantillonnage, la quantification et le codage.

Du monde physique aux données numériques

De nombreux phénomènes physiques sont continus. Le son varie sans marches naturelles, la lumière possède d'innombrables intensités, et le mouvement n'est pas spontanément découpé en images. L'ordinateur travaille au contraire avec des valeurs discrètes et finies. Pour conserver un phénomène continu, il l'observe à certains points, attribue des nombres aux mesures et représente ces nombres en binaire.

  • Échantillonnage : choisir des points dans l'espace ou des instants dans le temps.
  • Quantification : rapprocher chaque mesure de l'un des niveaux numériques disponibles.
  • Codage : transformer les valeurs en octets selon un format connu.

Toutes les informations ne suivent pas exactement le même parcours. Le texte est déjà formé de symboles distincts ; le son provient d'une onde continue. L'image numérique échantillonne l'espace en pixels, tandis que la vidéo ajoute la dimension temporelle.

Schéma de la représentation numérique du texte, des images, du son et de la vidéo sous forme de nombres et de bits Textes, images, sons et vidéos suivent des chemins différents, mais finissent tous sous forme de suites organisées de bits.

Le texte : de la touche au point de code Unicode

Lorsque nous appuyons sur une touche, le clavier n'envoie pas directement une lettre avec une signification définitive. Il transmet un code lié à la position ou à l'événement de la touche. Le système d'exploitation l'interprète selon la disposition choisie, par exemple française, italienne ou allemande. L'application reçoit ensuite un caractère.

Les caractères modernes sont généralement représentés par Unicode. Unicode attribue à chaque caractère abstrait un nombre appelé point de code. La lettre majuscule « G » correspond par exemple à U+0047, soit 71 en décimal. L'introduction technique du Consortium Unicode distingue le caractère abstrait, sa forme graphique et les octets qui le mémorisent.

Le nombre Unicode doit ensuite être sérialisé en octets. UTF-8 est l'un des codages les plus utilisés. Il emploie de un à quatre octets et conserve les valeurs des 128 premiers caractères ASCII. La RFC 3629 de l'IETF définit UTF-8, tandis que le modèle de codage Unicode explique les caractères, points de code, unités de code et suites d'octets.

Un caractère n'occupe donc pas toujours un seul octet. « G » en utilise un en UTF-8 ; de nombreuses lettres accentuées en utilisent deux ; beaucoup d'alphabets et de symboles en nécessitent trois ; certains caractères en demandent quatre. Un signe visuel peut aussi être composé de plusieurs points de code, par exemple une lettre suivie d'un accent combinant.

Infographie montrant le trajet d'un caractère du clavier au système d'exploitation, Unicode, UTF-8, la RAM et le processeur De la touche au programme : le caractère est interprété, associé à un point de code Unicode, codé en octets et placé en mémoire.

Précision concernant l'illustration : le caractère cyrillique « к » possède le point de code correct U+043A. La forme « U+043K » visible dans une case est une petite coquille graphique, car l'hexadécimal utilise seulement les chiffres 0 à 9 et les lettres A à F.

Pourquoi le même octet peut avoir plusieurs significations

Une suite de bits n'a pas de sens universel par elle-même. L'octet 01000001 peut être le nombre 65, la lettre « A » en ASCII et UTF-8, une composante de couleur ou un morceau d'instruction. Le contexte fixe l'interprétation : type de donnée, format du fichier, protocole ou programme.

C'est pourquoi les fichiers contiennent souvent des en-têtes et des métadonnées. Ils indiquent le format, les dimensions, le codage des caractères et la manière de lire les octets suivants. Si le contexte est mauvais, des données intactes peuvent sembler corrompues.

Les images : une grille de pixels et de canaux de couleur

Une image matricielle est divisée en pixels. La résolution indique le nombre de pixels en largeur et en hauteur. Une image de 1920 × 1080 contient 2 073 600 positions, mais cela ne suffit pas à expliquer la couleur de chaque pixel.

Dans le modèle RGB, la couleur est décrite par le rouge, le vert et le bleu. Avec 8 bits par canal, chaque composante possède 256 niveaux, de 0 à 255. Un pixel RGB de 24 bits représente donc des millions de combinaisons. Un canal alpha peut ajouter la transparence.

La spécification PNG du W3C décrit les images en niveaux de gris, en couleurs indexées et en couleurs vraies, avec des profondeurs de 1 à 16 bits et un canal alpha optionnel. PNG est sans perte : la décompression restitue exactement les valeurs d'origine. JPEG réduit davantage la taille en éliminant certaines informations, il est donc avec perte.

Quelle est la taille d'une image non compressée ?

On peut multiplier largeur, hauteur, nombre de canaux et bits par canal. Une image RGB de 1920 × 1080 pixels à 8 bits par canal demande environ 6,2 Mo avant compression, sans compter les métadonnées. La compression évite de conserver chaque valeur sous sa forme la plus directe.

Le son : mesurer une onde plusieurs fois par seconde

Un microphone transforme les variations de pression en signal électrique continu. Un convertisseur analogique-numérique mesure l'amplitude à intervalles réguliers. Le nombre de mesures par seconde est la fréquence d'échantillonnage ; le nombre de bits disponibles pour chaque mesure est la profondeur en bits.

Le PCM linéaire conserve les échantillons sous forme de nombres. La Library of Congress présente la fréquence d'échantillonnage et la profondeur en bits comme deux caractéristiques centrales. Le CD audio utilise par exemple couramment 44 100 échantillons par seconde, 16 bits et deux canaux.

Une fréquence plus élevée décrit des variations plus rapides ; une profondeur plus grande fournit davantage de niveaux et réduit l'erreur de quantification. Ces choix augmentent aussi la taille. La Web Audio API du W3C manipule des tampons PCM organisés en canaux et en trames d'échantillons.

Le son peut être compressé. Les formats sans perte conservent tous les échantillons ; les formats avec perte exploitent les propriétés de l'audition humaine. Le décodeur doit finalement reconstruire des échantillons envoyés au convertisseur numérique-analogique puis aux haut-parleurs.

La vidéo : images, temps, son et compression

Une vidéo numérique est une suite temporelle d'images, généralement accompagnée de pistes audio et de métadonnées. Chaque image est une trame. La cadence indique le nombre de trames par seconde : 24, 25, 30, 50 et 60 sont des exemples courants.

Conserver chaque trame comme une image complète non compressée demanderait énormément de données. Les codecs réduisent la taille en exploitant les répétitions dans une image et les ressemblances entre images voisines. Une image clé se décode seule ; d'autres images décrivent surtout les changements.

ITU-T H.264 définit l'un des systèmes de codage vidéo les plus répandus. La spécification WebCodecs du W3C distingue les trames des blocs codés et définit l'image clé. Pour les paramètres de la haute définition et la couleur, ITU-R BT.709 constitue une référence importante.

Codec et conteneur ne sont pas synonymes

Le codec indique comment compresser et décompresser l'audio ou la vidéo. Le conteneur regroupe les pistes, les temps, les sous-titres et les métadonnées. Une extension de fichier ne révèle donc pas toujours le codec utilisé.

Le rôle de la RAM, du processeur et du GPU

Lorsqu'un fichier est ouvert, le système lit les octets du stockage et place les parties nécessaires en RAM. Le programme interprète le format, décompresse les données et construit des structures utilisables. Le processeur coordonne les opérations générales ; le GPU accélère les calculs graphiques et vidéo ; des dispositifs spécialisés convertissent les valeurs numériques en signaux pour l'écran et les haut-parleurs.

La mémoire ne conserve pas une « photographie » comme un objet indivisible, mais des octets organisés. Le processeur n'écoute pas une chanson : il exécute des instructions sur les nombres qui représentent les échantillons. Le sens apparaît grâce à toute la chaîne des standards, fichiers, logiciels et appareils.

Numériser ne signifie pas copier parfaitement le réel

Toute représentation implique des choix. Davantage de pixels peuvent décrire des détails plus petits, davantage d'échantillons des variations plus rapides, davantage de bits des niveaux plus fins. Mais la qualité dépend aussi de la source, des capteurs, des algorithmes, de la compression et de la restitution.

Augmenter les nombres n'améliore pas automatiquement une mauvaise source. Une image floue ne devient pas nette par simple agrandissement ; un enregistrement bruité ne devient pas propre parce qu'il est enregistré en 24 bits ; une vidéo très compressée ne récupère pas les détails déjà supprimés.

Erreurs fréquentes

  • « Un caractère équivaut toujours à un octet » : faux pour de nombreux caractères Unicode.
  • « Plus de mégaoctets signifie toujours plus de qualité » : le format et la compression comptent aussi.
  • « Une vidéo est seulement une suite de JPEG » : les codecs modernes exploitent le temps.
  • « L'ordinateur comprend directement les mots et les images » : il interprète des octets selon des règles.
  • « Numérique signifie sans erreur » : échantillonnage, quantification et compression ont des limites.

Questions fréquentes

Pourquoi UTF-8 utilise-t-il un nombre variable d'octets ?

Pour rester compatible et efficace avec ASCII tout en représentant l'ensemble d'Unicode.

Combien de couleurs un pixel RGB 24 bits peut-il représenter ?

256 × 256 × 256, soit 16 777 216 valeurs possibles.

Quelle différence entre fréquence d'échantillonnage et profondeur en bits ?

La fréquence indique le nombre de mesures par seconde ; la profondeur, le nombre de niveaux disponibles pour chaque mesure.

Pourquoi les vidéos sont-elles volumineuses ?

Elles combinent des millions de pixels, beaucoup d'images par seconde, la couleur, le son et les métadonnées.

Sources officielles et approfondissements