Convertion binaire negatif en decimal
netfire
-
Heliotte Messages postés 1491 Date d'inscription Statut Membre Dernière intervention -
Heliotte Messages postés 1491 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Sous debian en C je voudrais convertir un nombre binaire en decimal, mais le nombre binaire à traiter peut-être positif comme négatif, il faudrait donc un système de détection de bit signé ou non signé non ? comment faire ? (je suis débutant en C)
merci d'avance
Sous debian en C je voudrais convertir un nombre binaire en decimal, mais le nombre binaire à traiter peut-être positif comme négatif, il faudrait donc un système de détection de bit signé ou non signé non ? comment faire ? (je suis débutant en C)
merci d'avance
A voir également:
- Decimal negatif en binaire
- Binaire - Guide
- Negatif telephonique - Guide
- Fil noir et blanc positif ou négatif ✓ - Forum Enceintes / HiFi
- Alphabet binaire ✓ - Forum Programmation
- Retrait négatif word - Guide
7 réponses
En C si tu déclare un 'char', c'est un octet considéré comme signé :
0x00 -0x7F = positif (0 à 127), 0xFF-0x80 = négatif (-1 à -128)
Donc pour :
char toto= 0xFF;
printf( "%d", toto ); donnera "-1".
C'est pareil pour 'short' (2 octets:), 'long' (4 octets)...
unsigned char, lui est considéré comme non signé (0x00-0xFF) : 0 à 255
0x00 -0x7F = positif (0 à 127), 0xFF-0x80 = négatif (-1 à -128)
Donc pour :
char toto= 0xFF;
printf( "%d", toto ); donnera "-1".
C'est pareil pour 'short' (2 octets:), 'long' (4 octets)...
unsigned char, lui est considéré comme non signé (0x00-0xFF) : 0 à 255
esse-que le script va détecter seul si le bit est signé ou non signé ? (c'est pour convertir le binaire en décimal d'un capteur qui peut envoyer du négatif comme du positif)
Bonjour netfire,
lien vers une source : https://fr.wikipedia.org/wiki/Syst%C3%A8me_binaire#Repr.C3.A9sentation_des_entiers_n.C3.A9gatifs
Cet article reprends le nombres binaires positifs et les nombres binaires négatifs.
Car votre résultat dépend du complément que vous aller utiliser : complément à 1 ou complément à 2.
lien vers une source : https://fr.wikipedia.org/wiki/Syst%C3%A8me_binaire#Repr.C3.A9sentation_des_entiers_n.C3.A9gatifs
Cet article reprends le nombres binaires positifs et les nombres binaires négatifs.
Car votre résultat dépend du complément que vous aller utiliser : complément à 1 ou complément à 2.
donc si on se place sur 8 bits en complément à 2 il faut que le programme détecte un premier bit à 1, à gauche c'est un nombre négatif sinon si c'est un 0 c'est un nombre positif non ? y-a-il une fonction pour ça ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
exact.
Si tu fait lire en décimal par l'ordinateur, il ajoutera un signe "-" (à gauche ou à droite) de ce nombre.
Pour le détecter en binaire, il faut lire "bit par bit", et le premier 'bit' te donne cette indication.
Si tu fait lire en décimal par l'ordinateur, il ajoutera un signe "-" (à gauche ou à droite) de ce nombre.
Pour le détecter en binaire, il faut lire "bit par bit", et le premier 'bit' te donne cette indication.
Pour cela, je ne peux que te conseiller de te rendre sur ce site : https://fr.wikipedia.org/wiki/Manipulation_de_bit
Cordialement
Cordialement