begin process at 2012 05 29 08:03:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Compression, Split & Cryptage

 > 

Manipulation de bits!


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

Manipulation de bits!

mercredi 22 juin 2011 à 20:53:32 | Manipulation de bits!

katerson

Salut à tous!


J'ai pas mal de lacunes dans ce domaine et j'aimerai donc avoir vos avis!

J'ai un mot de 32bits que je dois former grâce à plusieurs paramètres que je reçois; typiquement j'ai:

long int mot_a_remplir;
char param_bit1_a_bit8;
char param_bit8_a_bit12;
//...

Etant donné que je dois remplir ce mot avec des paramètres de 4, 8 ou 16 bits; y-a-t'il un moyen de créer une fonction/macro qui prendrait un paramètre et sa position initiale pour les insérer dans le mot a remplir?

J'avoue ne pas connaitre grand chose en manipulation de bits (peut etre que ce que je veux n'est pas la meilleure chose à faire...) donc je suis preneur d'infos!

Merci à vous,


A+
jeudi 23 juin 2011 à 11:25:06 | Re : Manipulation de bits!

katerson

Up!
Merci!!
jeudi 23 juin 2011 à 20:59:21 | Re : Manipulation de bits!

LA_Tupac

Membre Club
Un long int fait 2 words donc c'est plutôt un short que tu devrais avoir en entrée. Ensuite je pense que les fonction hiword() et loword() de la winapi devraient faire l'affaire.
vendredi 24 juin 2011 à 09:19:06 | Re : Manipulation de bits!

LA_Tupac

Membre Club
Autant pour moi c'est plutôt:

WORD = LOWWORD(QWORD);
WORD = HIWORD(QWORD);

et ce ne sont pas des fonctions mais des macros. Enfin c'est transparent pour toi
vendredi 24 juin 2011 à 13:34:53 | Re : Manipulation de bits!

katerson

Réponse acceptée !
A vrai dire, mon programme est développé pour Windows & Linux avec des bibliothèques génériques, j'ai donc opté pour faire cela(pour ceux que ça intéresse):


#define ENCODE(WORD, MASK, POS, VALUE) ( (WORD & (~(MASK<<POS))) | ((VALUE & MASK) <<POS) )

#define DECODE(WORD, MASK, POS) ((WORD >> POS) & MASK)


/* how it works : */
/* (WORD & (~(MASK<<POS))) => clean bits of mask shifted by pos */
/* ((VALUE & MASK) <<POS) => set bits of mask shifted by pos according to value */


Merci à toi LA_Tupac et A+!


Cette discussion est classée dans : mot, remplir, paramètres, manipulation, bits


Répondre à ce message

Sujets en rapport avec ce message

port serie : manipulation des bits [ par tobby ] Bonjour, je cherche a maitriser l'ensemble des pins du port serie, independement de tout protocol, en C.Est-ce que qqn aurait une solution?merci d'ava Manipulation de bits et d'octets [ par K0rr1gan ] Bonjour, je cherche à récupérer 1 à 1 les différents bits d'un octet pour les classer dans un tableaux de bool à l'aide d'une boucle, pour sa g es Probléme sur le modulo '%' en C [ par Mareck666 ] Bonjour amis codeurs, codeuses, ... voila en surfant sur le net j'ai découvert un code sources dans une section de devellopez.com qui concerne les che manipulation des champs de bits dans le langage C [ par neyahou ] salut a tous, j'ai une question a propos le traitement bit à bit dans le langage C : [color=red]* comment accéder au bits d'une variable quelconque e Chercher un mot dans un fichier [ par nassim1987 ] Bonjour, je voudrais chercher un mot précis dans un fichier et copier le contenue de ce fichier tant qu'on a pas trouvé ce mot , le code que j'ai me d problème avec une fonction mélanger mot [ par lewan ] bonjour, voilà j'ai écris une fonction me permettant de mélanger un mot!! Dans un premier temps je crée un dictionnaire de mot aléatoire et dans un s Erreur dans mon code SHA-1 [ par ndubien ] Bonjour, Je viens d'essayer de développer une application retournant la valeur hachée (SHA-1) d'un fichier, cependant malgré de nombreuses relectures Cryptage à 1024 bits [ par AJoseB ] Bonjour à tous. J'ai un petit problème et est ce que quelqu'un peux m'aider? Qu'est ce qu'un cryptage à 1024 bits? Dans ce cas on utilise quel type de Utilisation de tellg() [ par Ferdi ] Bonjour Je vous demanderai d'être indulgent car je suis débutant. Mon bout de programme est à la fin de ce message. Il ne sert qu'à essayer de me fai Manipulation des fichiers [ par ouafaei ] Bonjour à tous, Comment faire pour écrire un programme qui affiche les mots d'un programme c sans les mots clés avec les numéros de lignes de leur app


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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,608 sec (4)

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