Systèmes de numération 2 Rappel. Pour tout b ∈ N, b0 = 1 et b1 = b. Dénition. Soit b un entier strictement positif. La représentation d'un entier N en base b est la donnée d'une suite de chires a0 , . . . , ak tels que 0 ≤ ai ≤ b−1 pour tout i ≤ k et N = ak bk + ak−1 bk−1 + . . . + a2 b2 + a1 b + a0 . On note N = (ak . . . a0 )b . Théorème. Pour tous b > 0 et N ∈ N, il existe une unique représentation de N en base b. Elle peut être obtenue par divisions euclidiennes successives : Comme b > 0 et N ≥ 0, il existe un unique quotient q0 ≥ 0 et un unique reste 0 ≤ a0 ≤ b − 1 tels que N = q0 b + a0 q0 = q1 b + a1 ... = ... qk−2 = qk−1 b + ak−1 qk−1 = 0 b + ak où qk−1≤b−1 L'algorithme s'arrête quand le quotient est nul. Démonstration. N On remplace successivement les quotients par leur valeur : = q0 b + a0 = (q1 b + a1 )b + a0 = ... = ((((qk−1 b + ak−1 )b + ak−2 )b + . . .)b + a1 )b + a0 = ((((ak b + ak−1 )b + ak−2 )b + . . .)b + a1 )b + a0 On développe la dernière égalité pour retrouver la dénition de l'écriture en base b. N = ak bk + ak−1 bk−1 + . . . + a2 b2 + a1 b + a0 . Formule de Horner Soit b > 0. Si N = (ak . . . a0 )b , alors N = ((((ak b + ak−1 )b + ak−2 )b + . . .)b + a1 )b + a0 . 1 De la base binaire aux bases octales et hexadécimales. Les nombres entre (000)2 et (111)2 représentent les nombres entre 0 et 7. Pour passer de la base 2 à la base 8 on regroupe la décomposition en base par groupe de 3 chires que l'on traduit en base 10. Les nombres entre (0000)2 et (1111)2 représentent les nombres entre 0 et 15. Pour passer de la base 2 à la base 16 on regroupe la décomposition en base par groupe de 4 chires que l'on traduit en base 10. 1 Retour sur la semaine précédente. Révisions. 1. Calculer 1337 en base 7 par divisions euclidiennes successives, vérier le résultat avec la formule de Horner. 2. En base 2 par divisions euclidiennes successives et par la méthode directe (210 = 1024, 28 = 256, 25 = 32). Donner les résultats en base 8 et 16. 3. Calculer (825)7 en base décimale. Exercice 0. L'entier (32)7 est-il pair ? Exercice 1. Donnez une méthode rapide pour multiplier un nombre binaire par 2. Puis par 2k . Et pour faire une division euclidienne par 2 ? Exercice 2. Donnez la représentation de (4265)7 en binaire. En déduire la représentation octale et hexadécimale. 2 Arithmétique en bases 2 et 16 Exercice 3. Pour les opérations suivantes, convertissez les arguments en base deux, et eectuez le calcul dans cette base. Vous pouvez vérier le résultat par un calcul en base 10. 1567 + 379 29 ∗ 21 1567 − 379 Exercice 4. Eectuez les opérations suivantes en base seize. A59E + C87A7 A74 × 59 C87A7 − A59E 3 Nombres non entiers 3.1 Nombres décimaux en virgule xe Exercice 5. Donnez l'écriture décimale des nombres non-entiers suivants : a) (0, 277)8 b) (0, 011010001)2 2 3.2 Conversion Exercice 6. Convertir les nombres suivants en base 2. a) 0, 289 b) 0, 1. Que se passe-t-il ? 3.3 Virgule ottante Exercice 7. Donner l'écriture en virgule ottante de la base 2 de 12.125. 3