je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
Donc je ne sais pas comment faire, si quelqu'un a une solution, je
suis preneur.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raphael TOSTO
"Frederic Sicot" a écrit dans le message de news:
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
"Frederic Sicot" <frederic.sicot@etienne-lacroix.com> a écrit dans le
message de news:a5961a70.0401140135.36e5b063@posting.google.com...
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl )
{
char *Ptr ;
int i ;
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
}
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] ) Apres tu peux appliquer la méthode pour afficher les bits de chaque char
"Frederic Sicot" <frederic.sicot@etienne-lacroix.com> a écrit dans le
message de news:a5961a70.0401140135.36e5b063@posting.google.com...
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl )
{
char *Ptr ;
int i ;
Pour eviter les extensions de signes intempestives
printf("%02X", (unsigned char)(* Ptr) ) ;
}
Ca donne une methode pour convertir un double en tableau de char (
char[sizeof(double)] )
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
}
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] ) Apres tu peux appliquer la méthode pour afficher les bits de chaque char
Raphael TOSTO
"Yves ROMAN" a écrit dans le message de news:
"Frederic Sicot" a écrit dans le message de news:
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
Pour le unsigned char OK, bien que je ne vois pas ce qui me gènerais dans l'extension de signe, les perfs ?. Mais le '%02X' m'échappe quelque peu.
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] )
Et donc suivant ton argument il faut comprendre unsigned char a la place de char ?
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
"Yves ROMAN" <yves.roman@NO.unilog.SPAM.fr> a écrit dans le message de
news:40051D0D.E343D41D@NO.unilog.SPAM.fr...
"Frederic Sicot" <frederic.sicot@etienne-lacroix.com> a écrit dans le
message de news:a5961a70.0401140135.36e5b063@posting.google.com...
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl )
{
char *Ptr ;
int i ;
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
Pour le unsigned char OK, bien que je ne vois pas ce qui me gènerais dans l'extension de signe, les perfs ?. Mais le '%02X' m'échappe quelque peu.
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] )
Et donc suivant ton argument il faut comprendre unsigned char a la place de char ?
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
Yves ROMAN
"Yves ROMAN" a écrit dans le message de news:
"Frederic Sicot" a écrit dans le message de news:
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
Pour le unsigned char OK, bien que je ne vois pas ce qui me gènerais dans l'extension de signe, les perfs ?.
Si Ptr pointe vers un 'signed char' qui a une valeur negativeca produit des problèmes char toto = 70 ; toto *= 2 ; printf("%02X %02X %dn",toto,(unsigned char)toto,toto) ; donne FFFFFF8C 8C -116
Mais le '%02X' m'échappe quelque peu.
%X va afficher de l'hexa. Comme tu affiches 'octet' par 'octet', ce ne fait que 2 chiffres hexa. Pour afficher les 8 bits, il faut faire une boucle avec décalage et masques pour extraire chaque bit un par un et afficher chacun séparément
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] )
Et donc suivant ton argument il faut comprendre unsigned char a la place de char ?
Oui
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
"Yves ROMAN" <yves.roman@NO.unilog.SPAM.fr> a écrit dans le message de
news:40051D0D.E343D41D@NO.unilog.SPAM.fr...
"Frederic Sicot" <frederic.sicot@etienne-lacroix.com> a écrit dans le
message de news:a5961a70.0401140135.36e5b063@posting.google.com...
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl )
{
char *Ptr ;
int i ;
Pour eviter les extensions de signes intempestives
printf("%02X", (unsigned char)(* Ptr) ) ;
Pour le unsigned char OK, bien que je ne vois pas ce qui me gènerais dans
l'extension de signe, les perfs ?.
Si Ptr pointe vers un 'signed char' qui a une valeur negativeca produit des
problèmes
char toto = 70 ;
toto *= 2 ;
printf("%02X %02X %dn",toto,(unsigned char)toto,toto) ;
donne
FFFFFF8C 8C -116
Mais le '%02X' m'échappe quelque peu.
%X va afficher de l'hexa. Comme tu affiches 'octet' par 'octet', ce ne fait que
2 chiffres hexa.
Pour afficher les 8 bits, il faut faire une boucle avec décalage et masques pour
extraire chaque bit un par un et afficher chacun séparément
Ca donne une methode pour convertir un double en tableau de char (
char[sizeof(double)] )
Et donc suivant ton argument il faut comprendre unsigned char a la place de
char ?
Oui
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
void AfficherBit ( double Dbl ) { char *Ptr ; int i ;
Pour eviter les extensions de signes intempestives printf("%02X", (unsigned char)(* Ptr) ) ;
Pour le unsigned char OK, bien que je ne vois pas ce qui me gènerais dans l'extension de signe, les perfs ?.
Si Ptr pointe vers un 'signed char' qui a une valeur negativeca produit des problèmes char toto = 70 ; toto *= 2 ; printf("%02X %02X %dn",toto,(unsigned char)toto,toto) ; donne FFFFFF8C 8C -116
Mais le '%02X' m'échappe quelque peu.
%X va afficher de l'hexa. Comme tu affiches 'octet' par 'octet', ce ne fait que 2 chiffres hexa. Pour afficher les 8 bits, il faut faire une boucle avec décalage et masques pour extraire chaque bit un par un et afficher chacun séparément
Ca donne une methode pour convertir un double en tableau de char ( char[sizeof(double)] )
Et donc suivant ton argument il faut comprendre unsigned char a la place de char ?
Oui
Apres tu peux appliquer la méthode pour afficher les bits de chaque char
je souhaiterai afficher les bits d'une varaible de type double.
Pour quoi faire? Je pose la question, car il y a divers problèmes qu'il faut peut-être prendre en compte. Par exemple, la représentation d'un double en mémoire, même au format IEEE754, dépend de l'implémentation; et avec gcc (à moins d'utiliser -ffloat-store), une variable peut contenir une valeur en précision étendue, ce qui est un bug.
-- Vincent Lefèvre - Web: <http://www.vinc17.org/> - 100% validated (X)HTML - Acorn Risc PC, Yellow Pig 17, Championnat International des Jeux Mathématiques et Logiques, TETRHEX, etc. Work: CR INRIA - computer arithmetic / SPACES project at LORIA
Dans l'article <a5961a70.0401140135.36e5b063@posting.google.com>,
Frederic Sicot <frederic.sicot@etienne-lacroix.com> écrit:
je souhaiterai afficher les bits d'une varaible de type double.
Pour quoi faire? Je pose la question, car il y a divers problèmes qu'il
faut peut-être prendre en compte. Par exemple, la représentation d'un
double en mémoire, même au format IEEE754, dépend de l'implémentation;
et avec gcc (à moins d'utiliser -ffloat-store), une variable peut
contenir une valeur en précision étendue, ce qui est un bug.
--
Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> - 100%
validated (X)HTML - Acorn Risc PC, Yellow Pig 17, Championnat International
des Jeux Mathématiques et Logiques, TETRHEX, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA
je souhaiterai afficher les bits d'une varaible de type double.
Pour quoi faire? Je pose la question, car il y a divers problèmes qu'il faut peut-être prendre en compte. Par exemple, la représentation d'un double en mémoire, même au format IEEE754, dépend de l'implémentation; et avec gcc (à moins d'utiliser -ffloat-store), une variable peut contenir une valeur en précision étendue, ce qui est un bug.
-- Vincent Lefèvre - Web: <http://www.vinc17.org/> - 100% validated (X)HTML - Acorn Risc PC, Yellow Pig 17, Championnat International des Jeux Mathématiques et Logiques, TETRHEX, etc. Work: CR INRIA - computer arithmetic / SPACES project at LORIA
Pierre Maurette
"Frederic Sicot" a écrit dans le message de news:
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
Donc je ne sais pas comment faire, si quelqu'un a une solution, je suis preneur.
Une horreur de 1996 ( à refaire, mais ça fonctionne sous Microsoft, Borland et le Genou): Pour appeler :
Sinon, j'ai la version C++ (pas mieux) qui permet de paramétrer les séparateurs et possède des valeurs par défaut. Le reste est en Delphi.
Pas de SAV ;-)
Pierre (honteux)
"Frederic Sicot" <frederic.sicot@etienne-lacroix.com> a écrit dans le
message de news: a5961a70.0401140135.36e5b063@posting.google.com...
Bonjour,
je souhaiterai afficher les bits d'une varaible de type double. j'ai
regardé ce forum et vu les exemples traitant les variables entières
avec des opérateurs de décalage et de masquage. J'ai essayé de
reproduire ce type de fonctions car après tout, il suffit juste de
connaître le nombre de bits qui composent ma variable. Mais d'après le
Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas
être employés avec des double (cf. $ 2.9).
Donc je ne sais pas comment faire, si quelqu'un a une solution, je
suis preneur.
Une horreur de 1996 ( à refaire, mais ça fonctionne sous Microsoft, Borland
et le Genou):
Pour appeler :
je souhaiterai afficher les bits d'une varaible de type double. j'ai regardé ce forum et vu les exemples traitant les variables entières avec des opérateurs de décalage et de masquage. J'ai essayé de reproduire ce type de fonctions car après tout, il suffit juste de connaître le nombre de bits qui composent ma variable. Mais d'après le Kernighan & Ritchie, les opérateur logiques de bits ne peuvent pas être employés avec des double (cf. $ 2.9).
Donc je ne sais pas comment faire, si quelqu'un a une solution, je suis preneur.
Une horreur de 1996 ( à refaire, mais ça fonctionne sous Microsoft, Borland et le Genou): Pour appeler :