Calcul de CRC

Bonjour,

J'ai un petit soucis dans mon calcul de CRC-32
Pour coder un message avec l'algorithme du CRC, il faut au départ un message codé en binaire type : "10010010100010000"
Cependant, je ne sais pas comment on obtient ce type de message à partir d'une chaine de caractère type : " e" ou "abc"
Si quelqu'un peut m'aider!
Merci
Julien Mellano.

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. C'est ce que j'ai fait, mais ca ne marche pas!
    par exemple pour "e" le code ASCII est 101
    je multiplie ce nombre par 2^32 pour fair le décalage et ensuite je prend le reste de la division de ce nombre par mon polynome generateur.
    J'obtiens pas du tout le bon nombre!!
    1. pour faire passer ton entier X en binaire tu peux faire:
      X diviser par 2, le reste de la division est le dernier bit, et tu recommence avec le resultat de la division :
      10/2
      il reste0
      le resultat: 5
      5/2
      il reste 1
      le resultat : 2
      2/2
      il reste 0
      resultat 1
      1/2
      il rest 1
      resultat 0
      donc 10 correspond a 1010

      La vie est belle et c'est tant mieux
      1. Salut,
        j'ai codé ceci il y a quelque temps en Delphi (langage Pascal)
        Tu devrais pouvoir aisément l'adapter à un autre langage

        function DecBin(Valeur : int64):String;
        var
        	i: byte;
        begin
        	Result:='';
        	for i:=31 downto 0 do
        		Result:=Result+IntToStr(Ord(Valeur and(1 shl i)=1 shl i));
        end;
        


        A++

        La pensée ne commence qu'avec le doute.
        ROGER MARTIN DU GARD