Vous êtes sur la page 1sur 9

Conversions entre bases 1

Chapitre 1. Systèmes de numération


1.3 Conversions entre bases
1.3.1 Conversion de la base 10 vers les autres bases
1.3.1.1 La méthode des puissances
Pour convertir un nombre entier de la base 10 vers les bases 2, 8 et 16 nous
pouvons utiliser la méthode d’élévation des puissances de la base de
destination.
Il s’agit d’élever les puissances de la base de destination B (2, 8 ou 16) de droite
à gauche en commençant par B0 (20, 80 ou 160) jusqu’à obtenir un nombre
décimal supérieur ou égal au nombre que nous voulons convertir.
Cette méthode est la plus utilisée. Elle se fait en 3 étapes :
• élever les puissances de la base de destination de la droite vers la gauche
à partir de B0 (20, 80 ou 160) ;
• s’arrêter si l’une des puissances de B (2, 8 ou 16) devient égale ou
supérieure au nombre décimal à convertir ;
• chercher l’unique combinaison qui donne le nombre à convertir.
Nous mettons 0 au-dessous des puissances non utilisées, et 1 au-dessous des
puissances utilisées.

Architecture matérielle des machines numériques Elhadji Issa SALL


2 Systèmes de numération

1.3.1.1.1 Conversion décimale-binaire par les puissances


Prenons 12510 que nous allons convertir en base 2. La base de départ est 10 et
la base de destination est 2. Nous allons, à partir de la droite, aligner les
0
puissances de 2 en commençant par 2 jusqu’à obtenir un nombre supérieur
ou égal à 125 avant de nous arrêter.
7 6 5 4 3 2 1 0
2 2 2 2 2 2 2 2
128 64 32 16 8 4 2 1
7
Nous nous arrêtons à 2 (128) qui est supérieur à 125, et qui ne sera pas utilisé.
Nous commençons par 64. Il ne nous reste qu’à chercher les nombres qu’il faut
additionner pour trouver 125. En bas des puissances utilisées, nous mettons 1,
et en bas des puissances non utilisées, nous mettons 0.
7 6 5 4 3 2 1 0
2 2 2 2 2 2 2 2
128 64 32 16 8 4 2 1
1 1 1 1 1 0 1
(1x64)+(1x32)+(1x16)+(1x8)+(1x4)+ (0x2)+(1x1)
64 + 32 + 16 + 8 + 4 + 0 + 1=25
Cette combinaison est unique. 12510= 11111012

12310=111 1011 56710=10 0011 0111 204810=1000 0000 0000


1410=1110 25610=1 0000 0000 204710=0111 1111 1111
210=10 110=1 10010=110 0100
17010=1010 1010 34010=1 0101 0100 100010=11 1110 1000
1510=1111 6310=11 1111 50910=1 1111 1101

Architecture matérielle des machines numériques Elhadji Issa SALL


Conversions entre bases 3

1.3.1.1.2 Conversion décimale-octale par les puissances


Prenons 12510 que nous allons convertir en base 8 en suivant les 3 étapes :
• élever les puissances de 8 de droite à gauche en commençant par 80 ;
• s’arrêter si l’une des puissances devient égale ou supérieure à 125 ;
• chercher l’unique combinaison qui donne 125.
Au-dessous des puissances, nous mettons 1, 2, 3, 4, 5, 6 ou 7 suivant le nombre
de fois qu’ils sont utilisés et 0 si la puissance n’est pas utilisée.
83 82 81 80
512 64 8 1
Nous nous arrêtons à 83 (512) qui est supérieur à 125 et que nous n’allons pas
utiliser. Nous commençons par 64 en posant les questions suivantes :
Combien de fois 64 nous pouvons avoir dans 125 ? 1 seule fois. 125–(1x64)=61
Combien de fois 8 nous pouvons avoir dans 61 ? 7 fois. 61–(7x8)=5
Combien de fois 1 nous pouvons avoir dans 5 ? 5 fois. 5–(5x1)=0
Il reste à chercher la combinaison unique des produits qu’il faut additionner
pour trouver 125.
83 82 81 80
512 64 8 1
1 7 5
(1x64) + (7x8) + (5x1)
64 + 56 + 5 = 12510
12510 = 1758

12310=1738 56710=10678 204810=100008


1410=168 25610=4008 204710=37778
810=10 110=1 10010=1448
17010=2528 34010=5248 100010=17508
1510=178 6310=778 6410=1008
51210=10008 34010=5248 102410=20008
1510=178 58510=11118 50910=7758

Architecture matérielle des machines numériques Elhadji Issa SALL


4 Systèmes de numération

1.3.1.1.3 Conversion décimale-hexadécimale par les puissances


Prenons 12510 que nous allons convertir en base 16.
• élever les puissances de 16 de droite à gauche en commençant par 160 ;
• s’arrêter si l’une des puissances de 16 est égale ou supérieure à 125 ;
• chercher l’unique combinaison qui donne 125.
Au-dessous des puissances, nous mettons 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
suivant le nombre de fois qu’ils sont utilisés, et 0 si la puissance n’est pas
utilisée.
162 161 160
256 16 1
Nous nous arrêtons à 162 (256) qui est supérieur à 125 et que nous n’allons
pas utiliser. Nous commençons par 16 en posant les questions suivantes :
Combien de fois 16 nous pouvons avoir dans 125 ? 7 fois. 125–(7x16)=13.
Combien de fois 1 nous pouvons avoir dans 13 ? 13 fois. 13–(1x13)=0.
Il ne nous reste qu’à chercher la combinaison unique des produits qu’il faut
additionner pour trouver 125.
162 161 160
256 16 1
7 13
(7x161) + (Dx160) = 7D16
112 + 13 = 12510
13 est remplacé par le symbole D. 125 = 7D16

110=1h 10010=64h 1000010=2710h


210=2h 20010=C8h 20 00010=4E20h
310=3h 30010=12Ch 30 00010=7530h
410=4h 40010=190h 40 00010=9C40h
510=5h 50010=1F4h 50 00010=C350h
610=6h 60010=258h 60 00010=FA60h
710=7h 70010=2BCh 70 00010=11170h
1610=10h 80010=320h 100 00010=186A0h
1.3.1.2 La méthode des divisons successives
Cette méthode consiste à diviser le nombre en base 10 par la base de
destination B (2, 8 ou 16). Le premier reste de cette division, qui ne peut être

Architecture matérielle des machines numériques Elhadji Issa SALL


Conversions entre bases 5

compris qu’entre 0 et B-1, constitue le LSB (le bit le moins significatif) du


nombre de la base d’arrivée que nous voulons trouver.
Ensuite, nous divisons le premier quotient entier obtenu par B, ainsi de suite,
jusqu’à ce que l’on n’ait plus rien à diviser. Le dernier reste sera le MSB (le bit
le plus significatif) du nombre de la base d’arrivée que nous cherchons. Les
restes des divisions intermédiaires seront entre le LSB et le MSB.
1.3.1.2.1 Conversion décimale-binaire par les divisions successives
Prenons le nombre décimal 235 que nous voulons convertir en binaire. Nous
divisons 235 par 2 qui est la base de destination. Le premier reste de cette
division constitue le LSB du nombre en base 2 que nous voulons trouver.
Ensuite, nous divisons le résultat obtenu 117 par 2, ainsi de suite jusqu’à ce
que l’on n’ait plus rien à diviser (quotient nul). Le dernier reste sera le MSB
(bit plus significatif ). Les restes des divisions intermédiaires seront entre le
LSB et le MSB.
235 :2 = 117 premier reste (LSB) 1
117 :2 = 58 deuxième reste 1
58 :2 = 29 troisième reste 0
29 :2 = 14 quatrième reste 1
14 :2 =7 cinquième reste 0
7 :2 =3 sixième reste 1
3 :2 =1 septième reste 1
1 :2 =0 dernier reste (MSB) 1

23510 =1 1 1 0 1 0 1 1
On commence par mettre le LSB à droite, ensuite le deuxième reste. Le
dernier reste (MSB) est à gauche du nombre en base 2. 23510=11101011

21:2=10 (r=1); 10:2=5 (r=0); 5:2=2(r=1) ; 2:2=1(r=0); 1:2=0 (r=1) 2110=101012

15:2=7 (r=1); 7:2=3 (r=1); 3:2=1(r=1) ; 1:2=0(r=1) 1510=11112

14:2=7 (r=0); 7:2=3 (r=1); 3:2=1(r=1) ; 1:2=0(r=1) 1410=11102

31:2=15 (r=1); 15:2=7 (r=1); 7:2=3 (r=1); 3:2=1(r=1) ; 1:2=0(r=1) 3110=111112

Architecture matérielle des machines numériques Elhadji Issa SALL


6 Systèmes de numération

1.3.1.2.2 Conversion décimale-octale par les divisions successives


Prenons le nombre décimal 24910 que nous voulons convertir en octal avec la
méthode des divisons successives.
Le nombre décimal 249 sera divisé par 8 qui est la base de destination. Le
premier reste de cette division qui ne peut être que 0, 1, 2, 3, 4, 5, 6 ou 7, les
symboles de la base 8, va constituer le LSB du nombre en base 8 que nous
voulons trouver. Ensuite, nous divisons le résultat obtenu 31 par 8 qui donne
3, avec 7 comme reste. 3 sera ensuite divisé par 8 et va donner 0 et 3 comme
reste. Ce dernier reste est le bit le MSB du nombre en base 8 que nous
cherchons.
249 : 8 = 31 premier reste(LSB) 1
31 :8=3 deuxième reste 7
3 :8=0 dernier reste(MSB) 3
24910 = 3 7 18
Nous commençons par mettre le LSB à droite, ensuite le deuxième reste, le
dernier reste (MSB) est à gauche du nombre en base 8.
Il est possible de chercher les restes en multipliant la partie fractionnaire du
résultat par la base 8.
249/8=31.125, la partie entière est 31, la partie fractionnaire est 0.125. C’est
cette partie fractionnaire que nous multiplions par 8 pour trouver le reste en
octal. 0.125 x 8 donne 1 (reste).
31/8=3.875, la partie entière est 3 et la partie fractionnaire est 0.875 que nous
multiplions par 8 pour trouver le reste en octal. 0.875 x 8 donne 7.
3/8= 0.375, la partie entière est 0 et la partie fractionnaire est 0.375 que nous
multiplions par 8 pour trouver le reste en octal 0.375 x 8 donne 3.

B10 B Q R B10 B Q R B10 B Q R B10 B Q R


128 : 8 = 16 R ( 0 ) 500 : 8 = 62 R ( 4 ) 256 : 8 = 32 R ( 0 ) 1024 : 8 = 128 R ( 0 )
16 : 8 = 2 R (0 ) 62 : 8 = 7 R (6 ) 32 : 8 = 4 R (0 ) 128 : 8 = 16 R ( 0 )
2: 8= 0 R (2 ) 7: 8= 0 R (7 ) 4: 8= 0 R (4 ) 16 : 8 = 2 R ( 0 )
2 : 8 = 0 R ( 2)
12810=2008 50010=7648 25610=4008 102410=20008

Architecture matérielle des machines numériques Elhadji Issa SALL


Conversions entre bases 7

1.3.1.2.3 Conversion décimale-hexadécimale par les divisions


Prenons le nombre décimal 476 que nous voulons convertir en hexadécimal
avec la méthode des divisons successives.
Le nombre décimal 476 sera divisé par 16. Le premier reste de cette division
qui ne peut être que 0, 1, 2, 3, 4, 5, 6 7, 8, 9, A, B, C, D, E ou F, les symboles de la
base 16, va constituer le LSB du nombre en base 16 que nous voulons trouver.
Ensuite, nous divisons le résultat obtenu 29 par 16 qui donne 1, avec 13
comme reste. 1 sera ensuite divisé par 16 et donne 0, et 1 comme reste.
Ce dernier reste sera le bit le MSB du nombre en base 16.
476 : 16 = 29 premier reste (LSB) 12 (C)
29 : 16 = 1 deuxième reste 13 (D)
1 : 16 = 0 dernier reste (MSB) 1

47610 = 1 D C
47610 =1DC
Il est possible de chercher les restes en multipliant la partie fractionnaire du
résultat par la base 16.
476/16=29.75, la partie entière est 29 et la partie fractionnaire est 0.75 que
nous multiplions par 16 pour trouver le reste 0.75 x 16 donne 12 (C).
29/16 = 1.8125, la partie entière est 1 et la partie fractionnaire est 0.8125 que
nous multiplions par 16 pour trouver le reste, 0.8125 x 16 donne 13 (D).
1/16 = 0.0625, la partie entière est 0 et la partie fractionnaire est 0.0625 que
nous multiplions par 16 pour trouver le reste en base. 0.0625x16 donne 1.

B10 B Q R B10 B Q R
123 456 789 : 16 = 7 716 049 R ( 5 ) 5 987 654 321 : 16 = 61 728 395 R ( 1 ) 1
7 716 049 : 16 = 482 253 R ( 1 ) 1 61 728 395 : 16 = 3 858 024 R ( 11 ) B
482 253 : 16 = 30 140 R ( 13 ) D 3 858 024 : 16 = 241 126 R ( 8 ) 8
30 140 : 16 = 1 883 R ( 12 ) C 241 126 : 16 = 15 070 R ( 6 ) 6
1 883 : 16 = 117 R ( 11 ) B 15 070 : 16 = 941 R ( 14 ) E
117 : 16 = 7R( 5 ) 5 941 : 16 = 58 R ( 13 ) D
7 : 16 = 0R( 7 ) 7 58 : 16 = 3 R ( 10 ) A
3 : 16 = 0R( 3 ) 3
123 456 78910 = 75BCD15h 98765432110 = 3ADE68B1h

Architecture matérielle des machines numériques Elhadji Issa SALL


8 Systèmes de numération

1.3.1.3 La méthode des soustractions successives


Cette méthode est une variante de la méthode d’élévation des puissances, et
ne peut d’ailleurs se faire sans elle. Les puissances successives de la base B (2,
8 ou 16) doivent être connues. Le nombre à convertir doit être soustrait de la
puissance la plus élevée et le reste par les puissances suivantes.
1.3.1.3.1 Conversion décimale-binaire par les soustractions
Prenons 23510 que nous voulons convertir en base 2. La base de départ étant
10 et la base de destination 2, nous allons chercher les puissances de 2 jusqu’à
obtenir un nombre supérieur ou égal à 125 avant de nous arrêter.
28 27 26 25 24 23 22 21 20
256 128 64 32 16 8 4 2 1
Nous nous arrêtons à 28 (256), qui est supérieur à 235 et qui ne sera pas
utilisé. Nous soustrayons 27(128) de 235 qui donne 107. Nous soustrayons 26
(64) de 107 qui donne 43, ensuite 25 (32) de 43, jusqu’à 20 (1) de 1 qui donne
0.
En-dessous des puissances de 2 utilisées, nous mettons 1, et 0 en-dessous des
nombres non utilisés.
28 27 26 25 24 23 22 21 20
128 64 32 16 8 4 2 1
(235-128=107) (107-64=43) (43-32=11) (11-8=3) (3-2=1) (1-1=0)
1 1 1 0 1 0 1 1
23510 = 111010112
1.3.1.3.2 Conversion décimale-octale par les soustractions successives
Prenons 23510 que nous voulons convertir en base 8. La base de départ est 10
et la base de destination est 8. Nous cherchons les puissances de 8 jusqu’à
obtenir un nombre supérieur ou égal à 125 avant de nous arrêter.
83 82 81 80
512 64 8 1
Nous nous arrêtons à 83 (512) supérieur à 235, que nous n’allons pas utiliser.
Nous soustrayons 3x82 (192) de 235 qui donne 43. Nous soustrayons 5x81
(40) de 43 qui donne 3, ensuite 3x80 de 3 qui donne 0.

Au-dessous des puissances de 8 utilisées nous mettons le coefficient et 0 au-


dessous des nombres non utilisés.
83 82 81 80
512 64 8 1

Architecture matérielle des machines numériques Elhadji Issa SALL


Conversions entre bases 9

[235-(3x64)]=43 [43-(5x8)]=3 [3-(3x1)]=0 23510=3538


1.3.1.3.3 Conversion décimale-hexadécimale par les soustractions
Prenons 23510 que nous voulons convertir en base 16. La base de départ étant
10 et la base de destination 16, nous allons chercher les puissances de 16
jusqu’à obtenir un nombre supérieur ou égal à 125 avant de nous arrêter.
162 161 160
256 16 1
Nous nous arrêtons à 162 (256) qui est supérieur à 235. 256 ne sera pas utilisé.
Nous allons ensuite soustraire 14x161 (224) de 235 qui donne 11. Nous allons
soustraire 11x160 (11) de 11 qui donne 0.
En-dessous des puissances de 16 utilisées nous allons mettre le coefficient et
0 en-dessous des nombres non utilisés.
162 161 160
235-(14x161 )= 11 11-(11x160 )= 0
14 et 11 devront être remplacés respectivement par E et B 23510 = EB16

Architecture matérielle des machines numériques Elhadji Issa SALL

Vous aimerez peut-être aussi