Benötigte Bits Rechner
Gib ein, wie viele verschiedene Werte du darstellen musst, und erhalte die minimale Anzahl an Bits — ⌈log₂N⌉ — samt der Intuition, warum jedes weitere Bit deinen Bereich verdoppelt.
Eine Frage, eine Antwort
Gib die Anzahl verschiedener Werte N ein und der Rechner liefert die kleinste ganze Anzahl an Bits, die jedem Wert ein eindeutiges Binärmuster geben kann.
Anzahl, nicht das Maximum
N ist die Anzahl verschiedener Werte. Für die ganzen Zahlen 0 bis 999 sind das 1000 Werte — nimm 1000, nicht 999.
Wie viele Bits brauchst du?
Die minimale Bittiefe für N Werte
Der Benötigte-Bits-Rechner beantwortet eine Frage, die in der Informatik ständig auftaucht: Wie viele Bits braucht es, um jedem von N verschiedenen Werten ein eigenes eindeutiges Binärmuster zu geben? Weil jedes weitere Bit die Anzahl der verfügbaren Muster verdoppelt, ist die Antwort der Logarithmus von N zur Basis 2, aufgerundet — ⌈log₂N⌉. Diese eine Zahl verrät dir die Breite eines Enums, die Tiefe eines Farbkanals, die Größe eines Array-Index oder wie viele Bits eine Datenbankspalte reservieren muss. Gib die Anzahl der Werte ein, die du beschriften willst, und du erhältst sofort die minimale Bittiefe.
Gib die Anzahl verschiedener Werte N ein, um die minimale Anzahl an Bits — ⌈log₂N⌉ — zu erhalten, die nötig ist, um sie alle darzustellen.
Die Anzahl der Bits ist der Logarithmus von N zur Basis 2, aufgerundet auf das nächste ganze Bit.
Bits = ⌈log₂N⌉Ein n-Bit-Muster kann 2ⁿ verschiedene Werte annehmen, also brauchst du für N verschiedene Werte das kleinste n mit 2ⁿ ≥ N — genau das liefert der Logarithmus mit anschließendem Aufrunden. Ist N eine exakte Zweierpotenz, ist der Logarithmus bereits ganzzahlig; andernfalls rundest du auf, damit kein Wert ohne Muster bleibt.
Angenommen, du musst 1000 verschiedene Werte speichern — etwa die Zahlen 0 bis 999.
Logarithmus zur Basis 2 nehmen
log₂1000 = 9,97 — die gebrochene Anzahl an Bits, die die Werte wirklich brauchen.
Auf ein ganzes Bit aufrunden
⌈9,97⌉ = 10 — Bits gibt es nur in ganzen Einheiten, also runde auf.
Kapazität prüfen
10 Bits decken 2¹⁰ = 1024 Muster ab, bequem mehr als 1000, während 9 Bits nur 512 abdecken würden — zu wenig. Die Antwort ist 10 Bits.
Die Bitzahl ist die Breite des kleinsten Feldes, das jeden deiner Werte aufnehmen kann. Die zentrale Intuition: n Bits decken 2ⁿ Werte ab, sodass eine Verdopplung der Anzahl benötigter Werte genau ein Bit hinzufügt — von 500 auf 1000 Werte gehst du von 9 auf 10 Bits, von 1000 auf 2000 auf 11 Bits. Deshalb wächst die Bitzahl so langsam: Eine 32-Bit-Ganzzahl deckt bereits mehr als vier Milliarden Werte ab, und 64 Bits decken mehr als achtzehn Trillionen ab. Andersherum gelesen verdoppelt jedes Bit, das du dir leisten kannst, deine Kapazität — deshalb genügt es oft, ein Feld um ein einziges Bit zu verbreitern, um eine Grenze zu sprengen. Ist N eine exakte Zweierpotenz, sitzt der Wert genau auf der Grenze: 256 Werte brauchen exakt 8 Bits, doch schon ein Wert mehr (257) treibt dich auf 9, weil du in die nächste Zweierpotenz übergegangen bist.
Die Formel ist exakt, doch achte darauf, ihr die richtige Zahl zu geben.
Verschiedene Werte, nicht die größte Zahl — und es wird aufgerundet
Dieser Rechner zählt die Bits, um N verschiedene Werte zu beschriften, und liefert ⌈log₂N⌉. Wenn du den größten Wert kennst und ab 0 zählst (der Bereich 0 bis N−1), ist die Anzahl verschiedener Werte um eins größer als dieses Maximum — addiere also zuerst eins, bevor du rechnest. Das Ergebnis wird stets auf ein ganzes Bit aufgerundet, weil Bits nicht gebrochen sein können, und ein einzelner Wert (N = 1) braucht 0 Bits, da es nichts gibt, wovon man ihn unterscheiden müsste.