Hints for writing bit-twiddling code in Python

Serhiy Storchaka storchaka at gmail.com
Wed Dec 7 04:33:50 EST 2011


07.12.11 06:03, Steven D'Aprano написав(ла):
> long newSeed = (seed&  0xFFFFFFFFL) * 0x41A7L;
> while (newSeed>= 0x80000000L) {
>      newSeed = (newSeed&  0x7FFFFFFFL) + (newSeed>>>  31L);
>      }
> seed = (newSeed == 0x7FFFFFFFL) ? 0 : (int)newSeed;

seed = (seed & 0xFFFFFFFF) * 0x41A7 % 0x7FFFFFFF




More information about the Python-list mailing list