Bitlänge einer Ganzzahl berechnen
Dieser Bitlängenrechner ermittelt die kleinste Anzahl binärer Stellen, die zur Darstellung einer nicht negativen Ganzzahl erforderlich ist.
Im Browser ausführen – kostenlos
Geben Sie eine dezimale Ganzzahl ein, um den normalisierten Wert und die exakte Bitlänge zu erhalten. Die Berechnung unterstützt Zahlen weit oberhalb üblicher 32-Bit- oder 64-Bit-Grenzen, da die Eingabe vor der exakten Arithmetik als Text erhalten bleibt. So können Sie Speicherbreiten auswählen, Protokollgrenzen prüfen und Größenannahmen bestätigen, ohne lange Werte von Hand umzuwandeln.
Was die Bitlänge einer Ganzzahl bedeutet
Die Bitlänge einer positiven Ganzzahl entspricht der Position ihres höchsten gesetzten Bits, wenn die Positionen bei eins beginnen. Gleichbedeutend ist sie die Anzahl der Binärstellen ohne führende Nullen. Die Dezimalzahl 13 lautet binär beispielsweise 1101 und hat daher die Bitlänge 4. Alle Werte von 8 bis 15 benötigen 4 Bits; 16 überschreitet eine Zweierpotenzgrenze und benötigt 5. Null ist ein Sonderfall: Sie besitzt kein gesetztes Bit und hat gemäß der üblichen Konvention die Bitlänge 0. Der Rechner wendet diese Konvention direkt an. Das Ergebnis beschreibt ausschließlich den vorzeichenlosen Betrag. Es ergänzt kein Vorzeichenbit, verwendet kein Zweierkomplement, rundet nicht auf Bytegrenzen und fügt keine formatspezifische Auffüllung hinzu. Wenn Sie den Wert speichern oder übertragen möchten, müssen Sie die von Ihrem System verlangten Bits für Ausrichtung, Vorzeichen, Kennzeichnung oder Rahmen anschließend berücksichtigen.
So bleibt die Berechnung exakt
Übermitteln Sie die Ganzzahl als Folge dezimaler Ziffern ohne Kommas, Leerzeichen, Dezimalpunkt, Exponent oder Vorzeichen. Die Texteingabe verhindert einen Genauigkeitsverlust vor der Berechnung. Viele Programmierumgebungen stellen gewöhnliche Zahlen als Gleitkommawerte dar und können oberhalb ihres sicheren Bereichs nicht mehr jede Ganzzahl unterscheiden. Ein auf dem Bildschirm korrekt wirkender Wert kann deshalb bereits gerundet sein, bevor eine Bitoperation ihn verarbeitet. Der Rechner validiert die vollständige Ziffernfolge, entfernt bedeutungslose führende Nullen, wandelt sie in eine exakte Ganzzahl beliebiger Genauigkeit um und verschiebt den Wert nach rechts, bis kein gesetztes Bit übrig ist. Die Anzahl der Verschiebungen ergibt die Bitlänge. Dieses deterministische Verfahren vermeidet logarithmische Rundungsfehler nahe exakter Zweierpotenzen. Die Antwort enthält die normalisierte Dezimalzahl, damit Sie genau prüfen können, welcher Betrag gemessen wurde.
Das Ergebnis in der Technik einsetzen
Besonders aussagekräftig ist die Bitlänge an Kapazitätsgrenzen. Das Ergebnis 8 bedeutet, dass der Betrag in ein vorzeichenloses Byte passt; 9 erfordert bei byteweiser Ausrichtung mindestens zwei Bytes. Ein Ergebnis von 32 passt in ein vorzeichenloses 32-Bit-Feld, 33 dagegen nicht. Nutzen Sie den Rechner zur Prüfung von Datenbankspalten, binären Protokollfeldern, Serialisierung, Kennungsbereichen, Kompressionsmetadaten oder kryptografischen Testvektoren. Vergleichen Sie bit_length mit der tatsächlichen Kapazität des Zielfeldes, statt aus der Anzahl der Dezimalstellen auf die Binärbreite zu schließen. Vorzeichenbehaftete Formate behandeln das oberste Bit nach eigenen Regeln. Für Stapelprüfungen oder Build-Kontrollen können Sie die API aufrufen und die Breite gegen Ihren Grenzwert prüfen; der Grundpreis beträgt $0.002. Ohne Netzwerk, Zufall, Uhr oder veränderlichen Zustand liefert dieselbe gültige Eingabe stets dasselbe Ergebnis.
Anwendungsfälle
Vorzeichenlose Speicherbreite auswählen
Prüfen Sie, ob eine maximale Kennung oder ein Zähler in ein vorzeichenloses Feld mit 8, 16, 32, 64 Bits oder eigener Breite passt.
Protokollgrenzen validieren
Bestätigen Sie, dass sich ein dezimaler Testwert mit der festen Anzahl an Betragsbits eines Binärprotokolls codieren lässt.
Werte beliebiger Genauigkeit untersuchen
Messen Sie Ganzzahlen jenseits des sicheren Gleitkommabereichs, ohne vor der Berechnung niederwertige Ziffern zu verlieren.
Häufige Fragen
Welche Bitlänge hat Null?
Null hat die Bitlänge 0, da sie kein gesetztes Bit enthält. Dies ist die übliche Konvention für Ganzzahl-APIs mit beliebiger Genauigkeit.
Werden führende Nullen mitgezählt?
Nein. Sie verändern den Zahlenwert nicht und werden vor der Berechnung entfernt. Die Antwort gibt den normalisierten Wert zurück.
Kann ich Werte mit mehr als 64 Bits berechnen?
Ja. Senden Sie den Wert als Dezimalzeichenfolge, damit die Berechnung auch weit oberhalb üblicher Maschinenwortgrößen exakt bleibt.
Enthält das Ergebnis ein Vorzeichenbit?
Nein. Es bezeichnet die Mindestbreite des vorzeichenlosen Betrags. Vorzeichen- und Zweierkomplementdarstellungen erfordern formatspezifische Regeln.
Warum sollte die API-Eingabe eine Zeichenfolge sein?
Eine Dezimalzeichenfolge bewahrt jede Ziffer. Ein Zahlenwert kann beim Überschreiten des sicheren Ganzzahlbereichs seiner Umgebung bereits gerundet sein.
Was kostet eine API-Anfrage?
Jede API-Anfrage kostet $0.002. Die Berechnung kann auch kostenlos im Browser laufen, weil sie deterministisch ist und kein Netzwerk benötigt.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/bit-length-integer \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"integer":"18446744073709551615"}'const res = await fetch("https://api.kit.forhosting.com/dev/bit-length-integer", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"integer": "18446744073709551615"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/bit-length-integer",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"integer": "18446744073709551615"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/bit-length-integer", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"integer":"18446744073709551615"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"integer":"18446744073709551615"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/bit-length-integer", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"integer": "18446744073709551615"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.bit_length_integer",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |