ce petit prog permet de convertir un nombre dans une bases choisie parmi les bases suivante : décimal, binaire, octal et hexadécimal, et de le convertir dans l'une des bases citées ci dessus.
Conclusion :
ce code à été écrit entre 22h et 4h du mat' donc il reste quelque bug par ci par là...(surtout dans la gestion des erreurs), de plus il ne convertis pas les nombre à virgule (ou en tout cas la conversion est fausse).
merci pour les commentaire et de mettre une note...
15 nov. 2003 à 19:47
Y a t-il un truc simple pour faire un décallage de Bit vers la gauche ou vers la droite (comme en c : >>= n ou <<=n) ?
Y a t-il des fonctions en VB pour utiliser des Champs de Bits, c'est à dire je veux forcer le bit 4 d'un long (32 bits) à 0 ou à 1 ?
Merci d'avance
Afyn
Navedac
15 nov. 2003 à 19:52
pour répondre plus précisément à ta question, ces fonctions, si elles existe (ce qui m'étonnerais mais bon tout est possible), je ne les connais pas.
15 nov. 2003 à 21:24
lol
non ... en fait tout ça pour dire que je bosse en ce moment sur des fonctions avancé dans VB comme le decalage de bit, rotation etc...
Et pour dire au tres cher Dr qy'il existait sur ce meme site une source qui converti d'un nombre de base n en base n de (1 a ...) j'ai plus l'id de la source mais bon y'en a pas mal tu aurais pu t'en inspirer...
bref bonne pr@g a tous
15 nov. 2003 à 22:33
Pour forcer un Bit à 1 en C voila la fonction
Bit_1(val, n)
Long val, n;
{
return (val | (1L <<n));
}
Pour effectuer ce "Forcing", on décale le mot de valeur "1" ( il s'agit de Long, puisque il est suivit du caractère "L" ) de 'n' bits, et on effectue un "OU" BINAIRE (signe "|")
Pour Forcer un bit à Zéro (toujours en C)
bit_0(val, n)
long val, n;
{
return (val & ~(1L << n));
}
Remarquer la disposition du signe de complémentation.
On peut egalement avoir besoin d'une fonction qui renvoie la valeur d'un Bit (0 ou 1)
J'ai pas vraiment été capable de développer des fonctions similaires en VB, mais je suis preneur si qq sait faire. Ca permet de gagner pas mal de temps.
je sais que l'expression suivante
If Data <= &H7F
Permet de tester le bit de poid fort d'un Octet (8 bits) donc de savoir
s'il est à 0 ou à 1.
J'aimerai bien pouvoir tester n'importe quel bit d'un mot long (32 bits)
Si vous êtes callés sur cette question, merci d'avance.
Afyn
Navedac
15 nov. 2003 à 22:48
Pour tester :
Bit = iif((Valeur and (2^nBit)),1,0)
Pour allumer :
Valeur = (Valeur or (2^nBit))
Pour eteindre :
Valeur = (Valeur and not (2^nBit))
Mais quand on regarde le code compilé c'est pas
aussi propre que le c (compte tenu des fonctions employé)
@+
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.