public static BitArray ShLo(BitArray B)
{
return new BitArray(System.BitConverter.GetBytes(Math.Floor((GetIntFromBitArray(B)/2) % (Math.Pow(2, 64)))));
}
private static ulong GetIntFromBitArray(BitArray bitArray)
{
var array = new int[2];
bitArray.CopyTo(array, 0);
return (uint)array[0] + ((ulong)(uint)array[1] << 32);
}
Diese Methode dauert sehr lange. Kann ich es optimieren?Wie kann ich mathematische Operationen in dieser Methode optimieren?
Teilen Sie es in separate Anweisungen und erhalten Sie einen anständigen Profiler zu sehen _which_ Teil dauert "eine lange Zeit". Bis du das tust, rätselst du nur. –
Was versucht Ihre Methode eigentlich zu erreichen? Es hilft nicht, dass wir nicht wissen, was 'GetIntFromBitArray' tut ... –
@JonSkeet Update-Code. Jetzt GetIntFromBitArray-Methode hier. –