Bonjour,
j'ai un petit problème car je désire traiter des nombres non signés sur exactement 32 bits, ou 16 bits, ou... selon la situation. Java ne possédant pas de types unsigned, je suis embêté puisque j'aimerais garder le même range que des unsigned. Donc par exemple, pour un int, je le définis en long pour ne pas être embêté par le bit des signes. Ce qui m'intéresse est d'avoir les bits exactement pareil. Le problème est qu'en faisant un cast, il me transforme en nombre négatif et change la valeur de mes bits.
Exemple :
short a = 0x81; // soit 1000 0001 en binaire
je souhaite récupérer cette même valeur binaire mais dans un byte
byte b = (byte) a; // me donne b = - 1111 1111
j'espère que mes explications ont été claires. Serait il possible de me dire comment je pourrais gérer ce problème de unsigned?
Partager