c - Two strange numbers in moosefs function strerr init -


i start reading source code of moosefs, @ beginning of main function (mfscommon/main.c), calls strerr_init, in there's segment contains 2 big numbers, , can't understande for. here part of code:

for (n=0 ; errtab[n].str ; n++) {     hash = errtab[n].num;     disp = ((hash * 760092119) & (errhsize-1)) | 1; // number 1     hash = ((hash * 1905886897) & (errhsize-1));    // number 2     while (errhash[hash].str!=null && errhash[hash].num != errtab[n].num) {         hash+=disp;         hash&=(errhsize-1);     }     if (errhash[hash].str==null) {         errhash[hash] = errtab[n];     } } 

the numbers bother me 760092119 , 1905886897. there bitwise opration involved, i've changed them binary format understand, still can't see through.

760 092 119     = 0b0101101010011100001010111010111 1 905 886 897   = 0b1110001100110011000011010110001 


Comments