Tom's Guide > Forum > Programmation > Probleme pour convertir de la base 10 à la base 16

Probleme pour convertir de la base 10 à la base 16

Forum Programmation : Probleme pour convertir de la base 10 à la base 16

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour à tous,
pourrais me dire comment fait-on pour passer d'une base 10 à une base 16.
C'est surtout la partie apres la virgule qui me pose problème, je m'explique:
ex:
(33,242)en base 10
pour (33)en base 10 sa fait 21 en base ok, on divise successivement par 16 mais comment fait-on pour 0, 242??

Merci

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Un nombre en base 10 se décompose en chiffres multipliés par 10^0, 10^1, 10^2, 10^3, etc.
Pour les nombres à virgules, c'est 10^(-1), 10^(-2), 10^(-3), 10^(-4), etc.

En base 16, c'est une décomposition en 16^qqchose.
Voilà.

------------------------------ 6800A007B81300CD10B00131C989CF26880541
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky

Hmm peux tu donner un exemple s'il te plait je n'ai pas totu saisi.

------------------------------ Codialement, Hrusdik.
Répondre à Hrusdik
- 0 +

Tu as saisi les deux premières phrases ?

Dans la troisième, tu prends les deux premières, et tu remplaces 10 par 16

Répondre à OmaR

hmmm 33,242(10) ca donne :
3*10^1 + 3*10^0 + 2*10^(-1) + 4*10^(-2) + 2*10^(-3)

mais pour la base 16 ca donne quoi si je voeux convertir 33,242 en base 16 ?

------------------------------ Codialement, Hrusdik.
Répondre à Hrusdik
- 0 +

C'est le même pricnipe que pour 33; sauf que c'est derrière la virgule...

Répondre à OmaR

Pour 33, on commence par le plus grand chiffre pour finir par le premier: E(33/16) = 2
33 - 16 * E(33/16) = 1 = 1 * 10^0
donc 33=21(hexa)

Pareil avec la virgule (16^-1 = 0.0625)
E(0.242 / 0.0625) = 3

0.242 - 0.0625 * E(0.242 / 0.0625) = 0.0545
E(0.0545 / 0.00390625) = 13 (=D(hexa))

0.0545 - 0.00390625 * E(0.0545 / 0.00390625) = 0.00371875
E(0.00371875 / 0.000244140625) = 15 (=F(hexa))

33.242 = 21.3DF...
Etc.

Bon, si la question réfère un problème informatique, on utilise pas ça du tout, mais un mode de calcul similaire à la virgule flottante

------------------------------ 6800A007B81300CD10B00131C989CF26880541
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky

Ok Merci.

------------------------------ Codialement, Hrusdik.
Répondre à Hrusdik
Tom's Guide > Forum > Programmation > Probleme pour convertir de la base 10 à la base 16
Aller à :

Il y a 1516 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens