Ho bisogno di un bit counter utility in C++ che sia in grado di contare il numero del bit più significativo in un valore numerico costante e di presentare questo numero come costante in fase di compilazione.Metaprogram per il conteggio dei bit
Proprio per rendere tutto chiaro - numero di bit più significativo per un insieme di valori numerici:
255 => 8 (11111111b)
7 => 3 (111b)
1024 => 11 (10000000000b)
26 => 5 (11010b)
io sono nuovo alla programmazione modello, ma penso che sia il modo.
Si prega di fornire alcuni esempi di codice, ogni aiuto sarebbe apprezzato.
In altre parole, è necessario 'piano (lg (n)) + 1', dove' lg' è il logaritmo in base 2. – outis
Quale sarebbe il valore corretto per 0? –
Sì, ho bisogno esattamente di 'floor (lg (n)) + 1'. '0' significa che non sono necessari bit per memorizzare questo numero, pertanto anche il risultato è 0. – Keynslug