Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Datentypen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
26.10.2011, 07:44 Uhr
stefan13



In C++ gibt es den Datentypen long double.
long double hat einen Exponent der geht bis 4932. Ich frage mich wozu soll dieser Datentyp gut sein. Ich habe mal etwas Astronomisches ausgerechnet.

http://mathe.stefangattmann.de/index.php?dat=astronomie

Mit dem was ich hier (ohne Sinn und Verstand) ausgerechnet habe komme ohne Probleme mit einem zweistelligen Exponenten klar. Was sollte man da noch Extremeres ausrechnen, dass der Exponent in die Tausende geht? Ich behaupte mal man braucht Exponenten über 99 nicht.

Stefan
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.10.2011, 16:03 Uhr
Hans
Library Walker
(Operator)


Hi,

das Problem bei der grösse des Exponenten liegt bei der sogenannten Normierung von Fliesskommazahlen. Die tritt im Hintergrund immer dann auf, wenn Zahlen beim einlesen vom Textformat in die binäre Darstellung aus Vorzeichen, Mantisse und Exponent umgewandelt werden. Zwar kommt man in vielen Fällen tatsächlich mit einem 2 oder 3 stelligen Exponenten aus, aber eben nicht immer.
Was long double jetzt im speziellen angeht, so ist das die compilerseitige Unterstützung des internen Zahlenformats von Intels Fliesskommaprozessoren (FPUs), das keine 64 Bit umfasste, sondern 80 Bit.

Ach ja, wenn man zahlentheoretische Berechnungen anstellt, dann kann man es auch schon mal mit grösseren Exponenten zu tun haben. Evtl. lassen sich auch Beispiele in der Raumfahrt finden, wenn man eine Sonde zu den äusseren Planeten oder darüber hinaus schickt.

Hans



P.S. und weil das mit MFC nichts zu tun hat, sondern C/C++ ganz allgemein betrifft, hab ich den Thread dahin
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.

Dieser Post wurde am 26.10.2011 um 16:09 Uhr von Hans editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.10.2011, 17:11 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja wie hans schon meinte, im prinzip kann man das z.b schon dann brauchen, wenn du sehr geringe zeitschritte hast (z.b du arbeitest auf picosekunden für realtime-highperformance-anwendungen, etc) dann ist unter umständen der exponent schnell erschöpft. ansonsten würde ich wohl eher dann zu den AVX/SSE-Typen mit 256 bzw 128bit tendieren, wenn ich schon damit arbeiten muss, dann können code damit die compiler inzwischen etwas besser vektorisieren
--
class God : public ChuckNorris { };

Dieser Post wurde am 26.10.2011 um 17:11 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: