begin process at 2012 05 28 23:55:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Créer 1 variable avec plus de 32 bits


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Créer 1 variable avec plus de 32 bits

mardi 24 mars 2009 à 16:07:56 | Créer 1 variable avec plus de 32 bits

Balou001

Bonjour à tous,

Supposons que j'ai une variable V de type unsigned long int dont tous les bits sont à 1 (bits forts à gauche).
quand je fais un V<<=1 ; puis un V>>=1, le bit le plus fort est passé à 0, logique.

J'essaie de conserver cette info, car j'ai parfois besoin de multiplier par 2 (<<=1) des nombres supérieurs à 2^32-1.

J'ai essayé de stocker tous ces bits avec un (char*)malloc, chaque case valant '1' ou '0', mais les opérations finissent par être longues (plusieurs heures de traitement sur des clefs relativement longues).
J'ai essayé de stocker tout ça dans un (unsigned long int *)malloc, chaque bit de chaque case valant soit 1 soit 0. C'est mieux, ça prend moins de place (8 fois moins, encore logique), et c'est plus rapide. Mais le report d'un bit qui saute pour l'ajouter au début de la case suivante est un peu laborieux. Et ça finit par devenir long aussi.

Puis-je créer un type (super méga long int), avec autant de bits que je le veux, et qui accepte les opérateurs binaires ?
Ou voyez-vous une meilleure idée ?

Merci
jeudi 26 mars 2009 à 15:31:40 | Re : Créer 1 variable avec plus de 32 bits

buno

Administrateur CodeS-SourceS
Salut,
unsigned long long peut ptet t'aider

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
jeudi 26 mars 2009 à 15:40:01 | Re : Créer 1 variable avec plus de 32 bits

buno

Administrateur CodeS-SourceS
Re,
Ou bien ça
Ou encore ça
@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
jeudi 26 mars 2009 à 18:12:19 | Re : Créer 1 variable avec plus de 32 bits

Balou001

Merci pour ces infos, je ne connaissais pas.
Je vais regarder ça en détail.

Mais à première vue, ça ne va pas résoudre mon problème.

Je me prends la tête sur des clefs de quasiment 100'000 bits avec des opérations qui se rebouclent environ 100'000 fois sur chaque bit... et c pas satisfaisant.

En cherchant un peu, j'ai trouvé quelque chose qui me semble relativement équivalent.
C'est l'algorithme de Lucas-Lehmer, pour tester si un nombre écrit sous forme binaire est premier ou non.
Les gens qui utilisent ça ont l'air de mettre au carré des nombres binaires de plus de 30'000'000 de bits  et tout ça assez rapidement.
Je n'en demande pas autant...

Une idée de comment ça peut être codé ?
vendredi 27 mars 2009 à 09:31:52 | Re : Créer 1 variable avec plus de 32 bits

buno

Administrateur CodeS-SourceS
Ah non, désolé, je ne maîtrises pas ce domaine...

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...


Cette discussion est classée dans : créer, long, variable, int, bits


Répondre à ce message

Sujets en rapport avec ce message

type de variable? long int ? [ par dleewax ] salut! je suis nouveau dans le C++ et j'ai un petit problème... je suis en train de faire un petit programme permettant de calculer les factorielles.. pb de type de variable [ par mimie_istase ] Salut à tous, Je travaille en C++ sur un programme de corrélation d'images je dois donc manipuler des antiers très grands. Le problème c'est que j'ai probleme allocation memoire dynamique [ par neutrix ] salutvoilaj'ai besoin d'aideje dois convertir un nombre en tableau de chiffres Probleme dans prog de calcul de PI [ par Jarod1980 ] Bonjour tout le monde,J'ai un petit programme basic pour calculer PI en utilisant la formule de Ramanujan:1    2^(3/2)  inf   (4n)! (1103+26390n)      Problème d'interfacage d'une DLL écrite en C++ avec vba [ par pierrinot ] Bonjour, Je dois créer une DLL utilisable par un programme VBA. Je tombe sur un problème d'entête de fonctions. La DLL est bien compilée, mais lorsq Un tableau en variable globale [ par nisaloncaje ] Rebonjour a tous,Je désirerais maintenant que mon tableau qui a pour dimension tab soit accessible à une fonction appelé dans main() :j'ai la syntaxe créer des variable par concaténation [ par nicola2s ] Bonjour !Je développe un jeu de dames et j'ai une classe pion.Jusque là rien de bien compliquer!Je souhaite créer n pions qui s'appelleraient p1, p2, probleme avec printf(%d) [ par jeani763 ] Mon probleme est assez compliqué :Je voudrais que mon programme compte le nombre de lettres que je lui donne ce qui ce fait grace a la fonction cin ; problème de char [ par minet03 ] Bonjour c'est encore le débutant, voilà le code :#include #include #include char inverser_char(char variable[]){ int longueur = strlen(variable); // l declarer une variable globale [ par EricLeRouge ] J'aimerai savoir comment declarer une varible (par ex un int) en globale dans le cas d'un projet avec plusieurs fichiers. Si je cree un .h ou je decla


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales