Исправлен Quick Look для файлов TypeScript

Алгоритм подсчета бит, взятый из: http://www.necessaryandsufficient.net/2009/04/optimising-bit-counting-using-iterative-data-driven-development/

string mask = "255.255.128.0";
int totalBits = 0;
foreach (string octet in mask.Split('.'))
{
    byte octetByte = byte.Parse(octet);
    while (octetByte != 0)
    {
        totalBits += octetByte & 1;     // logical AND on the LSB
        octetByte >>= 1;            // do a bitwise shift to the right to create a new LSB
    }                
}
Console.WriteLine(totalBits);

Был использован самый простой алгоритм из статьи. Если производительность критическая, вы можете прочитать статью и использовать более оптимизированное решение.

11
задан Josh Caswell 11 November 2017 в 17:14
поделиться