Ecriture hexadécimale d'un nombre - Java - Programmation
Marsh Posté le 12-12-2002 à 10:45:10
Je sais bien que pourrais convertir mes masques en décimale, mais c'est qd même carrrément moins joliet moins compréhensible !
Marsh Posté le 12-12-2002 à 11:04:09
ça doit bien exister aussi cette possibilité de notation en Java, non ?
Marsh Posté le 12-12-2002 à 11:06:34
Integer.toHexaString()?
Marsh Posté le 12-12-2002 à 11:09:01
El_Gringo a écrit : ça doit bien exister aussi cette possibilité de notation en Java, non ? |
Bin ouais, c'est la même
Marsh Posté le 12-12-2002 à 11:18:13
DarkLord a écrit : Integer.toHexaString()? |
...Allons Dark, j'vais pas appliquer un masque binaire sur un String
Marsh Posté le 12-12-2002 à 11:18:53
ReplyMarsh Posté le 12-12-2002 à 11:21:57
El_Gringo a écrit : |
bin désolé hein. Ta question est pas claire du tout donc j'essaie de comprendre ce que tu veux dire ...
Marsh Posté le 12-12-2002 à 11:22:14
El_Gringo a écrit : |
Marsh Posté le 12-12-2002 à 11:22:17
El_Gringo a écrit : Ha ouais... c'est con, j'avais mis un O à la place d'un 0 |
Là je me permet d'intervenir :
Marsh Posté le 12-12-2002 à 11:24:21
DarkLord a écrit : |
Ben avec la ligne de code que j'ai mis, ça apparaissait qd même clairement.
Mais merci qd même hein
Marsh Posté le 12-12-2002 à 11:25:04
ReplyMarsh Posté le 12-12-2002 à 11:26:47
El_Gringo a écrit : Oui, frappe moi, je le mérite ! |
pour ta peine
Marsh Posté le 12-12-2002 à 11:42:50
Raaah, mais en fait j'arrive pas à faire ce que je veux faire.
C'est en C, mais bon, c exactement la même chose qu'en Java :
inverser la partie haute et la partie passe d'un int.
Donc : passer les 4 premier octets en dernier et les 4 derniers en 1er. De sorte que 0xAB802453 devienne 0x2453AB80 (c pour un codage).
J'extrait la partie haute et la partie basse comme dans mon 1er post, mais, et après ?
Marsh Posté le 12-12-2002 à 11:44:49
El_Gringo a écrit : Raaah, mais en fait j'arrive pas à faire ce que je veux faire. |
Ba euh... ajoute-les ?
Marsh Posté le 12-12-2002 à 11:47:41
Taiche a écrit : |
Ben, non. Dans ce cas, les ajouter, ça va faire le même chose qu'un OU binaire : ça va reconstituer mon chiffre d'origine sans inverser quoi que ce soit !
Marsh Posté le 12-12-2002 à 11:49:52
Ah oké, d'accord. Bin fais un décalage de bits, alors, via les opérateurs >> et <<
Marsh Posté le 12-12-2002 à 11:55:41
Taiche a écrit : Ah oké, d'accord. Bin fais un décalage de bits, alors, via les opérateurs >> et << |
Ouais, c'est surement ça, mais j'arrive pas à voir le truc.
Là j'ai fais ça :
Code :
|
ms je sais que c une connerie...
Marsh Posté le 12-12-2002 à 11:58:37
El_Gringo a écrit :
|
Pourquoi tu décales de 16 ? Décale de 8, ça suffit, nan ?
EDIT : ah nan, j'ai menti Bin en tout cas, t'oublies un morceau :
long lToReturn = (lHighPart << 16) + (lLowPart >> 16);
Marsh Posté le 12-12-2002 à 12:08:09
Taiche a écrit : |
C'est sur 32 bits un int...
Mais j'ai la solution :
http://forum.hardware.fr/forum2.ph [...] ubcat=#bas
C'est pas si loin de mon truc...
Marsh Posté le 12-12-2002 à 12:10:56
Bon, j'viens d'faire un prog rapide pour tester. Alors le code que j'ai fait et qui marche pas mal c'est :
Code :
|
Marsh Posté le 12-12-2002 à 12:24:26
El_Gringo a écrit : c'était déja bon sur le topic parallèle. |
Nan, c'était bon après ; j'ai posté à 12h10 et l'autre à 12h17
/me pawa
Marsh Posté le 12-12-2002 à 10:44:17
Le truc, c'est que je fais un masque binaire pour récupérer la partie haute et la partie basse d'un int.
du coup je vais faire un masque binaire
je voudrais faire ça (la syntaxe, justement, est incorrecte !):