Convertisseur d'une base vers une autre (binaire, octal, décimal et hexadécimal)

Soyez le premier à donner votre avis sur cette source.

Vue 8 135 fois - Téléchargée 1 059 fois

Description

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...

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016
15 nov. 2003 à 19:47
J'ai deux questions :
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
DocteurVB Messages postés 211 Date d'inscription lundi 19 août 2002 Statut Membre Dernière intervention 20 mai 2005
15 nov. 2003 à 19:52
c'est possible je me suis pas trop pencher sur la question... si t'a regarder un peu le code qui n'est pas entièrement de moi (moi et un pote), on utilise pas trop des bits mais plutot des chaine de caractères.

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.
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
15 nov. 2003 à 21:24
Afyn>DocteurVB>Tres cher ami en voyant ta question sur le decalage de bit je me suis dit au tres profond de moi meme "Tient mais n'est pas ce que que tu fait en ce moment ? une source pour ajouter a VB6 des fonctions qui nexiste pas et que serait tres pratique ?" ma reponse fut : "Mais SI"

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
Afyn Messages postés 608 Date d'inscription samedi 3 août 2002 Statut Membre Dernière intervention 22 décembre 2016
15 nov. 2003 à 22:33
J'ai jamais compris pourquoi VB ne possédait pas ce genre de fonction:
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
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
15 nov. 2003 à 22:48
Afyn> et bien en basic sa donne qlq chose comme ça :

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.