Accueil

Orientation générale

Barre de recherche

DicoNombre

DicoMot Math

DicoCulture

Atlas des maths

Rubriques

Index alphabétique

Nouveautés

Actualités

Références

Édition du: 08/02/2020

M'écrire

Brèves de Maths

 

INDEX

 

Numération

 

Types de nombres

Numération – Conversion

Décimal

Binaire

Octal

En pratique

Les BASES

Hexadécimal

Bases 16 &  32

Base 60

 

 

NOMBRES

 

Nombres

 

Sommaire de cette page

Classique

>>> Systèmes base 16 et 32

>>> Programmation Maple

>>> Conversion par le binaire

 

Travaux pratiques avec les bases

>>> Conversion 32 en 16

>>> Explications

>>> Formule de conversion

>>> Logiciel de calcul

>>> Exemples de conversion

 

Débutants

Conversion

 

Glossaire

Nombres

 

 

Base 16 et Base 32

 

Comment convertir un nombre exprimé en base 32 en un nombre en base 16 (hexadécimale). 

Exemple de raisonnement et, établissement de la formule.

In fine, on donne la méthode la plus rapide pour convertir

en passant par un intermédiaire: le binaire.

 

 

SYSTÈME hexadécimal et base 32

haut

 

En numération hexadécimale, on utilise non pas 10 chiffres mais 16.

 

On pourrait garder les nombres 10, 11 etc. Mais alors, il faut considérer le nombre comme un bloc

En fait, la numération hexadécimale étant très répandue en informatique, et pour ne pas confondre, on utilise généralement les lettres A, B…

 

 

0

1

2

3

4

5

6

7

8

9

 

10

11

12

13

14

15

A

B

C

D

E

F

 

On compte alors:

 

Bloc- chiffres

14

15

1, 1

1, 2

1, 10

1, 11

1, 12

Avec lettres

E

F

11

12

 

1A

1B

1C

 

 

En base 32

 

Il y a 32 chiffres

 

[ Nombre décimal, [ sa conversion en base 32 ] ]

[30, [30]], [31, [31]], [32, [1, 0]], [33, [1, 1]], [34, [1, 2]],

[ [61, [1, 29]], [62, [1, 30]], [63, [1, 31]], [64, [2, 0]], [65, [2, 1]]

 

 

Programmation Maple

haut

Commentaire

Préparation d'une liste L.

Boucle d'analyse des nombre n de 30 à 35.

Conversion en base 32 en N.

Quantité de chiffres dans q.

Inversion de la liste L, la conversion donne les chiffres en commençant par les chiffres de poids faible.

Mise en liste de n et sa conversion en base 32.

Fin de boucle (od, inverse de do)

Demande d'impression de la liste L.

 

En bleu le résultat du traitement.

Voir ProgrammationIndex

 

 

Conversion par le BINAIRE

haut

 

En pratique, pour convertir un nombre base 32 en 16 ou en 8 ou en 2, c'est très facile, on passe systématiquement en binaire.

 

 

 

Principe de conversion base 32 en base 16

Une valeur hexadécimale (24) est représentée en binaire

de façon unique par un groupe de 4 bits.

 

Une valeur en base 32 (25) est représentée en binaire

de façon unique par un groupe de 5 bits.

 

De sorte que:

un nombre binaire s'exprime:

en base 16 en regroupant les bits par paquets de 4;

en base 32 en regroupant les bits par paquets de 5.

 

Soit une méthode simple et rapide de conversion, résumée ici:

N32 => binaire5 => binaire4 => N16

 

Méthode

 

Transformer chaque digit du nombre base 32 par sa représentation binaire à 5 chiffres: c'est la valeur binaire du nombre.

Regrouper tous les bits en paquets de 4.

Donner à chaque paquet sa valeur hexadécimale: c'est le nombre en hexadécimal.

 

 

Exemple

 

[2, 2 , 2] 32 = ?

 

 

[2, 2 , 2] 32 = [8, 4 , 2] 16

 

 

Notation base 32

2

2

2

Notation binaire

0

0

0

1

0

0

0

0

1

0

0

0

0

1

0

Paquet de 4 bits

0

0

0

1

0

0

0

0

1

0

0

0

0

1

0

Notation base 16

0

8

4

2

 

[2 , 22 , 17] 32 =  ?

 

[2 , 22 , 17] 32 =   [10 , 13 , 1] 16

 

 

Digit 3

Digit 2

Digit 1

Notation base 32

2

22

17

Notation binaire

00010

10110

10001

Paquet de 4 bits

000 1010 1101 0001

Notation base 16

10

13

1

 

 

 

 

 CONVERSION 32 en 16

haut

Ce qui suit sert à illustrer l'utilisation des bases.

En réponse à une demande d'un visiteur du site.

Exemple

[1 , 4]Base 32 = [2 , 4]Base 16

 

 

En base 16 (en jaune)

On constate que le motif vertical des "unités" 1, 2, 3, 4…14, 15 se répète de manière symétrique.

 

Quant au chiffre des "dizaines", il tout simplement multiplié par 2 pour 0 à 15 et on y ajoute 1 pour 16 à 31.   

 

Table de conversion: base 32 en base16

32 = >

16

 

32 = >

16

 

32 = >

16

0

0

0

0

 

1

0

2

0

 

2

0

4

0

0

1

0

1

 

1

1

2

1

 

2

1

4

1

0

2

0

2

 

1

2

2

2

 

2

2

4

2

0

3

0

3

 

1

3

2

3

 

2

3

4

3

0

4

0

4

 

1

4

2

4

 

2

4

4

4

0

5

0

5

 

1

5

2

5

 

2

5

4

5

0

6

0

6

 

1

6

2

6

 

2

6

4

6

0

7

0

7

 

1

7

2

7

 

2

7

4

7

0

8

0

8

 

1

8

2

8

 

2

8

4

8

0

9

0

9

 

1

9

2

9

 

2

9

4

9

0

10

0

10

 

1

10

2

10

 

2

10

4

10

0

11

0

11

 

1

11

2

11

 

2

11

4

11

0

12

0

12

 

1

12

2

12

 

2

12

4

12

0

13

0

13

 

1

13

2

13

 

2

13

4

13

0

14

0

14

 

1

14

2

14

 

2

14

4

14

0

15

0

15

 

1

15

2

15

 

2

15

4

15

0

16

1

0

 

1

16

3

0

 

2

16

5

0

0

17

1

1

 

1

17

3

1

 

2

17

5

1

0

18

1

2

 

1

18

3

2

 

2

18

5

2

0

19

1

3

 

1

19

3

3

 

2

19

5

3

0

20

1

4

 

1

20

3

4

 

2

20

5

4

0

21

1

5

 

1

21

3

5

 

2

21

5

5

0

22

1

6

 

1

22

3

6

 

2

22

5

6

0

23

1

7

 

1

23

3

7

 

2

23

5

7

0

24

1

8

 

1

24

3

8

 

2

24

5

8

0

25

1

9

 

1

25

3

9

 

2

25

5

9

0

26

1

10

 

1

26

3

10

 

2

26

5

10

0

27

1

11

 

1

27

3

11

 

2

27

5

11

0

28

1

12

 

1

28

3

12

 

2

28

5

12

0

29

1

13

 

1

29

3

13

 

2

29

5

13

0

30

1

14

 

1

30

3

14

 

2

30

5

14

0

31

1

15

 

1

31

3

15

 

2

31

5

15

 

 

 

 

Explications

haut

Avec un peu de maths,

on peut comprendre pourquoi c'est si simple

Évidemment, 32 = 2 x 16.

 

Rappel

x0 = 1 et x1 = x

 

Base 32

N32 =

c x 322

+ b x 321

+ a x 320

Base 16

N16 =

c x (2 x16)2

+ b x (2 x 16)1

+ a x (2 x 16)0

 

22 c x 162

+ 21 b x 161

+ 20 a x 160

4 c x 162

+ 2 b x 161

+ 1 a x 160

 

 

 

Et les retenues…ne pas les oublier!

Oui, ça se complique un peu!

En effet, il se peut que a soit supérieur à la valeur de la nouvelle base (16).

Alors, il faut retrancher 16 aux unités et ajouter 1 de retenue aux "dizaines".

 

Exemple

[0,17]32 =

0 x 32 + 17

=

17

=

16 + 1

=

1 x 161 + 1

=

[1, 1]16

 

 

Formule de CONVERSION

haut

 

Ébauche de formule

a16 = a32 mod 16

On note:

A = a mod 16

 

qui veut dire que le nouveau coefficient est tout simplement le reste de l'ancien dans sa division par 16:

17 / 16 = 1 reste 1

On remarque aussi que la retenue est égale à la partie entière de la division

Rb = Entier (a32 / 16)

En notant: Rb = Entier (a / 16) 

 

Formulation

a, b, c: coefficients en base 32

A, B, C en base 16

 

N32 =

c x 322

+ b x 321

+ a x 320

N16 =

4 c x 162

+ 2 b x 161

+ 1 a x 160

C x 162

B x 161

A x 160

 

Avec

C = (4c + Rc) mod 16

Avec

B = (2b+ Rb) mod 16

Avec

A = a mod 16

Avec

Rc = Ent (2b / 16)

Avec

Rb = Ent (a / 16)

 

 

On peut poursuivre l'établissement de la formule en procédant de la même manière.

 

 

 

 LOGICIEL DE CALCUL

haut

 

 

 

Les logiciels de calcul mathématique produisent directement la conversion d'une base dans un autre.

 

 

 

L'instruction correspondante avec MAPPLE est:

convert ( [c,b,a], base, 32, 16) )

 

 

Exemple de programme de vérification de la formule

N32 = [2 , 22 , 17]

 

# Coefficients du nombre en base 32

a := 17:

b := 22:

c := 2:

# Calcul des coefficients en base 16

A := a mod 16;

B := (2*b+ trunc(a/16) ) mod 16;

C := (4*c+ trunc(2*b/16) ) mod 16;

#Vérification avec l'instruction incluse

X := convert ( [a,b,c], base, 32, 16 );

 

Impression du résultat de calcul

A := 1

B := 13

C := 10

X := [1, 13, 10]

N16 = [10 , 13 , 1]

Note: Mapple donne les coefficients dans l'autre sens

 

 

Quelques conversions

[1, 1, 1], [4, 2, 1]

[2, 2, 2], [8, 4, 2]

[3, 3, 3], [12, 6, 3]

[4, 4, 4], [1, 0, 8, 4]

[5, 5, 5], [1, 4, 10, 5]

[6, 6, 6], [1, 8, 12, 6]

[7, 7, 7], [1, 12, 14, 7]

[8, 8, 8], [2, 1, 0, 8]

[9, 9, 9], [2, 5, 2, 9]

[1, 2, 3], [12, 4, 1]

[2, 3, 4], [1, 0, 6, 2]

[3, 4, 5], [1, 4, 8, 3]

[4, 5, 6], [1, 8, 10, 4]

[5, 6, 7], [1, 12, 12, 5]

[6, 7, 8], [2, 0, 14, 6]

[7, 8, 9], [2, 5, 0, 7]

 

 

Haut de page

 

Retour

*      Base 16

Suite

*       Base 60 – Sexagésimale

Voir

*      Numération

*      Base 2 – Dualité

*      Puissances de 2

*      Mille en binaire et autres bases

*      Inventaire des nombres

*      Décomposition des nombres

*    Pi en hexadécimal

*       Base ternaire

Sites

*       Hexadecimal – Wolfram MathWorld

Cette page

http://villemin.gerard.free.fr/Wwwgvmm/Numerati/ConvHexa.htm