je ne sais pas si je poste dans la bonne catégorie du forum, mais je souhaiterai savoir ce que vous pensez du code suivant et si les personnes qui savent l'expliquer pourraient m'en faire un rapide compte rendu (simple SVP car, meme si je maitrise un peu du VB, pour le reste...)
Salut,
Ce n'est pas du C.
Pour la ligne crc = CRC32().crc32(full) on ne peut pas savoir, on ne sait ni ce que retourne CRC32() ni son attribut crc32()
Pour la ligne code = ((crc ^ 0xaaaa) + 0x14c1) % 100000 c'est un simple calcul de maths :
- on fait un OU exclusif (XOR) entre 'crc' (calculé à la ligne précédente) et AAAA (en héxa)
- on ajoute 14C1 (en héxa) au résultat précédent
- on calcule le modulo par 100000 du résultat précédent
Pour le XOR, quelques exemples :
1 xor 1 = 0
1 xor 0 = 1
donc 1101 xor 1001 = 0100
Pour le modulo, c'est le reste d'une division entière :10 % 3 1, car 10 / 3 3 et reste 114 % 4 2, car 14 / 4 3 et reste 2