In richtig kurz hätte ich noch einen zu bieten:
b := ((b * $0202020202) and $010884422010) mod 1023;
dürfte aber wegen 64bit und modulo relativ langsam sein.
dann hätte ich noch den:
b := (((b and $aa) shr 1) + ((b and $55) shl 1));
b := (((b and $
cc) shr 2) + ((b and $33) shl 2));
b := ((b shr 4) + (b shl 4));
ser sollte in Summe eigentlich recht schnell sein(natürlich nicht so schnell wie das Look-Up) und sollte auch recht speichersparend sein(okay, ich gebe es ja zu: ist auf nem PC nicht nötig, aber....)