CRC kode in C

Tags:    c++ visual-basic

Hej igen

Så er den glad igen..
Jeg skal lave en CRC Checksum på 16 bit data...
Jeg ved godt hvordan CRC kode virker...
men har alligevel problemer med at få implementeret i C

HÅber at der er nogle som kan hjælpe


MVH
Steen



4 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Kender godt problemmet !
For nemhedens skyld (og andre på stedet beskrives forløbet kort):
1. Tallet der skal beregnes CRC, skal ses som et binær tal. (f.eks. 101001)
2. Alle 1 lægges sammen (1+1 =0 "binær CRC" hvilket vilk sige 1+1+1 =1)
3. Alt efter om CRC er lige eller ulige skal det er kommer udaf CRC give 1 (Ulige) eller 0 (lige)

(Håber vi taler om det samme. Der findes mange slags CRC - chek og det her er vist den mest almindelige)

#include<math.h>
#include<stdio.h>
#include<conio.h>
#include<iostream.h>

//Input : tal der skal regnes CRC på
char CRC(int Input)
{
char test=0; //Tal værdi
for(int i=0;i<8;i++)
{
cout<<((Input&(char)pow(2,i))>>(i));
//Her indsættes test om der kommer 1 eller nul ud

}
return 0; //Rettes til at være resultat
}

void main()
{
CRC(129);
}

Jeg har likke lige tid til at skrive resten men her er starten....
Skrive hvis du ikke får løst problemmet via dette. Så kan det være jeg skriver resten af koden en anden dag.


Hygge og god weekend
Janus





Hej ....

Her er koden

#include<math.h>
#include<stdio.h>
#include<conio.h>
#include<iostream.h>

int CRC(int Input)
{
char test=0; //Tal værdi
for(int i=0;i<8;i++)
{
test=((Input&(char)pow(2,i))>>(i))+test; //And (&) og shift (>>;)
// cout<<((Input&(char)pow(2,i))>>(i));
if(test==2)
test=0;
}
return test;
}

void main()
{
cout<<CRC(3);
}
//Jeg skulle lige have lidt morgenmad[Redigeret d. 22/11-02 10:19:24 af Janus S. Andersen]



Hej igen

Så er den glad igen..
Jeg skal lave en CRC Checksum på 16 bit data...
Jeg ved godt hvordan CRC kode virker...
men har alligevel problemer med at få implementeret i C

HÅber at der er nogle som kan hjælpe


MVH
Steen



Det må du undskylde jeg havde vidst ikke gjort det klart nok hvad jeg ville...
Den type crc jeg memte var crc division..




Hej igen

Så er den glad igen..
Jeg skal lave en CRC Checksum på 16 bit data...
Jeg ved godt hvordan CRC kode virker...
men har alligevel problemer med at få implementeret i C

HÅber at der er nogle som kan hjælpe


MVH
Steen


Det må du undskylde jeg havde vidst ikke gjort det klart nok hvad jeg ville...
Den type crc jeg memte var crc division..





t