base 10 -> base 16

base 10 -> base 16 - Aide aux devoirs - Emploi & Etudes

Marsh Posté le 12-09-2007 à 18:24:54    

Bonjour.
 
Est-ce que quelqu'un pourrait m'expliquer la méthode pour le passage de décimal en hexadécimal (pas celle des divisions par 16)
 
Par exemple, pour le nombre 3167, je passe d'abord en binaire et obtient 0011 0001 0110 0111 et puis après je bloque pour passer en hexa.

Reply

Marsh Posté le 12-09-2007 à 18:24:54   

Reply

Marsh Posté le 12-09-2007 à 18:27:12    

euh, juste par curiosité, tu la fais comment ta conversion en binaire ? :/


---------------
Tell me why all the clowns have gone.
Reply

Marsh Posté le 12-09-2007 à 18:45:55    

il faut décomposer chaque chiffre en une somme de 4 bits en utilisant le fait que 3 par exemple est égal à 1x2^0 + 1x2^1 + 0x2^2 + 0x2^3
Tu fais pareil avec les 3 autres chiffres.

Reply

Marsh Posté le 12-09-2007 à 18:48:49    

euh... non :o ou alors explique moi comment tu peux obtenir comme résultat le nombre binaire 1111 avec ta méthode :/


---------------
Tell me why all the clowns have gone.
Reply

Marsh Posté le 12-09-2007 à 18:50:49    

Bonne question. Si je suis venu dans cette catégorie c'est pour recevoir de l'aide pas me faire enfoncer :/

Message cité 1 fois
Message édité par Profil supprimé le 12-09-2007 à 18:51:14
Reply

Marsh Posté le 12-09-2007 à 18:51:23    

edit : t'as fait une erreur au début : 3167 en base 10 n'a jamais fait 0011 0001 0110 0111 en binaire !
 
Mais sinon, une fois la décomposition binaire effectuée, le passage en base 16 est trivial  
 
0011 : 3
0001 : 1
0110 : 6
0111 : 7
 
ce qui fait 3167 en hexa

Message cité 1 fois
Message édité par coolos le 12-09-2007 à 18:55:30
Reply

Marsh Posté le 12-09-2007 à 18:52:21    

coolos a écrit :

0011 : 3
0001 : 1
0110 : 6
0111 : 7
 
ce qui fait 3167 en hexa


on tourne pas un peu en rond là ?

Reply

Marsh Posté le 12-09-2007 à 18:52:33    


bah j'essaye juste de te montrer que ta méthode est fausse, plutôt que de dire "nan, c'est pas comme ça, point." [:mrbrelle]


Message édité par double clic le 12-09-2007 à 18:52:41

---------------
Tell me why all the clowns have gone.
Reply

Marsh Posté le 12-09-2007 à 18:53:14    

Qu'est-ce que tu préconises alors ?

Reply

Marsh Posté le 12-09-2007 à 18:53:54    

pour le passage de decimal en hexadécimal tu fais :
- decimal => binaire
puis
1111 = 15 en binaire donc on code 4 bits en une fois
 
exemple : 1010 = a en hexa
 
1010 1111 = a f

Reply

Marsh Posté le 12-09-2007 à 18:53:54   

Reply

Marsh Posté le 12-09-2007 à 18:54:27    


bah les divisions par 16, pourquoi tu voudrais faire autrement ?


---------------
Tell me why all the clowns have gone.
Reply

Marsh Posté le 12-09-2007 à 18:55:32    


passer de binaire à hexa c'est facile oui, mais encore faut-il que la conversion décimal => binaire soit juste :o et puis je vois pas trop l'intérêt de s'emmerder à faire ça quand on peut le faire directement :/


---------------
Tell me why all the clowns have gone.
Reply

Marsh Posté le 12-09-2007 à 18:55:35    

et en prenant l'exemple de 3167 ?
et la méthode des divisions par 16 consiste en quoi ? (j'ai entendu dire qu'il y avait plus simple, c'est pour ça que je voulais éviter)
 
3167 -> 11000101111 -> C5F, je me trompes ?


Message édité par Profil supprimé le 12-09-2007 à 19:02:26
Reply

Marsh Posté le 12-09-2007 à 19:10:20    

http://img174.imageshack.us/img174/9340/sanstitrelv2.png


---------------
„Ich kann, weil ich will, was ich muss.“ I. Kant
Reply

Marsh Posté le 12-09-2007 à 19:14:56    

merci chris672

Reply

Marsh Posté le 12-09-2007 à 19:15:32    

de rien, c'est exactement le même raisonnement pour le binaire, l'octal ...


---------------
„Ich kann, weil ich will, was ich muss.“ I. Kant
Reply

Marsh Posté le 15-09-2007 à 17:20:51    

1100 0101 1111
   C       5     F
 

Reply

Marsh Posté le 15-09-2007 à 17:27:19    

je prends ma calculette, je mets DEC, je tappe 3167 puis HEX et j'ai C5F

Reply

Marsh Posté le 18-09-2007 à 13:32:33    

double clic a écrit :

euh... non :o ou alors explique moi comment tu peux obtenir comme résultat le nombre binaire 1111 avec ta méthode :/


Pour passer de décimal à Binaire:
Tu prends à chaque fois la plus grande division par 2 possible,pour qu'il te reste 1 ou 0,jusqu'a arriver à 1.
Exemple:
Pour 13:
 
13= 2x6 + 1  
6 = 2x3 + 0  
3 = 2x1 + 1
1 = 2x0 + 1  
 
Tu prends les chiffres en remontant: 1101
 
Pour 25:
 
25= 2x12 + 1
12= 2x6 + 0
6 =  2x3 + 0
3 = 2x1 + 1
1 = 2x0 + 1
 
Soit 11001 qu'on écrit par convention 0001 1001
 
Ensuite la conversion en Hexa se fait comme vu plus haut:
Tu décomposes en paquet de 4:
1101 = 1x8 + 1x4 + 0x2 + 1x1 = 13  donc D  
1010 0011 =1x8 + 0x4 + 1x2 + 0x1  0x8 + 0x4 + 1x2 + 1x1 = 10 3 donc A 3
 
Voila ;)


Message édité par 4lkaline le 18-09-2007 à 13:33:49
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed