NaN

NaN

NaN (engl. Not a Number) bedeutet "keine Zahl". Es handelt sich hierbei um einen speziellen Wert bestimmter Darstellungen von Gleitkommazahlen auf dem Rechner, der als Ergebnis einer ungültigen Rechenoperation zurückgegeben wird. Insbesondere haben die heute weit verbreiteten Gleitkommadarstellungen nach IEEE 754 bzw. IEC 559 NaNs.

Als Ergebnis einer Berechnung wird immer dann NaN geliefert, wenn ein Ergebnis nach mehreren, sich widersprechenden Regeln berechnet werden könnte, keine reelle Zahl (oder eine der beiden Unendlichkeiten) ergäbe, oder bereits NaN als Argument an der Berechnung beteiligt ist.

Dabei ist +Inf (für Infinity = unendlich) eine Gleitkommazahl, die sowohl extrem große Zahlen als auch einen positiv unendlichen Wert repräsentiert. Daneben gibt es −Inf für einen negativ unendlichen Wert.

Berechnungen, welche zu NaN führen

Berechnung an einem reellen Argument, welches ein komplexes Ergebnis ergibt. Beispielsweise liefert die Quadratwurzel oder der Logarithmus einer negativen Zahl, oder wenn der Betrag des Argumentes bei einer Arkusfunktion größer als 1 ist, NaN.

Wenn ein Ausdruck unbestimmt ist, wie beispielsweise:

  • Die Division 0/0 und ±∞/±∞
  • Die Multiplikation 0×±∞ und ±∞×0
  • Die Additionen ∞ + (−∞), (−∞) + ∞ und die dazu äquivalenten Subtraktionen.

Weiters führen alle Ausdrücke mit NaN wieder zu NaN. Beispielsweise liefert NaN + 1 das Ergebnis NaN.

Darstellung

Es gibt nicht nur einen NaN-Wert, sondern viele verschiedene. Bei einfacher Genauigkeit mit 32 Bit nach dem Standard IEEE 754 besitzt eine NaN folgende binäre Darstellung, bestehend aus 32 Bits:

s111 1111 1axx xxxx xxxx xxxx xxxx xxxx

mit s dem Vorzeichenbit und a den Typ von NaN. Wenn a und alle x gleich 0 sind, handelt es sich um eine anzeigende NaN (englisch signalling NaN abgekürzt sNaN) . Ist a gleich 1 wird eine im Standard definierte sogenannte stille NaN (englisch quiet NaN abgekürzt qNaN) mit x als Argument signalisiert, welche unter anderem zur Signalisierung von +Inf bzw. -Inf dient. Zur Erkennung einer NaN bei einfacher Genauigkeit prüft ein IEEE 754-Rechenwerk die Stellen mit 1 mittels Konjunktion (logisches UND).

Der Unterschied zwischen den verschiedenen NaN-Typen liegt im Bereich der Software und wie mit der weiteren Programmausführung verfahren werden soll: Bei qNaNs liefern die arithmetischen Operationen selber wiederum qNaN zurück, wenn eines ihrer Argumente qNaN ist ohne dabei das Programm abzubrechen. Eine sNaN hingegen sollte im Bereich des Programmablaufs einen Laufzeitfehler auslösen, um den Rechenfehler anzuzeigen bzw. aufzeichnen zu können. Die konkrete Reaktion auf eine sNaN liegt im Ermessen des Programmierers.

Vergleicht man zwei NaNs auf Gleichheit, dann besteht Ungleichheit.

Quellen


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • NaN — NaN, proviene del acrónimo en inglés Not a Number (en español: no es un número). Este acrónimo se usa generalmente en algunos lenguajes de programación para expresar un resultado imposible de calcular, como el caso de las raíces negativas,… …   Wikipedia Español

  • Nan — or NAN may refer to one of the following. Contents 1 Acronyms 2 Places 3 People …   Wikipedia

  • NAN — bezeichnet: eine Stadt im Norden von Thailand, siehe Nan den gleichnamigen Fluss (Maenam Nan), siehe Nan (Fluss) die gleichnamige Provinz, siehe Nan (Provinz) den Kreis Nan (chin. 南县 Nán Xiàn) der chinesischen Provinz Hunan, siehe Nan (Yiyang)… …   Deutsch Wikipedia

  • NaN — (« Not a Number », en français « pas un nombre ») est, en informatique, une valeur ou un symbole produit par le résultat d une opération arithmétique invalide, plus spécialement dans les calculs utilisant la virgule flottante …   Wikipédia en Français

  • Nan — …   Deutsch Wikipedia

  • Nan — /nan/, n. 1. a word formerly used in communications to represent the letter N. 2. a female given name. * * * (as used in expressions) Hai nan Ho nan Huai nan tzu Hu nan Chi nan Nan ch ang Nan ching Nan ning Yün nan T ai nan * * * ▪ Thailand… …   Universalium

  • Nan-ao — 南澳鄉 Staat: Republik China Koordinaten …   Deutsch Wikipedia

  • Nan’yō — shi 南陽市 Geographische Lage in Japan …   Deutsch Wikipedia

  • NaN — (англ. Not a Number)  одно из особых состояний числа с плавающей запятой. В соответствии с IEEE 754, такое состояние задаётся через установку показателя степени в зарезервированное значение. Используется во многих математических… …   Википедия

  • Nan'an — ist mehrdeutig. Es bezeichnet: die kreisfreie Stadt Nan an (南安市) der bezirksfreien Stadt Quanzhou in der chinesischen Provinz Fujian, siehe Nan an (Quanzhou); den Stadtbezirk Nan an (南岸区 Nan an Qū) der chinesischen regierungsunmittelbaren Stadt… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”