Narzędzia użytkownika

Narzędzia witryny


crc

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
crc [2009/04/30 00:34]
qboosh
crc [2009/04/30 00:36]
qboosh
Linia 18: Linia 18:
 W Boost:CRC użytkownik może sterować działaniem klas obliczających CRC mając do dyspozycji poniższe parametry: W Boost:CRC użytkownik może sterować działaniem klas obliczających CRC mając do dyspozycji poniższe parametry:
  
- * **''​Truncated polynominal''​** - Skrócony wielomian dzielący. Skrócenie polega na opuszczeniu pierwszego bitu (odpowiadającemu współczynnikowi przed najwyższą potęgą wielomianu),​ ponieważ bit ten zawsze jest równy 1. W innym przypadku byłby to wielomian niższego rzędu niż zakładany.+  ​* **''​Truncated polynominal''​** - Skrócony wielomian dzielący. Skrócenie polega na opuszczeniu pierwszego bitu (odpowiadającemu współczynnikowi przed najwyższą potęgą wielomianu),​ ponieważ bit ten zawsze jest równy 1. W innym przypadku byłby to wielomian niższego rzędu niż zakładany.
  
  * **''​Initial remainder''​** - początkowa wartość reszty z dzielenia - wprowadzona po to by uniknąć "​ślepych punktów",​ czyli sytuacji w których dla pewnych szczególnych wiadomości,​ ich kod CRC będzie zaczynał się od samych zer.  * **''​Initial remainder''​** - początkowa wartość reszty z dzielenia - wprowadzona po to by uniknąć "​ślepych punktów",​ czyli sytuacji w których dla pewnych szczególnych wiadomości,​ ich kod CRC będzie zaczynał się od samych zer.
Linia 33: Linia 33:
 ===== Klasa Podstawowa boost::​crc_basic ===== ===== Klasa Podstawowa boost::​crc_basic =====
  
-Jest to szablon, który jako jedyny parametr przyjmuje Skrócony wielomian dzielący (Truncated polynominal). Kolejne parametry podawane są w konstruktorze. Jest to implementacja nieoptymalna. Kod nadmiarowy jest obliczany bit po bicie. ​Poniżej przykładowa definicja obiektu klasy podstawowej:​+Jest to szablon, który jako jedyny parametr przyjmuje Skrócony wielomian dzielący (Truncated polynominal). Kolejne parametry podawane są w konstruktorze. Jest to implementacja nieoptymalna. Kod nadmiarowy jest obliczany bit po bicie. ​
  
 +Poniżej przykładowa definicja obiektu klasy podstawowej:​
 <code cpp> <code cpp>
 boost::​crc_basic<​8> ​ crc_podstawowa( 0x25, 0x00, 0, false, false ); boost::​crc_basic<​8> ​ crc_podstawowa( 0x25, 0x00, 0, false, false );
Linia 41: Linia 42:
 ===== Klasa Optymalna boost::​crc_optimal ===== ===== Klasa Optymalna boost::​crc_optimal =====
  
-Szablon którego parametrami są wszystkie wymienione powyżej parametry. Jego zaletą jest to, że kod liczony jest jako całość co pozwala na optymalizację obliczeń. Ponadto parametry zazwyczaj są niezmienne więc korzystne jest wprowadzenie ich w czasie kompilacji (w odróżnieniu od klasy Podstawowej). ​Przykładowa definicja:+Szablon którego parametrami są wszystkie wymienione powyżej parametry. Jego zaletą jest to, że kod liczony jest jako całość co pozwala na optymalizację obliczeń. Ponadto parametry zazwyczaj są niezmienne więc korzystne jest wprowadzenie ich w czasie kompilacji (w odróżnieniu od klasy Podstawowej). ​
  
 +Przykładowa definicja:
 <code cpp> <code cpp>
 boost::​crc_optimal<​8,​ 0x25, 0x00, 0, false, false> ​ crc_optymalna;​ boost::​crc_optimal<​8,​ 0x25, 0x00, 0, false, false> ​ crc_optymalna;​
crc.txt · ostatnio zmienione: 2009/04/30 00:47 przez qboosh