À partir des documents Oracle.Solution standard pour décoder les numéros d'additif
Un nombre représentant une ou plusieurs classes de statistiques. Les numéros de classe suivants sont additifs:
1 - User
2 - Redo
4 - Enqueue
8 - Cache
16 - OS
32 - Real Application Clusters
64 - SQL
128 - Debug
Il y une solution standard pour la prise dire 22 et décodage en 16, 4 et 2? Ma première supposition serait de créer un objet qui détient toutes les combinaisons possibles et l'utiliser comme une recherche? Y at-il une meilleure solution en utilisant binaire ou quelque chose? La solution préférée serait en Python. (avertissement: Ce n'est pas un devoir.)
def getFlags (value): return [drapeau pour i, drapeau dans enumerate (FLAGS) if value & (1 << i)] – hughdbrown