Java: Conversion de base 256 à base 2

Résolu
Edwindarklight -  
 Edwindarklight -
Bonjour,
j'ai trouver sur ce site un système pour transformer un fichier de n'importe quel type en un fichier binaire.
j'ai lu qu'il fallait lire byte par byte, et convertir à chaque fois le résultat de la base 256 à la base 2.
Néanmoins, n'étant pas un matheux en herbe, je ne connais pas la formule de conversion des bases, donc si quelqu'un pourrait me l'expliquer.

2 réponses

  1. Edwindarklight
     
    Je relance encore finalement, car je viens de penser qu'il fallait que je fasse aussi l'opération inverse, et si c'était au final assez simple pour l'aller, le retour risque d'être difficile...

    Ça donne quoi donc pour l'inverse?
    0
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      1) Tu prends le premier bit
      2) Tu multiplies par 2
      3) Tu rajoutes le bit suivant
      4) Retour en 2
      0
    2. Edwindarklight
       
      C'est noté, merci beaucoup !
      0
  2. KX Messages postés 19031 Statut Modérateur 3 020
     
    1) Tu regardes si le nombre est pair, dans ce cas le dernier bit est 0, sinon c'est un 1
    2) Tu divises par 2, et tu recommences l'étape 1 jusqu'à atteindre 0.
    3) Si tu as un type byte tu dois avoir 8 bits, si il t'en manque rajoute des 0 devant.
    -1
    1. Edwindarklight
       
      Merci beaucoup, il y a seulement un truc que j'ai du mal...

      Si le nombre est impair, la division par deux donnera un nombre décimal, dans ce cas je continue a diviser en ignorant la virgule?
      0
      1. KX Messages postés 19031 Statut Modérateur 3 020 > Edwindarklight
         
        Si tu divises des entiers tu n'auras pas de valeurs décimales, ça va tronquer le résultat.
        7/2 --> 3
        7%2 --> 1
        0
      2. Edwindarklight > Edwindarklight
         
        Ahhh!
        j'avait oublier que tout les types de variable n'était pas forcément à virgule, merci beaucoup dans ce cas
        :D
        C'est donc résolu, merci encore.
        0