#include <struct.h>
Veřejné metody | |
int | length () |
void | clear () |
cLgNr_le () | |
cLgNr_le (cLgNr_le< LENGTH > &a) | |
cLgNr_le (unsigned int buf[LENGTH/UINT_LENGTH]) | |
cLgNr_le (uint_32 a) | |
int | first_set () |
void | set (int i) |
unsigned int & | operator[] (int i) |
bool | operator() (int i) |
void | operator= (cLgNr_le< LENGTH/2 > &a) |
void | operator<<= (int i) |
void | operator>>= (int i) |
void | shr () |
void | operator+= (cLgNr_le< LENGTH > &b) |
void | operator-= (cLgNr_le< LENGTH > &b) |
void | minus_one () |
cLgNr_le< 2 *LENGTH > | operator * (cLgNr_le< LENGTH > &b) |
bool | operator> (cLgNr_le< LENGTH > &b) |
bool | operator>= (cLgNr_le< LENGTH > &b) |
cLgNr_le< LENGTH > | operator/ (cLgNr_le< LENGTH > &b) |
cLgNr_le< LENGTH/2 > | operator% (cLgNr_le< LENGTH/2 > &b_) |
cLgNr_le< LENGTH > | operator% (cLgNr_le< LENGTH > b) |
void | sqrmod (cLgNr_le &moduler) |
cLgNr_le< LENGTH/2 > | operator% (int b_) |
void | random (int poz) |
bool | is_nul () |
bool | is_one () |
|
|
|
copy konstruktor |
|
konstruktor z bufferu je vhodný, pokud bzchom chtěli kódovat opakovaně větší bloky dat, třeba kódovat celý soubor asymetricky |
|
konstruktor z uint_32 |
|
nastaví všehny bity čísla na nulu |
|
vraci pozici prvniho bitu s hodnotou 1 (nahozen) |
|
vrací true, pokud je číslo nulové, jinak false |
|
|
|
vrací délku čísla |
|
pro urceni prvociselnosti je treba pocitat z cisla generovaneho tak, aby melo posledni bit nahozeny cislo o jednu mensi ma tedy rozdílný pouze poslední bit, to je blbost delat odcitanim. pokud z nějakého důvodu není posleední bit nahozen volá operátor -=() |
|
|
|
pozor, vraci čílo poloviční délky!!! |
|
vrací číslo stejné délky |
|
pozor, vraci cislo polovicnidelky!!! |
|
pro cteni hodnoty i-teho bitu |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
vraci referenci na i-ty uint_32 ( ne bit!!) |
|
do čísla nahrne pseudonahodne hodnoty. první nahozený bit bude na pozici poz predchazejci bity budou nulové. poslední bit bude nahozen, aby číslo nebylo dělitelné dvěma |
|
nahodi i-ty bit cLgNr_le |
|
specielni pripad bitoveho posunu o jednu pozici. je častý, proto samostana funkce, která jde implementovat efektivněji; |
|
s číslem provede operaci umocnění nadruhou a modulo moduler |