Ĺadny brzuch
Piszę program do obliczania CRC-16. Nie mam problemu z zaprogramowaniem tego, więc pytanie nie jest do jakiegoś szczególnego języka programowania. Piszę według algorytmu przesuwania i xorowania. Mam takie pytania:
algorytm CRC, które chcę policzyć to: x16 + x12 + x5 + 1 (oczywiście to po x to potęgi)
1) wiem, że mam xorować wtedy, kiedy ostatni bit=1 Jednak mam xorować gdy 1 jest na najstarszym bicie rejestru xora, czy też kiedy ta 1 już wyjdzie z rejestru?
2) co z czym xorować i gdzie trafia wynik xorowania? czy np. wykonuję xorowanie bitu wejściowego z z wyjściowym i wynik trafia na wejście, czy do pierwszego rejestru. Jak to wygląda?
3) najpierw przesuwam, potem xoruje, czy na odwrót?
4) Czy najpierw wartości rejestru wypełniam 0 czy 1?
Szukałem godzinami przez google tego algorytmu, ale problem w tym, że generalnie algorytm znam, tylko mam problem ze szczegółami. A nigdzie nie znalazłem dokładnego, prostego do zrozumienia przykładu prezenstacji algorytmu. Pisałem jużÂ wiele programów do tego, ale kiedy porównuje z kalkulatorami CRC on-line, to mam zupełnie inne wyniki.
Z góry dziękuję za pomoc.
na 4programmers jest to opisane, poszukaj
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
algorytm CRC, które chcę policzyć to: x16 + x12 + x5 + 1 (oczywiście to po x to potęgi)
1) wiem, że mam xorować wtedy, kiedy ostatni bit=1 Jednak mam xorować gdy 1 jest na najstarszym bicie rejestru xora, czy też kiedy ta 1 już wyjdzie z rejestru?
2) co z czym xorować i gdzie trafia wynik xorowania? czy np. wykonuję xorowanie bitu wejściowego z z wyjściowym i wynik trafia na wejście, czy do pierwszego rejestru. Jak to wygląda?
3) najpierw przesuwam, potem xoruje, czy na odwrót?
4) Czy najpierw wartości rejestru wypełniam 0 czy 1?
Szukałem godzinami przez google tego algorytmu, ale problem w tym, że generalnie algorytm znam, tylko mam problem ze szczegółami. A nigdzie nie znalazłem dokładnego, prostego do zrozumienia przykładu prezenstacji algorytmu. Pisałem jużÂ wiele programów do tego, ale kiedy porównuje z kalkulatorami CRC on-line, to mam zupełnie inne wyniki.
Z góry dziękuję za pomoc.
na 4programmers jest to opisane, poszukaj