CRC



  • [

    Muecke schrieb:

    Hat da mal einer nen CRC-Algo. Ich finde keinen unter google.

    ](http://www.google.de/search?hl=de&client=firefox-a&rls=org.mozilla%3Ade-DE%3Aofficial&q=CRC+Algorithm+C%2B%2B&btnG=Suche&meta=)UNd mit welchen Suchwörtern suchst du?

    Ist dir schon aufgefallen, das deine Problembeschreibung mehrere Probleme beinhaltet die nichts mit CRC zu tun haben?

    Halte dich doch bitte in Zukunft an die kleine Merkergel "Pro Frage 1 Thread, pro Thread 1 Frage". Danke.

    Tip: Wenn du dein problem in deine Teilprobleme Zerlegst, findest du bestimmt die unterschiedlichen Lösungen zu den Problemen die du dann nur noch passend zu verbinden brauchst.

    -junix



  • OK.
    Ich suche bei google mit den Stichwörtern:
    CRC Algorithmus C++

    Sorry das meine Fragestellung ein bissl komisch war, aber mit CRC habe ich sonst noch nie beschäftigt und habe auch kein Plan was das kann und wie das genau funktioniert.

    MfG
    Muecke



  • Ersetze Algorithmus durch Algorithm und lies mal den verlinkten Wikipedia-Eintrag.

    -junix



  • /* CRC16 implementation acording to CCITT standards */
    
    static const unsigned int crc_tab[16] = 
    { 
      0x0000, 0x1081, 0x2102, 0x3183, 
      0x4204, 0x5285, 0x6306, 0x7387, 
      0x8408, 0x9489, 0xA50A, 0xB58B, 
      0xC60C, 0xD68D, 0xE70E, 0xF78F
    };  
    
    unsigned short crc_update (unsigned short crc, unsigned char c)
    {
        crc = (((crc >> 4) & 0x0FFF) ^ crc_tab[((crc ^ c) & 0x000F)]);
        crc = (((crc >> 4) & 0x0FFF) ^ crc_tab[((crc ^ (c>>4)) & 0x000F)]);
        return crc;
    }
    

    und so ungefähr aufrufen...

    unsigned char daten[...];
    int s;
    unsigned short crc_wert = 0xffff;
    ...
    for (s=0; s<sizeof(daten); s++)
        crc_wert = crc_update (crc_wert, daten[s]);
    


  • Danke für den Tipp,
    aber gibt es da nicht vielleicht auch ein Tutorial in Deutsch? Dann könnte man dass auch richtig nachvollziehen.

    MfG
    Muecke



  • Vielleicht könnt ihr mir auch Schritt für Schritt erklären, wie ich eine Grafikdatei öffne und von dieser Datei den CRC zu bekommen. Das würde mir auch reichen.

    MfG
    Muecke



  • Was hat das Öffnen einer Grafikdatei mit dem Thread Thema "CRC" zu tun?

    Wie man CRC erstellen kann weisst du ja jetzt... Munter ans Werk Mr. Freeman, munter ans Werk... Die richtigen Fragen am falschen Ort können viel Unbehagen bewirken.



  • Ich dachte ich muss die Grafikdatei erst öffnen bevor man die Checksumme bilden kann.
    Wir sagen mal ich habe eine Datei: image1.jpg
    Wie rufe ich jetzt mit oben stehendem Code die Funktion zu CRC generierung mit der Datei image1.jpg auf?

    MfG
    Muecke



  • Auch wenn ihc mich ungern wiederhole:

    junix schrieb:

    Was hat das Öffnen einer Grafikdatei mit dem Thread Thema "CRC" zu tun?

    Mit anderen Worten: Eröffne einen neuen Thread im passenden Forum wo du dich um das Öffnen und Einlesen von Dateien bemühst...

    -junix



  • Anscheinend hat das gar nicht miteinander zu tun. Also haken wir das ab.

    Aber wie generirer ich denn dann die CRC von meiner Grafikdatei? Wie m uss ich dann die obenstehende Funktion aufrufen, dass der mir von meiner Grafikdatei eine CRC.Checksum berechnet?

    MfG
    Muecke


Anmelden zum Antworten