bonjour
j'ai un petit problème en programme bases est comment je peut utiliser et ecrire la puissance de base par exemple "la base b1 à la puissance 2 ou 3"
merci d'avanse
salem
bonjour
j'ai un petit problème en programme bases est comment je peut utiliser et ecrire la puissance de base par exemple "la base b1 à la puissance 2 ou 3"
merci d'avanse
salem
Hie,
Je ressors mes vielles aides de cours, pour expliquer le changement de base:
Normalement, tu dois t'en sortir avec ça, sinon demande.Calcul dans différentes bases
Conventions
Dans tout ce document, on va utiliser les notations suivantes:
Le symbole ^ signifie 'élever à la puissance'
par exemple 10^3 signifie 'élever 10 à la puissance 3' c'est à dire 10*10*10 = 1000
Un nombre suivi par
#B est écrit en base 2 (B pour binaire)
#H est écrit en base 16 (H pour Hexadécimal)
sans précision, il est écrit en base 10
Le symbole * signifie 'multiplier'
Dans les calculs, pour les divisions :
Q signifie Quotient
R signifie Reste
Rappel : Tout nombre élevé à la puissance 0 (zéro) vaut 1
(10^0 = 2^0 = 16^0 = 1)
Quand nous écrivons un nombre, par exemple 573, cela signifie qu'il est égal à la somme:
3 * 10^0 = 3*1 = 3
+ 7 * 10^1 = 7*10 = 70
+ 5 * 10^2 = 5*100 = 500
-----
573
On peut transcrire cela dans une autre base, par exemple en base 2
On ne disposera alors que de 2 symboles, 0 et 1.
Les chiffres en partant de la DROITE signifieront :
0 ou 1 * 2^0
2^1
2^2
2^3
etc...
Soit le nombre 1000111101#B, calculons sa valeur en base 10
1 * 2^0 = 1
+ 0 * 2^1 = 0
+ 1 * 2^2 = 4
+ 1 * 2^3 = 8
+ 1 * 2^4 = 16
+ 1 * 2^5 = 32
+ 0 * 2^6 = 0
+ 0 * 2^7 = 0
+ 0 * 2^8 = 0
+ 1 * 2^9 = 512
-----
573
On peut utiliser une autre base, 16.
Il nous faut alors 16 symboles pour représenter les différents 'chiffres'.
Par convention, on a choisi d'utiliser 0 à 9, puis A à F
A vaut donc 10 (décimal)
B = 11
C = 12
D = 13
E = 14
F = 15
Avec le même principe que pour la base 2, voyons le nombre 23D#H
D * 16^0 = 13
+ 3 * 16^1 = 48
+ 2 * 16^2 = 512
-----
573
Le passage d'une base quelconque en base 10 est donc très simple.
Voyons maintenant comment passer de la base 10 à une autre, exemple en base 16.
La technique suivante permet de trouver les chiffres successifs en partant de la DROITE.
soit le nombre 573.
Divisons le par la base destination, soit 16
573 / 16 = 35(Q) + 13(R)
le reste = 13 = D#H est le premier chiffre à droite de la valeur cherchée
répétons le calcul avec le quotient du calcul précédent (35)
35 / 16 = 2(Q) + 3(R)
le reste = 3 = 3#H est le deuxième chiffre en partant de la droite
et encore une fois :
2 / 16 = 0(Q) + 2(R)
le reste = 2 = 2#H est le troisième chiffre en partant de la droite
Comme le quotient = 0, on peut arrêter.
Le nombre 573 s'écrit donc 23D#H
En supprimant les commentaires, on obtient une disposition claire:
(Q) (R) (R en base 16)
573 / 16 = 35 + 13 D
35 / 16 = 2 + 3 3
2 / 16 = 0 + 2 2
On lit les restes de bas en haut = 23D#H
Refaisons le calcul pour écrire 573 en base 2
(Q) (R)
573 / 2 = 286 + 1
286 / 2 = 143 + 0
143 / 2 = 71 + 1
71 / 2 = 35 + 1
35 / 2 = 17 + 1
17 / 2 = 8 + 1
8 / 2 = 4 + 0
4 / 2 = 2 + 0
2 / 2 = 1 + 0
1 / 2 = 0 + 1
terminé puisque le quotient = 0
et donc en lisant les restes de bas en haut, la valeur est 1000111101#B
Voilà, j'espère que c'est assez clair.
salem
merci beaucoup monsieur drogo à l' aide et à votre générosité et sympathie.
ta soeur Imanou
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager