# Führende Null und Füllnull

Eine führende Null ist eine ganz links stehende Null in Zahlenwerten, die nur eine Füllfunktion hat. Das bedeutet, dass eine führende Null keine Bedeutung für den Wert einer Zahl hat. Von einer führenden Null spricht man also dann nicht,
* wenn eine ganz links stehende Null Teil einer Zeichenkette in einem Code und nicht Teil einer Zahl ist,
* wenn es sich bei einer Ziffernfolge um einen Dezimalbruch handelt.
Füllnullen werden verwendet, um „zu kurze“ Ziffernfolgen in Codes auf eine vorgeschriebene Standardlänge zu bringen. Füllnullen können nicht nur (als sogenannte vorlaufende Nullen) am Anfang einer Zeichenfolge stehen. Die Nullen in der Mitte einer Internationalen Bankkontonummer (IBAN) z. B. erklären sich dadurch, dass die rechts stehende ehemalige Kontonummer „zu kurz“ ist, so dass hinter der Ziffernfolge, die für die Bankleitzahl steht, Füllnullen eingefügt werden müssen. Eine Füllnull kann auch nachgestellt sein. Im Industriellen Kontenrahmen kann zum Beispiel der Kontenart eine Null angehängt werden, um sie auf die Länge von vier Zeichen zu bringen.
Im Zusammenhang mit Steuerzeichen gehört eine Null als Nullzeichen weder zur Menge der führenden Nullen noch zur Menge der Füllnullen.

## Zweck der Einfügung von Nullen
### Führende Nullen

Durch Hinzufügung der Ziffer Null (z. B. durch die Verwendung des Zeichens „09“ an Stelle des Zeichens „9“) soll nach ISO 8601 auch bei alphabetischer Sortierung eines Datensatzes gewährleistet sein, dass die Zahl „10“ nicht zwischen „1“ und „2“ einsortiert wird, dass also nicht Daten, die sich auf den Oktober eines Jahres beziehen, direkt hinter Daten aufgeführt werden, die den Januar des entsprechenden Jahres betreffen, und dass die Jahresbilanz nicht mit dem Monat September endet.
Auch bei handschriftlich verfassten Texten kann es sinnvoll sein, eine führende Null zu verwenden. Dies betrifft z. B. die Notengebung mit Hilfe eines 15-Punkte-Schemas. Der Lehrerkommentar „02 Punkte“ ist z. B. fälschungssicherer als der Kommentar „2 Punkte“, da die Hinzufügung einer „1“ durch einen Urkundenfälscher nur in der zweiten Variante einen Sinn ergibt. Dasselbe gilt für Geldbeträge auf Schecks und dergleichen, wobei z. B. die Schreibweise „0100 €“ zu empfehlen ist.
Die Hinzufügung einer Null vor einer Zahl kann auch auf einen konkreten Sachverhalt hinweisen. Beispielsweise können alle Räume im Erdgeschoss eines Hauses Nummern haben, die mit einer führenden Null beginnen. „0“ steht dann für „Erdgeschoss“. Demnach könnte man „Raum 016“ („null-sechzehn“) genau so aussprechen wie „Raum E 16“.

### Füllnullen

Füllnullen erhöhen die Anzahl der Codenummern, die vergeben werden können, und zwar um den Faktor zehn, wenn die mögliche Zeichenmenge durch eine zusätzliche vorlaufende Null vergrößert, d. h. die Ziffernfolge um eine Stelle erweitert wird. Selbst dann, wenn die Stellenzahl in einer Ziffernfolge nicht erhöht wird, vergrößert sich die Menge möglicher Ziffernfolgen, wenn eine vorlaufende Null zugelassen wird. Beispielsweise sind bei deutschen Kfz-Kennzeichen vorlaufende Nullen nicht zulässig. Daher gibt es nur 900 statt 999 Kombinationsmöglichkeiten pro vorgegebener Buchstabenkombination mit der Vorgabe „drei Ziffern am Ende des Kennzeichens“. Die Benutzung von ein- oder zweistelligen Zahlen ist bei Kfz-Kennzeichen oftmals deshalb nicht zulässig, weil sie eine andere Bedeutung als drei Ziffern haben. So verweisen z. B. zwei Ziffern hinter dem Ortskennzeichen „OL“ auf den Landkreis Oldenburg, drei Ziffern in Verbindung mit zwei Buchstaben hingegen auf die Stadt Oldenburg.

## Konkrete Anwendungsprobleme
### Datumsangaben

Die Norm ISO 8601 beansprucht, den Umgang mit führenden Nullen bei Zeitangaben verbindlich zu regeln. Gemäß dieser internationalen Norm soll auch im deutschsprachigen Raum das Datumsformat JJJJ-MM-TT (2009-08-19) benutzt werden. Diese Schreibweise hat sich hier jedoch in der Praxis nicht durchgesetzt, außer bei Dateinamen.
Gebräuchlich sind im deutschsprachigen Raum die folgenden, z. T. traditionellen rein numerischen Datumsformate:
* tT.mM.JJJJ – vierstellige Jahreszahl; Tag- und Monatsangabe jeweils ohne führende Null. Beispiele: 23.7.1926. 1.1.2001
* TT.MM.JJJJ – vierstellige Jahreszahl; Tag- und Monatsangabe jeweils mit führender Null. Beispiele: 14.03.1939. 02.01.2011
* TT.MM.JJ – zweistellige Jahreszahl, Tag- und Monatsangabe jeweils mit führender Null. Beispiele: 02.10.10. 01.02.07
* tT.mM.JJ – zweistellige Jahreszahl, Tag- und Monatsangabe jeweils ohne führende Null (einstellige Jahreszahlen werden vermieden). Beispiele: 1.1.01., 2.10.09
Des Weiteren ist in internen Vermerken von Briefentwürfen, vor allem im Öffentlichen Dienst, die Schreibweise „Tag“/„Monat“ üblich (Bsp.: „13/7“ für „13. Juli“). Dieser Vermerk bezeichnet den Tag der Zeichnung.
Der Geltungsanspruch der Norm ISO 8601 konkurriert mit dem Geltungsanspruch der amtlichen Regelung für die deutsche Rechtschreibung: Nach § 104 dieser Regelung gelten Zahlen, hinter denen in der im deutschen Sprachraum üblichen Schreibweise ein Punkt steht, als Ordnungszahlen. Zu dieser Kategorie gehören auch Zahlen vor abgekürzten oder ausgeschriebenen Monatsnamen. Führende Nullen sind für Ordnungszahlen nicht vorgesehen. Also gilt die Schreibweise „03. Februar“ als Rechtschreibfehler. Zulässig ist demnach nur die Schreibweise „3. Februar“, auch mit abgekürztem Monatsnamen. Bei rein numerischen Schreibweisen (also mit Angabe des Monats als Zahl) erlaubt der „Duden“ den Verzicht auf führende Nullen, die ISO-kompatible Norm DIN 5008 hingegen schreibt ihre Benutzung vor.
Für den Bereich außerhalb von Schulen, wo die amtliche Rechtschreibung verbindlich ist, wird empfohlen, dass einzelne Autoren und Gruppen von Autoren eine konsistente Variante der Schreibung von Datum und Uhrzeit pflegen, also nicht willkürlich Schreibweisen variieren. So empfiehlt z. B. der Bundesverband der Dolmetscher und Übersetzer e. V. (BDÜ) den Autoren seiner Fachzeitschrift, stets die Schreibweise „21.3.2006“ zu benutzen.

### Behandlung von Ziffern durch die Elektronische Datenverarbeitung

Ein Grundproblem liegt darin begründet, dass Texte im Prinzip linksbündig formatiert sind, für die tabellarische Auflistung von Zahlen aber das Prinzip: „Einer unter Einer, Zehner unter Zehner…“ gilt, das bereits Grundschüler im Mathematikunterricht erlernen und das zu einer Rechtsbündigkeit des Schriftbildes führt. Computer „wissen“ aber nicht (wenn sie keine entsprechenden Programmiervorgaben erhalten), ob eine Ziffer Teil einer Zahl oder einer alphanumerischen Zeichenfolge ist. Deshalb ist es bei Anwendungen von Textverarbeitungsprogrammen erforderlich (z. B. bei ausgedruckten Rechnungen), in der Nähe des rechten Blattrandes einen Dezimaltabulator zu setzen, der dafür sorgt, dass Zahlen rechtsbündig aufgelistet werden, wenn man keine führenden Nullen verwenden will. Entsprechend muss in Programmen für die Tabellenkalkulation bei einzelnen Feldern, Zeilen und Spalten zwischen dem Zahlenmodus und dem Textmodus unterschieden werden, wenn bei der Arbeit mit dem Programm nicht vorlaufende Nullen „verschwinden“ sollen. Bei Zahlwerten sind führende Nullen in der adischen Darstellung bedeutungslos, weil der zugehörige Stellenwert ebenfalls Null ist.
Einige Programmiersprachen wie C oder Python verwenden eine vorlaufende Null für Oktalzahlen. Nachfolgendes Beispiel in der integrierten Entwicklungsumgebung von Python verdeutlicht dies:
Die Dezimalzahl 42 (42$_{10}$) bleibt in obigem Beispiel unverändert, da das Programm sie wegen der fehlenden vorangestellten Null als Dezimalzahl interpretiert. Die Oktalzahl 042 (42$_8$) wird wegen der vorlaufenden Null als solche identifiziert und in die Dezimalzahl 34 (34$_{10}$) umgewandelt (8$^1$ * 4 + 8$^0$ * 2 = 10$^1$ * 3 + 10$^0$ * 4). Die Eingabe des Wertes „09“ hingegen führt zur Meldung eines Syntaxfehlers, da 9 keine gültige Ziffer einer Oktalzahl ist. Da das Zeichen „0“ die Bedeutung des Bezeichneten ändert, handelt es sich um eine vorlaufende und nicht um eine führende Null.