Bitbedarf für Werte berechnen – minimale Binärbreite
Dieser Rechner ermittelt die kleinste Binärbreite für eine vorgegebene Anzahl unterschiedlicher Zustände oder alle nicht negativen Ganzzahlen bis zu einem Höchstwert.
Im Browser ausführen – kostenlos
Zweierpotenzen, Grenzwerte und null werden korrekt behandelt. Ausgegeben werden die benötigten Bits und der darstellbare Bereich. Nutzen Sie das Ergebnis für Register, codierte Felder, digitale Schnittstellen und kompakte Zahlenformate.
Wählen Sie die passende Eingabe
Entscheiden Sie zwischen der Anzahl möglicher Zustände und dem höchsten Zahlencode. Verwenden Sie distinct_values für Zustände, Kategorien, Symbole oder Betriebsarten mit eindeutigen Codes. Verwenden Sie max_value, wenn jede Ganzzahl von null bis zur Grenze passen muss. 0 bis 1000 umfasst 1001 Werte. Geben Sie genau ein Feld an. Nur nicht negative sichere Ganzzahlen sind zulässig; so werden Brüche, Rundungen und die Verwechslung von Höchstwert und Anzahl vermieden.
So entsteht die Mindestbreite
Ein Feld mit b Bits bietet 2 hoch b Muster. Gesucht wird das kleinste b mit ausreichender Kapazität; exaktes Verdoppeln vermeidet Logarithmusfehler an Zweierpotenzen. 8 Werte benötigen 3 Bits, 9 Werte benötigen 4 und bieten 16 Muster. Beim Höchstwert zählt null mit: 255 passt in 8 Bits, 256 benötigt 9. Ein einzelner abstrakter Zustand trägt null Informationsbits; die Ganzzahl null erhält konventionell 1 Bit.
Übertragen Sie das Ergebnis
Betrachten Sie bits als mathematisches Minimum und prüfen Sie verfügbare Breiten. Register, Protokolle und Datenbanken bieten oft 8, 16, 32 oder 64 Bits. representable_values und maximum_representable_value zeigen die Reserve. Vorausgesetzt werden vorzeichenlose, lückenlose Codes ab null. Planen Sie Vorzeichen, Sentinelwerte, Parität, Fehlerkorrektur, Ausrichtung und Flags zusätzlich ein. Das Ergebnis ist eine Untergrenze, kein vollständiges Layout. Es arbeitet ohne Netzwerk; API-Aufrufe kosten $0.002.
Anwendungsfälle
Digitalen Wahlschalter dimensionieren
Bestimmen Sie die kleinste Breite für eindeutige Betriebsartcodes.
Sensorbereich prüfen
Bestätigen Sie die Bitzahl von null bis zum dokumentierten Maximum.
Kompakte Kennungen planen
Schätzen Sie die Breite vor der Wahl eines byteweisen Speichertyps.
Häufige Fragen
Welche Formel gilt?
Die Aufrundung des Logarithmus zur Basis 2; exaktes Verdoppeln vermeidet Rundungsfehler.
Warum wird eins addiert?
Null gehört dazu: Von null bis M gibt es M plus eins Ganzzahlen.
Warum benötigt ein Wert null Bits?
Ein einziger Zustand erfordert keine Auswahl, auch wenn ein Format Speicher reserviert.
Ist ein Vorzeichenbit enthalten?
Nein. Der Höchstwertmodus behandelt nicht negative, vorzeichenlose Zahlen.
Darf ich beide Felder ausfüllen?
Nein. Geben Sie genau eines an, damit die Bedeutung eindeutig bleibt.
Was kostet die API?
Der Grundpreis beträgt $0.002 je Anfrage; im Browser ist die Berechnung gratis.
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/elec/bits-for-values \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"distinct_values":1000}'const res = await fetch("https://api.kit.forhosting.com/elec/bits-for-values", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"distinct_values": 1000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/bits-for-values",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"distinct_values": 1000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/bits-for-values", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"distinct_values":1000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"distinct_values":1000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/bits-for-values", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"distinct_values": 1000
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.bits_for_values",
"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. |