IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Convertir un byte negatif en int positif


Sujet :

Langage Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 190
    Points : 114
    Points
    114
    Par défaut Convertir un byte negatif en int positif
    Bonjour,

    Comme le titre l'indique, je cherche à convertire un byte négatif en entier positif. En effet, dans mon code, je transforme une suite de bits en entier (positif) et je caste ensuite cet entier en byte afin de le représenter en utilisant moins de place mémoire. Tout fonctionne sauf au moment ou je recupere mon byte (negatif parfois). Lorsque je le redecompose en binaire, j'obtient un nombre négatif et donc un int negatif lorsque l'entier de départ est supérieur à 128.

    Comment faire pour recuperer un entier positif supérieur à 128 au moment de la retraduction du byte negatif ?

    Merci !

  2. #2
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 778
    Points
    5 778
    Par défaut
    En appliquant le masque 0xFF sur le byte, tu récupères sa valeur sans tenir compte du signe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int i1 = 192;
    byte b = (byte) i1;
     
    int i2 = b;            // i2 vaut -64
    int i3 = 0xFF & b;     // i3 vaut 192

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 190
    Points : 114
    Points
    114
    Par défaut
    Merci c'est niquel !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/03/2011, 14h15
  2. convertir int negatif en int positif
    Par danou07200 dans le forum C#
    Réponses: 3
    Dernier message: 26/04/2009, 17h37
  3. Convertir des bytes en binaire ...
    Par Battosaiii dans le forum C
    Réponses: 2
    Dernier message: 18/03/2006, 15h47
  4. [C#] convertir un nombre hexa en int
    Par linux dans le forum C#
    Réponses: 5
    Dernier message: 08/12/2005, 16h38
  5. [C#] Convertir des bytes en string
    Par sorcer1 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/02/2005, 15h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo