La forma más eficiente de extraer banderas de bits

Tengo estas posibles banderas de bits.

1, 2, 4, 8, 16, 64, 128, 256, 512, 2048, 4096, 16384, 32768, 65536

Entonces cada número es como una declaración de verdadero / falso en el lado del servidor. Entonces, si los primeros 3 elementos, y solo los primeros 3 elementos están marcados como "verdaderos" en el lado del servidor, el servicio web devolverá un 7. O si los 14 elementos anteriores son verdaderos, aún obtendría un solo número del servicio web que es la suma de todos esos números.

¿Cuál es la mejor manera de manejar el número que recibo para averiguar qué elementos están marcados como "verdaderos"?

Respuestas a la pregunta(5)

Su respuesta a la pregunta