Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > > Hallo, > > ich muss eine Longinteger Checksumme für ein 8KByte Array berechnen. > > Leider dauert dies ca. 4s. Kann man dies beschleunigen? > > > > <code> > > byte EEDataWrite[0x2000]; // Solldaten für das Eeprom > > long CFG_checksum; // Checksumme EEDaten > > int k; > > > > for k = 0 ... 0x1FFF > > { > > CFG_checksum = CFG_checksum + EEDataWrite[k]; > > } > > </code> > > > > Gruß Detlef > > > > Hallo Detlef, > > versuche doch einmal, die Schleifenläufe als solche zu reduzieren. Evtl. spart das etwas Zeit > ein. Hier mal mein Gedanke: > > <code> > byte EEDataWrite[0x2000]; // Solldaten für das Eeprom > long CFG_checksum; // Checksumme EEDaten > int k; > > for k = 0 ... 0x1FFF step 4 > { > CFG_checksum=CFG_checksum+EEDataWrite[k]+EEDataWrite[k+1]+EEDataWrite[k+2]+ > EEDataWrite[k+3]; > } > </code> > > Teste es mal aus und gib mir kurz Bescheid. Ansonsten wirst Du effektiv nur in Assembler > schneller werden. > Gruß, > wema