Deuxième td de numération

publicité
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
Téléchargement