Représentation binaire de l'information
Le bit et l'octet
Pour qu'un ordinateur puisse traiter des informations complexes comme des textes, des images ou des sons, il doit d'abord les convertir en ce langage binaire.
- Définition du bit : Le bit (contraction de binary digit, chiffre binaire) est la plus petite unité d'information manipulable par un ordinateur. Un bit ne peut prendre que deux valeurs : 0 ou 1.
- Imaginez un interrupteur : il est soit allumé (1), soit éteint (0). Chaque bit est comme un petit interrupteur.
- Définition de l'octet : Un octet (en anglais, byte) est un groupement de 8 bits. C'est l'unité de mesure standard pour la quantité de données.
- Pourquoi 8 bits ? Avec 8 bits, on peut représenter valeurs différentes (de 00000000 à 11111111). Cela est suffisant pour coder un caractère (une lettre, un chiffre, un symbole) par exemple.
- Unités de mesure (Ko, Mo, Go, To) : Pour mesurer de plus grandes quantités d'informations, on utilise des multiples de l'octet. Attention, en informatique, les préfixes kilo, méga, giga, etc., sont souvent basés sur des puissances de 2 plutôt que de 10, bien que la norme ISO préfère les puissances de 10.
- Kilo-octet (Ko) : 1 Ko = octets = 1024 octets.
- Méga-octet (Mo) : 1 Mo = Ko = 1024 Ko = octets.
- Giga-octet (Go) : 1 Go = Mo = 1024 Mo = octets.
- Téra-octet (To) : 1 To = Go = 1024 Go = octets.
- Ces unités sont cruciales pour évaluer la taille des fichiers, la capacité de stockage d'un disque dur ou la mémoire vive d'un ordinateur. Un fichier de 5 Mo est 5 millions de fois plus petit qu'un disque dur de 5 To.
Numération binaire et décimale
Nous sommes habitués à compter en base 10 (système décimal), mais les ordinateurs utilisent la base 2 (système binaire).
- Système décimal (base 10) : C'est notre système de numération quotidien. Il utilise 10 chiffres (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) et des puissances de 10.
- Exemple : Le nombre 123 en base 10 signifie .
- Système binaire (base 2) : Il utilise seulement 2 chiffres (0, 1) et des puissances de 2.
- Exemple : Le nombre binaire 1011 (lu "un zéro un un" et non "mille onze") signifie .
- Conversion décimal vers binaire : Pour convertir un nombre décimal en binaire, on utilise la méthode des divisions successives par 2 et on conserve les restes en partant du dernier.
- Exemple : Convertir 13 en binaire
- reste 1
- reste 0
- reste 1
- reste 1
- En lisant les restes de bas en haut, on obtient : .
- Exemple : Convertir 13 en binaire
- Conversion binaire vers décimal : Pour convertir un nombre binaire en décimal, on multiplie chaque chiffre par la puissance de 2 correspondant à sa position (en commençant par à droite) et on additionne les résultats.
- Exemple : Convertir en décimal
- .
- Maîtriser ces conversions est fondamental pour comprendre comment l'ordinateur traite les données numériques.
- Exemple : Convertir en décimal
Représentation des nombres entiers
Les nombres entiers (sans virgule) sont stockés directement en binaire.
- Nombres entiers naturels : Ce sont les nombres entiers positifs ou nuls (0, 1, 2, ...). Ils sont représentés par leur équivalent binaire.
- Avec 1 octet (8 bits), on peut représenter des nombres de (00000000) à (11111111).
- Avec bits, on peut représenter valeurs différentes.
- Capacité de codage : La quantité de bits utilisée pour stocker un nombre détermine sa plage de valeurs possibles.
- Plus il y a de bits, plus le nombre maximal représentable est grand.
- Par exemple, un entier sur 16 bits peut aller de 0 à .
- Débordement (overflow) : C'est ce qui se produit lorsqu'un calcul produit un nombre qui est trop grand pour être représenté par le nombre de bits alloué. L'ordinateur ne peut pas stocker ce résultat correctement, ce qui peut entraîner des erreurs.
- Exemple : Si on a un octet (8 bits) et qu'on essaie de stocker le nombre 256, il y aura un débordement car la valeur maximale est 255.
Représentation des caractères
Comment l'ordinateur stocke-t-il les lettres, les chiffres et les symboles ? Par des codes numériques !
- Code ASCII (American Standard Code for Information Interchange) : C'est l'un des premiers standards de codage des caractères. Il utilise 7 bits pour représenter 128 caractères (lettres majuscules et minuscules, chiffres, symboles de ponctuation, caractères de contrôle).
- Exemple : Le caractère 'A' est codé par le nombre décimal 65, qui est en binaire.
- Le 'a' est codé 97, le '0' est codé 48.
- Code Unicode : Le code ASCII était suffisant pour l'anglais, mais insuffisant pour représenter tous les caractères des langues du monde (accents, alphabets non latins comme le chinois, le russe, les émoticônes, etc.). L'Unicode est un standard beaucoup plus vaste qui attribue un numéro unique à chaque caractère, quel que soit la plateforme, le logiciel ou la langue.
- Il utilise de 1 à 4 octets par caractère, permettant de coder des millions de caractères.
- UTF-8 est l'encodage Unicode le plus courant sur le web. Il est compatible avec ASCII (les caractères ASCII sont codés sur 1 octet) et utilise plus d'octets pour les caractères plus complexes.
- Table de caractères : C'est une table qui fait correspondre un nombre (code) à chaque caractère. L'ordinateur utilise cette table pour savoir quel caractère afficher à l'écran quand il lit une séquence de bits.
- Quand vous tapez la lettre 'A' sur votre clavier, l'ordinateur reçoit le code numérique correspondant à 'A' (65 en ASCII/Unicode), le stocke, et quand il doit l'afficher, il consulte la table pour savoir comment dessiner le 'A'.


