Große-Ganzzahl-Addition
9223372036854775807 plus 1 ergibt genau 9223372036854775808, eine Summe, die eine vorzeichenbehaftete 64-Bit-Ganzzahl überläuft, hier aber Ziffer für Ziffer erhalten bleibt. Addieren Sie zwei Ganzzahlen beliebiger Länge ohne Rundung oder Überlauf und sehen Sie, ob das Ergebnis in 64 Bit passt. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Erster Text
- 9223372036854775807
- Zweiter Text
- 1
- Sum
- 9223372036854775808
- Ziffernanzahl
- 19
- Vorzeichen
- positive
Native Vierundsechzig-Bit-Ganzzahlen hören auf, exakt zu sein, sobald eine Summe ihren darstellbaren Bereich überschreitet. JavaScript-Zahlen verlieren die ganzzahlige Identität jenseits von neun Billiarden, vorzeichenbehaftete Long-Werte wrapen oder werfen bei neun Trillionen, und vorzeichenlose Register können zwei hoch vierundsechzig nicht halten. Dieser Rechner für große Ganzzahladdition nimmt zwei Dezimalganzzahlen beliebiger Länge entgegen, addiert sie mit schulischer Übertragsarithmetik und liefert die exakte Dezimalsumme als Zeichenkette — ohne Rundung, ohne Wrap-Around und ohne wissenschaftliche Notation. Addieren Sie das vorzeichenbehaftete Vierundsechzig-Bit-Maximum plus eins und Sie erhalten 9223372036854775808; addieren Sie zwei hundertstellige Buchungssummen und jede Ziffer bleibt erhalten. Fehlgeschlagene Prüfung wird nicht berechnet.
Warum native Addition scheitert und schulischer Übertrag exakt bleibt
Jeder gängige native Ganzzahltyp hat eine harte Obergrenze. Ein vorzeichenbehaftetes Vierundsechzig-Bit-Wort endet bei 9223372036854775807; eins dazu entweder wrappt zu einem großen Negativen, sättigt oder löst Überlauf aus. Ein Rechner für große Ganzzahladdition existiert, um diesen Handel abzulehnen.
Jeder Operand wird als vorzeichenbehaftete Dezimalziffernkette gelesen, führende Nullen werden entfernt, und die beiden Beträge werden vom niedrigstwertigen Ziffernende mit einem Übertrag von null oder eins addiert, genau wie auf Papier. Unterscheiden sich die Vorzeichen, wird der kleinere Betrag vom größeren abgezogen und das Vorzeichen des größeren behalten; gleiche entgegengesetzte Beträge heben sich auf null auf. Das Ergebnis wird als kanonische Dezimalzeichenkette mit höchstens einem führenden Minus und ohne Pluszeichen zurückgeschrieben.
Weil jeder Schritt eine endliche Ziffernoperation ist, ist die Summe für jede Länge bis zur veröffentlichten Zifferngrenze exakt. Das ist der ganze Algorithmus: kein Gleitkomma, keine modulare Reduktion, kein Rundungsmodus. Die Fähigkeit meldet außerdem, wie viele Ziffern der Absolutbetrag der Summe einnimmt, ob die Summe positiv, negativ oder null ist, und ob sie außerhalb des vorzeichenbehafteten Vierundsechzig-Bit-Bereichs liegt, damit Aufrufer, die noch mit einem festbreiten System sprechen müssen, wissen, wann Sie die Zeichenkettenform behalten müssen.
Wo exakte Großganzzahl-Addition ihren Nutzen zeigt
Finanz- und Abrechnungspipelines addieren Rechnungszeilen, Steuerbasen und Kryptowährungs-Untereinheitensummen, die bereits übersteigen, was eine Tabellenzelle oder eine Vierundsechzig-Bit-Geldspalte ohne Rundung halten kann. Kryptografie- und Kodierwerkzeuge addieren große öffentliche Ganzzahlen, Seriennummern und hashgroße Zähler, wenn sie nur eine Summe brauchen, nicht eine volle Mehrfachpräzisionsbibliothek. Informatikkurse und Programmierinterviews brauchen ein Orakel, das Übertragsfortpflanzung an einer Kette von Neunen plus eins zeigt und sich weigert so zu tun, als passe 2^63 minus eins plus eins noch in ein vorzeichenbehaftetes Long.
Datenmigrationsskripte vergleichen ein SUM von NUMERIC-Spalten der Datenbank mit diesem Endpunkt, um stillen Überlauf in einer Ganzzahlspalte zu fangen, die sie gerade verbreitern wollen. Dann haben Sie eine reproduzierbare exakte Gesamtsumme für Bücher, Bewerter und Randarbeiter, ohne einen eigenen Dienst für beliebige Genauigkeit aufzustellen.
Anwendungsfälle
Buch- und Rechnungssummen jenseits von vierundsechzig Bits
Addieren Sie zwei Geld-, Steuer- oder Untereinheitenbeträge, die ein vorzeichenbehaftetes Long oder eine Tabellenzelle bereits überlaufen, und behalten Sie die exakte Dezimalgesamtsumme als Zeichenkette.
Überlauf-Orakel für Bewerter und Vorstellungsgespräche
Prüfen Sie Schüler- oder Kandidatenaddierer gegen eine deterministische Schulsumme, einschließlich einer Kette von Neunen plus eins und vorzeichenbehaftetem Vierundsechzig-Bit-Überlauf.
Migrationsprüfungen vor dem Verbreitern von Ganzzahlspalten
Vergleichen Sie ein Datenbank-SUM mit dieser exakten Gesamtsumme, um zu sehen, ob eine Spalte noch in int64 passt oder ein decimal- oder numeric-Typ werden muss.
Häufige Fragen
Wie addiert man zwei Ganzzahlen, die einen Vierundsechzig-Bit-Typ überlaufen?
Senden Sie a und b als Dezimalziffernketten (optionales führendes Vorzeichen).
Wrapt oder sättigt der Rechner bei Überlauf?
Nein. Die Summe ist innerhalb der veröffentlichten Zifferngrenze unbegrenzt. Es gibt weder Wrap noch Clamp. Für sättigende Addition fester Breite nutzen Sie stattdessen ein eigenes Sättigungs-Ganzzahlwerkzeug.
Kann ich eine negative und eine positive Zahl addieren?
Ja. Setzen Sie ein Minuszeichen vor den negativen Wert. Bei unterschiedlichen Vorzeichen wird der kleinere Betrag vom größeren abgezogen und das Vorzeichen des größeren behalten; gleich große Gegenwerte ergeben null.
Wie viele Stellen darf jede Zahl haben?
Bis zu 10.000 Stellen je Zahl, gezählt nach dem Entfernen führender Nullen. Geben Sie nur Ziffern mit optionalem Plus- oder Minuszeichen ein: Tausendertrennzeichen, Leerzeichen, Dezimalstellen, Hexadezimal-Präfixe und wissenschaftliche Schreibweise werden abgelehnt.
Warum rechnet eine Tabellenkalkulation bei sehr großen Summen falsch?
Viele Zellen speichern Zahlen als Gleitkommawerte, die nicht jede Ganzzahl über 9.007.199.254.740.991 darstellen können; so wird 10^16 plus eins womöglich schon als 10^16 gespeichert. Hier werden die Ziffern als Text behandelt, und alle bleiben erhalten.
Verwandte Tools
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/bignum-add \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":"9223372036854775807","b":"1"}'const res = await fetch("https://api.kit.forhosting.com/dev/bignum-add", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": "9223372036854775807",
"b": "1"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/bignum-add",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": "9223372036854775807",
"b": "1"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/bignum-add", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":"9223372036854775807","b":"1"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":"9223372036854775807","b":"1"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/bignum-add", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"a": "9223372036854775807",
"b": "1"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.bignum_add",
"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.
Limits
max_digits | 10000 |
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. |
Technische Hinweise
Erfolgreiche API-Aufrufe nutzen den veröffentlichten Grundpreis $0.002.
Warum native Addition scheitert und schulischer Übertrag exakt bleibt
IEEE-754-Doubles, die JSON-Zahlen und viele Tabellenzellen tatsächlich sind, können nicht mehr jede Ganzzahl darstellen, sobald die Größe 9007199254740991 überschreitet; 10^16 plus eins kann daher schon als 10^16 gespeichert sein.
Eingangsvertrag, Antwortform, Grenzen und Fehler
Leere Zeichenketten und ausgelassene Felder scheitern ebenso. Nach dem Lesen des Vorzeichens werden führende Nullen entfernt; ein Wert minus null wird zu null. Jeder bereits bereinigte Betrag darf höchstens 10000 Ziffern enthalten — diese Grenze ist erklärt und wird durchgesetzt, damit eine eingefügte Ziffernwand den Isolat nicht erschöpft. Gemischte Vorzeichen funktionieren ebenso: minus einhundert gefolgt von zwanzig Nullen, plus eins, ergibt eine neunzehnstellige Negative. Prüfungsfehler werden nicht berechnet. Senden Sie per POST ein JSON-Objekt mit zwei Pflichtfeldern, a und b. Jedes Feld ist eine Dezimalganzzahl: eine Ziffernkette mit optionalem führendem Plus oder Minus, oder eine JSON-Zahl, die eine sichere Ganzzahl ist. Brüche, Tausendertrennzeichen, Leerzeichen in den Ziffern, hexadezimale Präfixe und wissenschaftliche Notation werden mit invalid_input unter Nennung des Feldes abgelehnt. Bei Erfolg spiegelt der Körper die beiden Summanden in kanonischer Form, liefert sum als exakte Dezimalgesamtsumme, digit_count als Ziffernzahl des Absolutbetrags, sign als positive, negative oder zero, exceeds_int64 als true, wenn die Summe nicht als vorzeichenbehaftete Vierundsechzig-Bit-Ganzzahl darstellbar ist, und eine kurze Formelzeichenkette, die sum = a + b bekräftigt. Beispiel: a gleich 9223372036854775807 und b gleich 1 ergibt sum 9223372036854775808, digit_count 19, sign positive und exceeds_int64 true. Erfolgreiche API-Aufrufe nutzen den veröffentlichten Grundpreis $0.002.
Wo exakte Großganzzahl-Addition ihren Nutzen zeigt
Weil die Umsetzung reines Parse der Stufe A ist, kostet jeder erfolgreiche Aufruf den veröffentlichten Grundpreis $0.002 ohne Modell-Token und ohne ausgehendes Netz. Halten Sie jeden Operanden innerhalb der veröffentlichten Zifferngrenze, senden Sie Werte, die JSON überlaufen würden, als Zeichenketten statt als Zahlen, und nageln Sie die gelieferte Summe in Tests fest.
Technische Fragen
Warum müssen große Werte Zeichenketten statt JSON-Zahlen sein?
JSON-Zahlen sind IEEE-754-Doubles. Nicht alle Ganzzahlen größer als 9007199254740991 sind darstellbar, daher wäre ein Wert wie 9223372036854775807 schon gerundet, bevor der Addierer liefe. Ziffernketten bleiben exakt.
Welche Eingaben werden abgelehnt?
Fehlendes a oder b, leere Zeichenketten, Brüche, Tausendertrennzeichen, Nichtziffernzeichen und Beträge länger als 10000 Ziffern scheitern mit invalid_input und werden nicht berechnet.
Was kostet der Rechner für große Ganzzahladdition?
Das Browser-Werkzeug ist kostenlos. API-Anfragen nutzen vorausbezahltes KIT-Guthaben zu $0.002 je erfolgreichem Aufruf; ungültige Eingabe wird nicht berechnet.