Se connecterS'abonner

Chapitre 19

Representing numbers

Lecture : 11 minQuiz de 12 questions

# Representing numbers ## Objectifs et prérequis Ce chapitre vise à permettre aux élèves de Lower Sixth (anglophone) de comprendre comment les nombres sont représentés dans les systèmes numériques utilisés en informatique, de maîtriser les conversions entre ces systèmes, de représenter les nombres négatifs selon les méthodes usuelles (complément à 1 et complément à 2), et d'effectuer des opérations de soustraction en utilisant ces représentations. À l'issue de ce chapitre, l'élève sera capable de : - Expliquer la nécessité de la représentation des données en binaire dans les ordinateurs. - Convertir des nombres entre les systèmes décimal, binaire, octal et hexadécimal. - Représenter des nombres négatifs en complément à 1 et complément à 2 sur un nombre donné de bits. - Effectuer des soustractions binaires en utilisant le complément à 2. - Analyser les avantages et limites de chaque méthode de représentation des nombres négatifs. - Résoudre des problèmes concrets liés à la représentation des nombres dans des contextes africains et camerounais (ex. : capteurs agricoles, systèmes de paiement mobile, enregistrements de données météorologiques). **Prérequis** : Maîtrise des opérations arithmétiques de base en base 10, compréhension du principe de position dans les systèmes de numération, familiarité avec les puissances de 2 (jusqu'à 2^16), et capacité à travailler avec des tableaux de conversion. --- ## I. Introduction to data representation and number systems ### Contexte Les ordinateurs ne comprennent que des signaux électriques : présence ou absence de tension, interprétables comme 1 et 0. Ainsi, toute donnée — nombre, texte, image, son — doit être codée en binaire. Ce chapitre introduit les fondements de cette représentation, en insistant sur le fait que le choix du système de numération n'est pas arbitraire : il résulte d'un compromis entre lisibilité humaine et efficacité matérielle. Dans le contexte camerounais, cette connaissance est essentielle pour comprendre le fonctionnement des systèmes embarqués utilisés dans l'agriculture de précision (ex. : capteurs de sol dans les plantations de cacao du Sud-Ouest), les terminaux de paiement mobile (comme MTN Mobile Money ou Orange Money), et les stations météorologiques automatisées dans les régions du Nord. ### Définitions et faits clés > **Système de numération positionnel** : Un système où la valeur d'un chiffre dépend de sa position et de la base du système. Exemple : en base 10, le chiffre 5 en position des dizaines vaut 5×10¹ = 50. > **Base (ou radice)** : Nombre de symboles distincts utilisés dans un système de numération. La base 2 utilise {0,1}, la base 8 utilise {0,...,7}, la base 16 utilise {0,...,9,A,B,C,D,E,F}. > **Bit** : Contraction de "binary digit", l'unité minimale d'information en informatique, pouvant prendre les valeurs 0 ou 1. > **Nibble** : Groupe de 4 bits, souvent utilisé en hexadécimal (1 nibble = 1 chiffre hexadécimal). > **Byte** : Groupe de 8 bits, unité de base pour la représentation des caractères (ex. : ASCII) et des petits entiers. > **Mot machine** : Nombre de bits traitées en une seule opération par le processeur (souvent 16, 32 ou 64 bits dans les systèmes modernes ; en Lower Sixth, on se limite généralement à 8 ou 16 bits pour la pédagogie). ### Systèmes de numération étudiés | Système | Base | Symboles utilisés | Utilisation en informatique | |--------|------|-------------------|------------------------------| | Décimal | 10 | 0,1,2,3,4,5,6,7,8,9 | Interaction humaine, affichage | | Binaire | 2 | 0,1 | Représentation fondamentale dans les circuits | | Octal | 8 | 0,1,2,3,4,5,6,7 | Anciennement utilisé pour représenter des groupes de 3 bits (ex. : permissions Unix) | | Hexadécimal | 16 | 0-9, A-F (A=10, B=11, C=12, D=13, E=14, F=15) | Représentation compacte de la mémoire, adresses, couleurs web | ### Exemples concrets (camerounais/africains) - Un capteur de température dans une ferme laitière de l'Ouest enregistre des valeurs sur 8 bits. Une lecture de 25°C est stockée comme 00011001 en binaire (25 en décimal). - Une adresse mémoire dans un terminal de paiement mobile utilisé à Douala est affichée en hexadécimal : 0x3AF4. Cela correspond à 15092 en décimal, bien plus lisible que 0011101011110100 en binaire. - Le code couleur d'un panneau solaire photovoltaïque installé à Yaoundé est spécifié en hexadécimal : #FF5733 (rouge-orangé), où chaque paire représente l'intensité de rouge, vert et bleu sur 8 bits. ### Vocabulaire à retenir - Position, poids de position, conversion directe, groupe de bits, représentation naturelle, limite de représentation. ### Exemple de sujet type examen avec plan **Sujet** : Un capteur d'humidité du sol dans une plantation de bananes près de Buea mesure des valeurs entre 0 et 100%. Ces valeurs sont codées sur 7 bits en binaire naturel. a) Quelle est la valeur maximale pouvant être représentée ? b) Convertir 63% en binaire sur 7 bits. c) Pourquoi utilise-t-on parfois l'hexadécimal pour afficher ces valeurs sur un écran LCD ? d) Si le capteur envoie la valeur 0b1000000, quelle est la pourcentage mesuré ? e) Quel est l'avantage du binaire par rapport au décimal pour la transmission sans fil de ces données dans une zone rurale à faible bande passante ? **Plan attendu** : a) 2⁷ - 1 = 127 → mais comme l'échelle est 0-100%, la valeur maximale utile est 100 (mais la représentation permet jusqu'à 127). b) 63 en binaire : 63 ÷ 2 = 31 r1 → 31÷2=15 r1 → 15÷2=7 r1 → 7÷2=3 r1 → 3÷2=1 r1 → 1÷2=0 r1 → lire de bas en haut : 0111111 (7 bits). c) L'hexadécimal permet une représentation plus compacte : 7 bits nécessitent 2 chiffres hexadécimaux (puisque 2×4=8 bits ≥ 7), contre 7 caractères en binaire → réduit la charge d'affichage et de transmission. d) 0b1000000 = 64 en décimal → 64%. e) Le binaire utilise seulement deux états (0/1), facilement distinguables même avec du bruit électrique ; le décimal nécessiterait 10 niveaux de tension, beaucoup plus sensibles aux interférences et à la dégradation du signal sur de longues distances (ex. : entre Bamenda et les plantations lointaines). --- ## II. Conversion between number systems and representing negative numbers ### Contexte Après avoir compris comment représenter les nombres positifs, il devient nécessaire de représenter les nombres négatifs pour effectuer des opérations comme la soustraction ou mesurer des grandeurs pouvant être inférieures à zéro (température, débit net, solde bancaire). Deux méthodes principales sont étudiées : le complément à 1 et le complément à 2. Cette leçon insiste sur le fait que la représentation des nombres négatifs n'est pas une simple extension du binaire positif : elle nécessite un protocole clairement défini pour éviter les ambiguïtés (comme le zéro négatif) et garantir la cohérence des opérations arithmétiques. Dans les systèmes embarqués camerounais (ex. : stations de mesure du pH des sols dans la région du Littoral), ces représentations permettent de traiter des variations autour d'un point neutre (pH 7 = 0 en échelle relative). ### Définitions et faits clés > **Complément à 1 d'un nombre binaire** : Obtenu en inversant tous les bits (0 devient 1, 1 devient 0). Noté : C₁(N) = ¬N. > **Complément à 2 d'un nombre binaire** : Obtenu en ajoutant 1 au complément à 1. Noté : C₂(N) = C₁(N) + 1. > **Bit de poids fort (MSB)** : Le bit le plus à gauche dans une représentation binaire ; dans les représentations signées, il indique le signe (0 = positif ou zéro, 1 = négatif). > **Plage de représentation en complément à 2 sur n bits** : De -2^(n-1) à +2^(n-1) - 1. Exemple : sur 8 bits, de -128 à +127. > **Zéro unique** : Propriété du complément à 2 : il n'existe qu'une seule représentation du zéro (00000000), contrairement au complément à 1 qui en a deux (00000000 et 11111111). > **Overflow (dépassement de capacité)** : Se produit lorsque le résultat d'une opération dépasse la plage de représentation autorisée (ex. : 127 + 1 sur 8 bits en complément à 2 donne -128, ce qui est incorrect). ### Tableau de comparaison : Complément à 1 vs Complément à 2 (sur 4 bits) | Nombre décimal | Binaire naturel | Complément à 1 | Complément à 2 | |----------------|-----------------|----------------|----------------| | +0 | 0000 | 0000 | 0000 | | -0 | — | 1111 | — (n'existe pas) | | +1 | 0001 | 0001 | 0001 | | -1 | — | 1110 | 1111 | | +2 | 0010 | 0010 | 0010 | | -2 | — | 1101 | 1110 | | +3 | 0011 | 0011 | 0011 | | -3 | — | 1100 | 1101 | | +4 | 0100 | 0100 | 0100 | | -4 | — | 1011 | 1010 | | +5 | 0101 | 0101 | 0101 | | -5 | — | 1010 | 1009 → 1001 | | +6 | 0110 | 0110 | 0110 | | -6 | — | 1001 | 1000 | | +7 | 0111 | 0111 | 0111 | | -7 | — | 1000 | 1001 → 1001 (attention : erreur dans le tableau initial, correction : -7 en C2 sur 4 bits = 1001) | | -8 | — | — | 1000 (seulement en C2) | > **Correction** : Sur 4 bits en complément à 2 : > -7 : 0111 → C1 = 1000 → +1 = 1001 > -8 : 1000 (car -2³ = -8, et 1000 est la représentation de -8 en C2 sur 4 bits) > Le complément à 1 ne peut pas représenter -8 sur 4 bits. ### Règles de conversion > Pour convertir un nombre négatif décimal en binaire signé (complément à 2) sur n bits : > 1. Convertir la valeur absolue en binaire sur n bits. > 2. Calculer le complément à 1. > 3. Ajouter 1. > 4. Vérifier que le MSB est 1 (négatif). > Pour convertir un binaire signé (supposé en complément à 2) en décimal : > 1. Si le MSB est 0 → convertir directement en décimal (positif). > 2. Si le MSB est 1 → calculer le complément à 2 (inverser + ajouter 1) pour obtenir la valeur absolue, puis mettre le signe négatif. ### Exemples concrets (camerounais/africains) - Une station météorologique à Ngaoundéré enregistre des températures pouvant descendre jusqu'à -15°C la nuit en saison sèche. Ces valeurs sont stockées sur 8 bits en complément à 2. -15 en binaire : |15| = 00001111 → C1 = 11110000 → C2 = 11110001 → donc -15 = 11110001₂. Pour lire : MSB=1 → négatif → C1 de 11110001 = 00001110 → +1 = 00001111 = 15 → donc -15°C. - Dans un système de gestion de batterie pour un pompe solaire utilisée dans un village du Nord, le courant de charge/décharge est mesuré avec signe : positif = charge, négatif = décharge. Sur 8 bits en C2, une lecture de 11001100 indique : MSB=1 → négatif → C1 = 00110011 → +1 = 00110100 = 52 → donc -52 unités (ex. : 0,52 A de décharge). - Un capteur de débit dans un fleuve près de Garoua mesure le débit net (entrée - sortie). Une valeur de -30 L/s est codée sur 16 bits en C2 : |30| = 0000000000011110 → C1 = 1111111111100001 → C2 = 1111111111100010 → donc -30 = 1111111111100010₂. ### Vocabulaire à retenir - Complément à 1, complément à 2, bit de signe, plage de représentation, zéro unique, overflow, extension de signe, représentation signée. ### Exemple de sujet type examen avec plan **Sujet** : Un système de surveillance des niveaux d'eau dans un barrage près de Foumban utilise un capteur qui renvoie des valeurs signées sur 8 bits en complément à 2, où 0 = niveau normal, positif = excès, négatif = déficit. a) Quelle est la plage de valeurs pouvant être représentée ? b) Convertir -25 en binaire signé sur 8 bits (C2). c) Lire la valeur binaire 10010110 en décimal (supposé C2). d) Pourquoi le complément à 2 est-il préféré au complément à 1 dans ce type de système ? e) Si le capteur envoie 01111111 suivi de 10000000, que se passe-t-il et quel phénomène cela illustre-t-il ? **Plan attendu** : a) Sur 8 bits en C2 : -2⁷ à +2⁷-1 → -128 à +127. b) |25| = 00011001 → C1 = 11100110 → C2 = 11100111 → donc -25 = 11100111₂. c) MSB=1 → négatif → C1 de 10010110 = 01101001 → +1 = 01101010 = 106 → donc -106. d) Le complément à 2 évite le zéro négatif (présent en C1 : 00000000 et 11111111 représentent tous deux zéro), ce qui simplifie le matériel et évite les erreurs de comparaison. De plus, l'addition fonctionne naturellement sans correction supplémentaire. e) 01111111 = +127, puis 10000000 = -128 en C2. Le passage de +127 à -128 indique un overflow : on a dépassé la capacité maximale positive. Cela peut se produire si le niveau d'eau augmente brusquement au-delà de l'échelle de mesure du capteur, risquant une mauvaise interprétation du système d'alarme. ---

Quiz du chapitre

12 questions — vérifie chaque réponse pour voir l'explication.

  1. 1. What is the binary representation of the decimal number 13?
  2. 2. Which of the following is the correct hexadecimal equivalent of the binary number 1010 1100?
  3. 3. In two's complement 8-bit representation, what is the decimal value of 1111 0001?
  4. 4. What is the result of adding the binary numbers 1011 and 1101?
  5. 5. A student converts the decimal number 45 to binary and gets 101101. Is this correct?
  6. 6. What is the octal representation of the binary number 110 101 011?
  7. 7. Which of the following binary numbers represents the largest value when interpreted as an unsigned 8-bit integer?
  8. 8. In a system using excess-128 notation for 8-bit numbers, what decimal value does the binary pattern 1000 0000 represent?
  9. 9. A computer stores the number -5 in 8-bit two's complement. What is the binary representation?
  10. 10. Convert the hexadecimal number 2F to decimal.
  11. 11. Which of the following statements about floating-point representation (IEEE 754 single precision) is TRUE?
  12. 12. What is the decimal value of the binary fraction 0.101?