[Playlisten] [Impressum und Datenschutzerklärung]

05A.2 Gleitkommazahlen, float, double, Rundungsfehler, INF, NaN


CC-BY-NC-SA 3.0

Tempo:

Anklickbares Transkript:

manfängt an mit den ganzen Zahlenauf die Maschine die wir da habensie gesehen diese ganzen Zahlen haben typischerweisesechzehn Bitvergessen soll sechzehn wittern die typischerweiseund diese sechzehn Bit auf der Maschinekann ich aber interpretieren als die Zahlen vonnull bis?? in die sechzehn Bitkann ich interpretieren dass die Zahl von null bis fünfundsechzigtausendirgendwas kann ich mir nie merken fünfundsechzig tausend irgendwascirca sechzig tausend Händenneunzig genau die letzten drei Zahlen zu habendas wäre die übliche Interpretationdes sie sagen das letzte besteht ferner einst das vorletzte findet zwei das drittletzte steht für eine vierund so weiter einfach die Zweierpotenzenauf summierenwas ich in letzter ?? gezeigt hatte wareine andere Interpretationmit dem ZweierkomplementZweierkomplementKomma nur bis zur Hälfte geht nach obenirgendwas bei zweiunddreißigtausendnoch wasgehen nur bis zur Hälfte nach oben kann aberdafür negative Zahlen darstellenalso von ungefährzwei ?? dreißig tausendminusbis ungefähr zweiunddreißig tausend plusKinder dann mit sechzehn Bit was dargestelltähmdas gab's letztes Mal ganze Zahlen all das sind immer noch ganze Zahlenund Seminare artig für die eine Hälfte was gemacht schonwie man sich in Kommamittendrin vorstellen kann ein festes Komma wasWest betoniert es an einer Stelle dasfix Boydfest Komma fix beugtund ?? ausbrechen FixedfreundRobindas gab's für die eine Hälfte schon im Seminardas es nicht eingebautin C mit dem Fest Komma der muss ein bisschen stricken was eingebaut ist ist diese InterpretationMitanzseinsdiesen der Patient bei der zum Zeitfür die diversen Zahlenformatin diesem Fall ein Kind auf dieser Maschinefest Komma ist nicht eingebaut was aber eingebautesist Gleitkommaander Welle jetzt kann man Barspezialitätenzu erzählenman könnte meinen Gleitkomma wäre das Wasser vom Taschenrechner kennt?? nicht immerhingibt so einige Überraschungenwas die üblichen Computer können und was den üblichen Taschenrechnernach meinem Kenntnisstandnicht zu gerne tunKomma bis hin zu GleitkommaEnglisch laut EndpointlauFreundähmmachte die korrekte Bezeichnung ist nicht leid Punkt im Deutschen steht ein dezimal Komma war kein dezimal Punkt im englischen steht an Punkt deshalb ?? ?? Komma und im englischen Punkt?? fließt Kommahört sich auch ?? komisch anders Komma fließt er mich wie Honigdas Komma geleitet durch die Stellen durch deshalb lieber Gleitkommaließ Punkt oder sowasdas kennen sie aus derPhysik insbesondere wenn manirgendwelche Messwerte angeblich eins Komma zwei drei mal zehn hochvierzehngemeint ist dann ja wenn man das hier so liest in der naturwissenschaftlichenNotation schiebe das Komma um vierzehn Stellen nach rechts oder negativen Exponentenund sprechen viele Stellen nach linksmanhat damit weniger abzuspeichernich speichere diese drei Zahlen und diese zwei Zahlen und habe insgesamtabgespeicherteins KommaPunkt nichteins zwei drei Lizenz Komma zwölf null eins zwei drei vier fünf sechs sieben acht neun zehn elf zwölfalso statt dass ich so viel Daten abspeichern hier diese ganzenZiffernwollenspeichere ich nurfünf Zifferich zahle aber dafürinwiefern zahle ich dafür was ist der Preis den ich bezahle??ich zahle den Preis dass es ungenau werde ich gebe ich ihr diese ganzen Stellen nicht mehr anwas ist wenn das nicht alles nur ?? gewesen wären was ist wenn hierirgend einenTempel gestanden hätte das Wetter allesweg gerundet seinich gebe nicht alle Stellen anders ist das was manzahltman verliertan Genauigkeitgibt nur soundsoviel Stellen an sieben Stellen Pi mal Daumen fünfzehn Stellen das sind die üblichen Formate die man so hat das Schluss sieben stellennach diesem Komma hier übrig bleiben oder fünfzehn Stellen nach dem Komma ??aber die führenden Stelleneben ist esindes unser vier Milliarden Billionen Trillionenund unterstellen danach die bleiben erhalten ich opfere ganz hintenein bisschen Genauigkeitdas ist die Idee bei GleitkommaBeistrich einen riesigenZahlenumfangbei dabei ja sogar bis soundsovielmalzehn hoch drei hundert und achtmit der wirklichZahlen mit drei hundert acht Stellen oder sogar hundert neue Stellen dannspeichern wollen würden nutzen bisschen engim Rechnerauf die neue Technikwortenim bitte Chips auf jeden Fall raffinierter ist sich nur ein paar Ziffer zu merken mal zehn hoch soundsovielbeziehungsweisenatürlichdie üblichen vom Mateauf dem Rechner sind daneben nicht mal zehn hoch soundsoviel sondern mal zwei hochsoundsoviel?? ich hab im Rechner dann eine Mehrzahlsowas wie eins Komma null eins eins eins null einsmalzwei hoch?? ?? Beispiel keine Ahnung hundert dreiundzwanzigso sieht dann typischerweise im Rechner aus es gibt auch Gleitkomma Formatedie dezimal sind für den Rechnerdas es aber nicht gerade das was die transistorenliebendenTransistoren lieben das binäre das macht es natürlich viel einfacherdas sind die üblichen Formatkannich speicherediesen Exponentennicht eins zu eins der Witterung bisschen verschobenegal das muss man so genau wissen und ich speicherediese binären Ziffern soll weitermachen?? zwei dahinter dass es primär gemeint speichere diese binären Zifferndie eins muss ich nicht speicherndas anders als bei dezimaldie eins muss ich nicht speichern weil die automatisch der Städte nach vorne keine eins Stunde sondern null stünde deine null Stundeich das Komma falsch gesetzt Komma hätte dastehen müssen entweder wieder nach einsähmweiter sage Fußnotees gibt eine gesonderte Anzahldie Normen als Numbers die Idee normalisierte Zahlen kann davon tatsächlich genutzt aber die üblichen Zahlen die man so hat in diesem Gleitkomma Format ?? eine eins und eins muss man nicht mit Speicherdas ganzeetwas geschickterja und von den Formaten herdas übliche double und das übliche floatdie beiden ihr zusammen nimmt und ?? und Vorzeichen der vor das auch noch das übliche double Formatdas übliche double Format hatvierundsechzig Bitin der Praxis ist esziemlich egal wie jetzt diese beiden Zahlen und das Vorzeichenin diese vierundsechzig Bit rein codiert sinddannunzählige um Rechner im Internetwo sich die Rolle der einzelnen Bits angucken könnengesagt das es mir in den ganzen Jahren und Jahrzehnten nie passiert das ich mir die Rolle der Samples hätte angucken müsseninsofern kann sie dasgroßzügig umschiffenwichtig istdass diese anderen stehen hier diese Nachkommastellendas Vorzeichen insgesamt in dieser Exponent der stehtin diesen Fällen sechzig Bit in kodiert Rennentypischerweise hat double vierundsechzig Bit undfloatHassan das auch singendesinge doubleeinfach doppelte Genauigkeitfloat für float Endpoint assistant NCwird gerne zweiunddreißigBitwas dann zum Schluss?? hier ungefährsiebenDezimalstellennach dem Komma entspricht dem ihr fünfzehn DezimalstellenKommadas wollte ich jetzt einmal mitMATLAB noch mal bisschen vorführen?? Spezialitätendie man dabei hatmannicht alle Zahlen sehen so aus es gibt Sonderzahlendiebisschen überraschende Fähigkeiten habendamit die Wifi programmieren muss in MATLABMATLAB sieht es von der Syntax her hier und ein bisschen anders ausaber auch mit der macht nichts anderesals dass sie einen Hauptprozessor weiter zurechtreichenund den Coprozessor genau diese Operationen ausführen zu lasseneines war diese Rechengenauigkeitin Aktion angucken wenn ich sage ASvon mir aus sehenZeugnis über so zehn hoch minuszwanzigdas ist dann ja dieübliche Schreibweisemit diesen Ehennichtkönnten am Ende mit der Qualität ?? ausschreiben einmalzehnhochmit dem sie Komplexdas hoch minus zwanzigam ?? würde auch funktioniereninC können Sie das hier nicht schreiben dass sie oben ganz in C schreiben das irgendwann sind sie nicht die keine sind C schreiben aber überlegen Sie erleben eine Überraschung was passiert wenn sie das hier in C schreibenC ist das hier das Exklusiv oder das gehtvoll daneben wenn sie das probieren in zehnanVorsicht an der StelleMATLAB kann das auf diese Weise mit dem hoch Tabellenkalkulationenkönnen es auch mit dem hoch dass mansie verwechselt ?? schreibt in C bedeutet es Gottes kommt etwas anders vorsichtigwenn es so schreiben kann sie den meisten Systemen zurück zu Recht einmalzehn hoch minus zwanzig das ist sehr gemein mit dem Ehenich wollte mal die Grenzen der Genauigkeitvorführenhabe ich ja gesagt manspartSpeicherplatzund verliert Genauigkeitdas ist der Preiswenn ich jetzt zum BeispielRechnereins Plus Adreizehn Uhr minus zwanzig Rechner eins Plus Ain der bleibt nur noch einswar es definitiv nicht null aber wenn sie als Bussard bleibt nur noch einsimmer testweise rechnenPunkt es war Klammern damit auch gerade das tut was ich will eins Plus Aminus einshilft ihm auch nichtähmwirklich der null raus anders wenn ich in anderes A habe wenn ich sage AS gleichsehen?? eins die minuszehnnull Komma neun null einsUnrecht nicht dasselbeeins Plus Asindmenschlich Beistrich wasin jetziger mache als NotwehrEinfluss A minus eins dann müsste das zum Vorschein kommt ihr zeigte mir einfach nur insgesamt fünf Ziffernunter hinten passiert was wässrig gerundet istwenn ich so macheeins Plus A etwas mehr als eins ein Hauch weniger als eins eins abziehenden sie da bin ich wieder daalso müssen bisschenvorsichtig sein an manchen Stellen haben sie Informationendrindie erste unsicher bleibt bei Einsplus Art kürzte Ihnen hier in Kürze sicher rundet es einfach auf dieser insgesamt fünf Stellen normalerweisewenn es aber so rechnenist in den fünf Stellen auch diese Winzigkeit dabei?? ich eben addiert habe das kann man hier inMATLAB auch noch umschalten sie können sagen Vermittlungzeigte ihnenWasser drauf hatgerade was will ich hier eins Plus A jetzt doch mal was oben schön gerundet hat ?? schönen einfallsreichen Grunde dann als Bussardden sieben in alle Seichtwasser hat steht da hinten die einsähnliche Phänomene auch in Sachen Server Tabellenkalkulationenrundenauf solche Nachkommastellenangeschaltet istsie sehen gar nicht was sie alles in ihren Daten haben und plötzlich wenn sie von dieser Zahl eins abziehen ist der hier wenn sie von dieser Zahl eins abziehenwenn sie plötzlich das da hinten noch zum KörnchenPünktchen irgendwas drin steckt und es doch nicht null wardas mal alsIdee zur??zu den Rundungsfehlereins Plus A kann sein wenn A sehr klein ist das das ein ziert und wenn sie dann eins abziehen und insgesamtnulldas heißt es kommt plötzlich auf die Klammersetzungandie als Ausdruck ?? Klammern gesetzt und dazu machen wir uns abgearbeitetdass es gewisse mathematische Regeln gelten nicht mehr Assoziativitätdamit ?? plötzlich ein Problem ich gar nicht mehr in beliebiger Reihenfolge Klammer aufsoalso ähnliche Genauigkeit und dann gibt esbei diesen Standardzahlenformatennach IT für dieSonderzahlendie sind total lustig ich kann einst durch nur rechnenund es sich nicht in die Luftseinen Weg nicht einfach Infiniti raus??in C müsste man vorsichtig seinin zehner was ?? schon ausprobiert haben eins durch Null in zehn?? dreizehn durch zwanzig ?? so schreiben Sie kommt null rausdas ist anders in MATLAB in MATLABist alles erst mal Begleit Komma zahlender kommt nicht nur rauswenn sie einst durch null in C schreibenversucht C genauso C++ das in ganzen Zahlen zu rechnen ganze Zahl ist pingelig wenn sie durch null teilen das gibt Ärgerähmwenn sie in zehn??wenn sie in zehn Gleitkomma Zahlenin dieser Formdas eine von beiden mit eine vom Beiblatt Komma dass das in C machen gibt's je nach Einstellung des sind Systems keinen Ärgerund es passiert das was sie in MATLAB passiert ist neben Sonderzahl namens Infiniti also in diesemvierundsechzig Bit für double und in den zwei ?? dreißig Bit für Flo den typischen zwei dreißig Meter Flotte die typischen sechzig verdoppeltin diesenBits ist noch Sinn und ?? Spezialitätenversteckt in diesen Benutzern gibt sich bei den Exponentenund die Madison Vorzeichen und so weiter sondern kann auch über besondere Bitmuster haben eins fürunendlicheines für minus unendlich wenn sie minus eins durch nur rechnen können Sie natürlich minus endlich rausund eines fürich weiß nicht was das istnur durch Nullgibt Norte numberin Cgibt auch dieses hierwarten aber die Wurzel aus minus einsaber sie an was mit der Post rechtan der Stelle Mittel klügermit der Pflicht null plus ein I rauswenn sie die Wurzel aus minus eins in C und C plus plus machenMitarbeiterzahlensoll ich sagen?? Texte zahlen da er wenn sie das mit double-Zahl machen gibt's Mathe numberdie Zahl gibt es für dasSystem nichtanund mit diesen drei Sonderzahlendas InfinitimannsInfinitisoll Douglas Infiniti Manns Infinitivbus Menschen endlich und Norte numberwird weiter gerechnet und kann jetzt zum Beispielhabenda was machen war einst durchunendlichwenn dieses unendlich Info rausgekommenist kann ich damit weiter rechnenund gegen null raus wie sich gehört einzig nämlich gibt an der Stelle nullin ?? kriegen sie inC und C plus plus nicht sohindern Sambatricksmachen es gibt kein kein Symbol INFin sie Sharp zum Beispiel Komma tatsächlich dann?? unendlich minus unendlich und lassen aber anfordern als Zahlen erwartetenPunkt sie ist das nicht vorgesehen IC kann die ganze Mahlzeit ist also eingebendanndas müsste einst durch Norte number seinwenn ich an das aberwitzige Element durch etwas Zeilen von dem sie nicht wissen was es eigentlich istdann sollte natürlich auch wieder was rauskommen von dem sie nicht wissen was es eigentlich istdas geht dann durch Erdenunendlichgroß schreibenin Fluss inunendlich das unendliche sinnvollerweisewieder unendlichunendlich minus unendlichder Vorschlag war null oder unendlichfieserweise Norte numberNorte number war man nicht nicht entscheiden kann was das istein sich vor das ein unendlichwäre sowas wiein Quadratfür N gegen unendlich und das andere wäre sowas wie in hoch dreidieses wäre mein erstes und endlich das wäre mein zweites nämlich was sich abziehenin das zweite unendlichwirdKosten sich jetzt die Fußnägel aber die zweite endlich wird irgendwie größer als das erste endlich das geht gegen minus unendlichwieder so rechnen Hansen endlich minus unendlich wird minus unendlich wenn sie haben in hoch drei minus im Quadratdann müssten sie sowas haben wir plus unendlichund wenn sie sowas haben wie was bauen wir hier malinQuadratplus dreiminus ein QuadratN soll überall ganzen wachsenden wir das unendlichhier steht auch etwas was endlich wird aber sie kriegenwas rausdieses ein Quadrat das Weg hebt ?? das Konstanz dreidas heißt wenn die zweiWerte voneinander abziehen die ins unendliche wachsenkann jeder Unsinn passierenschlussendlich müssen endlich irgend eine Zahl es kann alles mögliche rauskommen ich zwei Zahlendieins unendliche wachsen voneinander abziehenes kommt drauf an wie schnell die relativ zueinander wachsen was rauskommtaber das kann natürlich jetzt hierMATLABund genauso dann C und C plus plusmacht Schluss der Prozessor ganz alleinekann es sich entscheiden und deshalb ist die Standardisierungfür sagen wir wissen es nicht ?? numberalso vorsichtig es kommen einem stellen überraschende Sachen rauswarsie gerade mal noch mal dasallerletztes BeispielInfinitikriegen sie wenn sie einst durchnull teilenaber sie können natürlich auch sowas veranstalten zehn hochmarche malzehnhoch zehnmalzehn hochhoch drei hundertschon mal Leerzeichen nach einem Sklave zu am??gesagt drei hundert und achtzehn hoch drei hundert acht ist Ende der Fahnenstange Pi mal Daumen den von der Größenordnung Zimmertanne das in der Fahnenstange für dieses vierundsechzig bittigedouble Formatwenn ich das jetzt rechnen will sie noch zehn mal zehn hoch drei hundert ??lediglich der auch schon Infiniti RausrahmenderOberflodieser Überlaufist bei double-Zahlanders als bei den ganzen Zahlen bei ganzen Zahlenin siezum Beispiel in Achtbit von der hundert sieben zwanzig ein zweiter zu minus hundert achtundzwanziges läuft einmal um von den positiven Zahlen zu den negativen Zahleninsofern sind diese double-Zahlhier sicherer es läuft sich plötzlich in die negativen Zahlen einfernsie kriegen beim Überlaufservicewandern plus oder minus unendlich rausdrei L zehn hoch dreihundert und zehn kann er nicht darstellendass es jenseits von dem was er kann und deshalb nennt das dann einfach unendlichdas heißtdas heißt wenn Sie folgendes rechneneinsdurch dasrechnen Sie eigentlich einst durch den endlich und kriegen zwangsläufig null rauswobei diese Zahl knattert es wird schon hinhauen oder zeigendiese Zahl selbst ihr zehn hoch minus drei hundert und zehn zehn Hochhosolch eilig mit IE schreiben also minus drei hundert und zehndiese Zahl selbst geht durchaus?? rauskommen sollte nicht ?? erwarten einst durch zehn Uhr drei hundert und zehn ?? sollte sie noch minus eine Ziffer gesehen sieht sie noch minus drei hundert zehngibt zu jedem bisschen Ärger mit der Rundungaber immer noch dich dabeidas kann im Prinzip sie noch minus drei hundert zehn was hier passiert ist auf dem Wege dahinmüsste er zehn Hochsinoplusdrei hundert und zehn ?? mit dem richtigen Satz ?? noch minus drei hundert zehn kann er auf dem Wege dahin müsste sie noch plus drei hundert zehn ausrechnenund dass es für ihn endlich wenn sie einzigen endlich dein Klinsinull raus nicht das da untenalso sobald sie an solchen Kanten arbeiten insbesondere ?? dividierendas es gefährlichsubtrahierenschon ein bisschen gefährlich dividieren ganz doll gefährlichmit der solchen Kantenarbeit müssen bisschen vorsichtig sein mit Rundungsfehlernund mit dem unendlichund je nachdem was man hier Spielereien veranstalte dann sogar mit dem Mathe numbersind dann in C von den Einstellungen ab die man machtim Systemdafür gibt ?? Spezialfunktionenin C von ?? Beistrich das dann ab auf solche Rechenoperationendannzwangsläufig zum Programmende führen oder die einfach ignoriert werdensind das die MATLABeinfach zu durchlaufen und ignoriert werdenhierbin ich ein Schritt zurückgegangen der mich gefragt wo ist denn endlich minus unendlich hergekommendas hier istunendlichim GrenzwertAnführungszeichen obenund dass es unendlichen Grenzwerten Anführungszeichen zuwas der Rechner sieht es nur noch dieses unendlichminus unendlichund hier sieht man dass dieses unendlich müssen endlich auf ganz verschiedenenRechenoperationenherkommen kannund je nachHistorieeinmal eine vernünftige Zahl aber müssen endlich ?? plus unendlich sein soll der Ärger ist ich weiß diese Historie nicht mehr ich sehe nur nochich sie nicht eines Ent Zarathustra ich sehe nur noch unendlicherstickenund ich weiß nicht groß hergekommen ist es daher gekommen ist es daher gekommenoder Komma deshalb hat sich entschieden werdenwas die Differenz von unendlich minus unendlich