begin process at 2012 05 28 12:38:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Algorithme

 > 

Compression, Split & Cryptage

 > 

Algo de calcul d'un CRC16


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Algo de calcul d'un CRC16

jeudi 1 février 2007 à 18:27:39 | Algo de calcul d'un CRC16

cestmat

Bonjour,

Je dois calculer un CRC avec le polynome utilisé dans HDLC (X^16 + X^12 + X^5 + 1).

J'ai à peu prés compris le principe des CRC mais à chaque fois que je tombe sur un algo, j'ai un peu de mal à le comprendre ...

J'ai trouvé ça comme algo :

unsigned short CalcCRC( unsigned char * message, int l )
{
    unsigned short crc = 0xFFFF;

    for ( ; l--; )
    {
        crc ^= * ( message++ );
        for ( SHORT j = 8; j--; )
        {
            if ( crc & 1 )
            crc = ( crc >> 1 ) ^ 0xA001;
            else
            crc >>= 1;
        }
    }
    return( crc );
}

Bon, le polynome utilisé n'est pas le même mais bon.
Y quelqu'un qui peut m'expliquer un peu ça ?


dimanche 11 février 2007 à 11:17:37 | Re : Algo de calcul d'un CRC16

ShareVB

salut,

si ca peut t'aider à comprendre :
http://dvsoft.developpez.com/Articles/CRC/
http://www.abcelectronique.com/forum/showthread.php?t=7301

ShareVB


Cette discussion est classée dans : algo, calcul, crc, short, unsigned


Répondre à ce message

Sujets en rapport avec ce message

pb avec conio je cher cherche l'erreur( j'ai merde sur le mess precedent) [ par kin ] portpia.cpp#include"PortPiaPc.h"void main(){ PortPiaPc inst; inst(0x320,0x0f);}PortPiaPc.cpp#include "PortPiaPc.h"#include "conio.h"PortPiaPc::PortPia DLL sous C++ builder 6 [ par ivdz ] Bonjour,Voici une partie du .h de mon exécutable que je dois transformer en DLL (sous C++ builder 6) :#ifndef MODBUSTCPIP_H#define MODBUSTCPIP_Hclass pragma pack(push,2) [ par gagah1 ] salut à tous!Quelqu'un pourrait m'expliquer ça sert à quoi le macro:#pragma pack(push,2) et #pragma pack(pop) parceque quand je déclare une structure Explication Code C -> Vb [ par akuvido ] Bonjour,Je dois pour une communication entre PC et automate analysé un protocole.En l'analysant je me suis rendu compte que il y avais des CRC's ( ver control de ma camera [ par brico07 ] bonjour,je suis débutante, et j'aimerais controller ma camera  (MTV 54g10), mais je suis coincé À tout les bouts.le sequence de communication est:cont Conversion unsigned short ---> char * [ par nemmezis ] Salut tout le monde,Ben tout est dit dans le titre; j'ai en fait besoin de convertir un unsigned short en char* afin de pouvoir le concaténer dans un opération sur des types et appel de fonction [ par KurpeusLondon ] Bonsoir, Je suis en train d'écrire un programme qui génére une trame sur le model MODBUS/JBUS. J'ai une fonction écrite par le groupe de travail qui c Concaténation des chaines de caractères non signés en C++ [ par sloumanaw ] Bonjour, Je cherche un petit programme en C++ qui envoi et reçoit des trames à partir d'une interface Ethernet (soit à l'aide de winpcap ou autre). S verif CRC16 [ par sena ] Bonjour,voila j'ai un pti prog pour calculer le CRC16.Je voudrai savoir si kelkun pouvait me dire si ce code fonctionne merci. Car je n'ai qu'un seul Sniffing - raw socket [ par krum ] J'ai essayé de coder un programme capable de me donner la description de l'en tete IP et TCP des packets que je reçois d'une certaine IP,mais lorsque


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,572 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales