Decimale ou Binaire ?

cs_jmtoulon Messages postés 85 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 3 août 2010 - 21 févr. 2006 à 05:10
Egyde Messages postés 158 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 16 juillet 2007 - 21 févr. 2006 à 11:44
Bonjour,
voila, je souhaiterais créer un module qui gère les grands nombres.
Seulement mon probleme est que je c'est pas si je dois faire les traitements en décimale ou en binaire.
Je m'explique :


En decimal
Chaque decimal est ajoutée dans un tableau
Ex le nombre : 12345678deviens: Number1(0) 8: Number1(1) 7: Number1(2) = 6 etc...
Voici ci-dessous un function d'addition qui renvoie un tableau avec le résultat
Function Add(Number1() As Bytes, Number2() As Bytes) As Bytes()
...
End Function


En Binaire
Chaque bit est ajouté dans un tableau
Ex le nombre : 10 codé en bit 1010deviens: Number1(0) False: Number1(1) True: Number1(2) = False: Number1(3) = True
Voici ci-dessous un function d'addition qui renvoie un tableau avec le résultat
Function Add(Number1() As Boolean, Number2() As Boolean) As Boolean()
...
End Function


D'apres vous :) Quelle est la meilleur methode qui est la plus rapide ?
D'apres moi la meilleur methode est la transformation du nombre en binaire car le CPU n'a pas besoin de coder le nombre, parceque je travail avec des boolean(s)
C'est juste une supposition :=)


Merci par avance pour vos remarques :)

5 réponses

Egyde Messages postés 158 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 16 juillet 2007
21 févr. 2006 à 08:05
Juste une question : 43676676888222068965827777500021, ça donne quoi en binaire???
0
cs_jmtoulon Messages postés 85 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 3 août 2010
21 févr. 2006 à 09:40
43676676888222068965827777500021

en binaire donne :

1000100111010001101111010001010111101110011110001110110001111101001101111111111010000010011001001101110101
0
cs_jmtoulon Messages postés 85 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 3 août 2010
21 févr. 2006 à 09:45
10001001110100011011110100010101111011100111100011101100
01111101001101111111111010000010011001001101110101

c mieux
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Modérateur Dernière intervention 23 décembre 2008 23
21 févr. 2006 à 10:28
Que tu utilises le binaire ou le décimal, tu devras faire une
addition, recueillir le résultat et extraire la retenue pour
l'appliquer à l'addition suivante.

Si tu utilises le binaire, tu auras davantage de boucles à réaliser (cf
différence de longueur des nombres dans l'exemple donné ci-dessus). En
plus, tu devras, tout d'abord convertir ton décimal en binaire, et
ensuite ton binaire résultat en décimal...



tout porte à croire que d'un point de vue algorithmique, le passage par le décimal sera plus rapide.


Manu
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Egyde Messages postés 158 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 16 juillet 2007
21 févr. 2006 à 11:44
econs a bien vu où je voulais en venir : convertion décimal->binaire + convertion binaire->décimal = perte de temps.
0