Die Darstellungsform gültiger (bzwreelle) Zahlen, bei denen sie als Mantisse und Exponent gespeichert werden, sind Fließkommazahlen (vielleicht ein Punkt, wie es in englischsprachigen Ländern üblich ist). Trotzdem ist die Zahl mit einer festen relativen und einer variablen absoluten Genauigkeit versehen. Die am häufigsten verwendete Darstellung entspricht dem Standard IEEE 754. Mathematische Operationen, die Gleitkommazahlen verwenden, werden in Computersystemen sowohl in Hardware als auch in Software implementiert.
Punkt oder Komma
Die ausführliche Liste der Dezimaltrennzeichen enthält dieseEnglischsprachige und englischsprachige Länder, in denen in den Zahlenaufzeichnungen der Bruchteil durch einen Punkt vom ganzzahligen Teil getrennt ist und daher die Terminologie dieser Länder als Gleitkomma bezeichnet wird - "Gleitkomma". In der Russischen Föderation wird der Bruchteil traditionell durch ein Komma vom Ganzen getrennt, daher bezeichnet der historisch anerkannte Begriff "Gleitkommazahlen" dasselbe Konzept. Dennoch sind beide Optionen heute in der technischen Dokumentation und in der russischsprachigen Literatur durchaus akzeptabel.
Der Begriff "Gleitkommazahlen" stammt vondass die Positionsdarstellung einer Zahl ein Komma (gewöhnliche Dezimal- oder Binärzahl - Computer) darstellt, das irgendwo zwischen die Ziffern der Zeichenfolge passen kann. Diese Funktion muss gesondert besprochen werden. Das bedeutet, dass man sich die Darstellung von Gleitkommazahlen als Computerimplementierung der Exponentialschreibweise vorstellen kann. Der Vorteil der Verwendung dieser Darstellung gegenüber der Festkomma- und Integer-Format-Darstellung besteht darin, dass der Wertebereich erheblich wächst, während die relative Genauigkeit gleich bleibt.
Beispiel:
Wenn das Komma in der Zahl fest ist, schreiben Siees kann nur in einem Format vorliegen. Zum Beispiel gegeben sechs ganzzahlige Ziffern in einer Zahl und zwei Ziffern in einem Bruchteil. Das geht nur so: 123456.78. Das Fließkommazahlenformat bietet vollen Ausdrucksspielraum. Beispielsweise werden dieselben acht Ziffern angegeben. Die Aufzeichnungsmöglichkeiten können beliebig sein, wenn der Programmierer nicht an der Pflicht spart, ein zweistelliges Zusatzfeld zu erstellen, in das er die Exponenten, die normalerweise 10 sind, von 0 bis 16 und die Gesamtzahl der Stellen schreibt wird zehn sein: 8 + 2.
Einige Aufnahmeoptionen, die es ermöglichenFließkommazahlenformat: 12345678000000000000; 0,0000012345678; 123.45678; 1.2345678 und so weiter. Dieses Format hat sogar eine Geschwindigkeitseinheit! Vielmehr die Geschwindigkeit des Computersystems, die die Geschwindigkeit festlegt, mit der der Computer Operationen ausführt, bei denen es sich um eine Darstellung von Gleitkommazahlen handelt. Diese Leistung wird in Einheiten von FLOPS (Gleitkommaoperationen pro Sekunde, was als Anzahl von Operationen pro Sekunde mit Gleitkommazahlen übersetzt wird) gemessen. Diese Einheit ist die wichtigste bei der Messung der Geschwindigkeit eines Computersystems.
Struktur
Schreiben Sie eine Zahl im Fließkommaformatsollte wie folgt sein, wobei die Reihenfolge der Pflichtteile zu beachten ist, da diese Notation exponentiell ist, wobei reelle Zahlen als Mantisse und Exponent dargestellt werden. Dies ist notwendig, um zu große und zu kleine Zahlen darzustellen, sie sind viel bequemer zu lesen. Pflichtteile: zu schreibende Zahl (N), Mantisse (M), Exponentenzeichen (p) und Exponent (n). Die letzten beiden Zeichen bilden die Merkmale der Nummer. Also N = M . nP.. So werden Fließkommazahlen geschrieben. Die Beispiele werden variieren.
1. Es ist notwendig, die Zahl eine Million aufzuschreiben, um in den Nullen nicht verwirrt zu werden. 1000000 ist eine normale Schreibweise, arithmetisch. Und der Computer sieht so aus: 1.0 . 106. Das heißt, zehn hoch sechs - drei Zeichen, indie bis zu sechs Nullen passen. So werden Fest- und Gleitkommazahlen dargestellt, bei denen man sofort Unterschiede in der Schreibweise erkennt.
2. Und eine so schwierige Zahl wie 1435000000 (eine Milliarde vierhundertfünfunddreißigtausend) kann man auch einfach schreiben: 1,435 . 109, nur. Ebenso können Sie mit einem Minuszeichen eine beliebige Zahl schreiben. Hier unterscheiden sich Fest- und Gleitkommazahlen.
Aber das sind große Zahlen, was ist mit kleinen? Ja, es ist auch einfach.
3. Wie bezeichnet man zum Beispiel ein Millionstel? 0,000001 = 1,0 . 10-6. Sowohl das Schreiben der Nummer als auch ihr Ablesen werden enorm erleichtert.
4. Und schwieriger? Fünfhundertsechsundvierzigster Milliardstel: 0,000000546 = 546 . 10-9. Hier. Der Darstellungsbereich von Fließkommazahlen ist sehr groß.
Formular
Die Form der Nummer kann normal sein odernormalisiert. Normal - respektiert immer die Genauigkeit von Fließkommazahlen. Zu beachten ist, dass die Mantisse in dieser Form, unabhängig vom Vorzeichen, auf der Hälfte des Intervalls liegt: 0 1, was bedeutet, dass 0 ⩽ a < 1. Nicht in Normalform verliert die Zahl ihre Genauigkeit. Der Nachteil der Normalform einer Zahl ist, dass viele Zahlen unterschiedlich, also mehrdeutig, geschrieben werden können. Ein Beispiel für eine andere Schreibweise derselben Zahl: 0,0001 = 0,000001 . 102 = 0,00001 . 101 = 0,0001 . 100 = 0,001 . 10-1 = 0,01 . 10-2 und noch viel mehr ist möglich.Deshalb verwendet die Informatik eine andere, normierte Schreibweise, bei der die Mantisse von Dezimalzahlen einen Wert von eins (einschließlich) und damit bis zehn (nicht einschließlich) annimmt, und ebenso die Mantisse von Binärzahlen a Wert von eins (inklusive) bis zwei (nicht inklusive).
Also 1 ⩽ a < 10.Dies sind binäre Gleitkommazahlen, und diese Form der Notation erfasst jede Zahl (außer Null) auf einzigartige Weise. Aber es gibt auch einen Nachteil - die Unfähigkeit, Null in dieser Form darzustellen. Daher sieht die Informatik die Verwendung eines speziellen Zeichens (Bit) für die Zahl 0 vor. Der ganzzahlige Teil der Zahl (höhere Ordnung) der Mantisse in einer Binärzahl, mit Ausnahme von Null, in der normalisierten Form ist 1 (implizite Eins). Eine solche Notation verwendet der Standard IEEE 754. Positionsnummernsysteme, bei denen die Basis größer als zwei ist (ternäre, quaternäre und andere Systeme), haben diese Eigenschaft nicht erworben.
Reale Nummern
In der Regel sind es reelle GleitkommazahlenSie passieren einfach, da dies nicht die einzige, aber sehr bequeme Möglichkeit ist, eine reelle Zahl darzustellen, als wäre es ein Kompromiss zwischen Wertebereich und Genauigkeit. Dies ist ein Analogon zur Exponentialschreibweise, die nur in einem Computer ausgeführt wird. Eine Gleitkommazahl ist eine Menge einzelner Binärziffern, die unterteilt sind Schild (Schild), bestellen (Exponent) und Mantisse (Gottesanbeterin).Das gebräuchlichste IEEE 754-Format stellt eine Gleitkommazahl als eine Menge von Bits dar, die die Mantisse mit einem Teil codieren, den Grad mit dem anderen Teil, und das Vorzeichen der Zahl wird mit einem Bit angegeben: Null ist, wenn es positiv ist, Eins, wenn die Zahl negativ ist. Die gesamte Reihenfolge wird als ganze Zahl geschrieben (Code mit einer Verschiebung), und die Mantisse ist in normalisierter Form, ihr Bruchteil ist im Binärsystem.
Jedes Zeichen ist ein Bit, das anzeigtZeichen für vollständig Gleitkommazahl. Die Mantisse und der Exponent sind ganze Zahlen, sie bilden zusammen mit dem Vorzeichen die Darstellung einer Fließkommazahl. Die Reihenfolge kann als Exponent oder Exponent bezeichnet werden. Nicht alle reellen Zahlen können in einem Computer in ihrem genauen Wert dargestellt werden, während der Rest als ungefähre Werte dargestellt werden. Eine viel einfachere Möglichkeit besteht darin, eine reelle Zahl mit einem festen Punkt darzustellen, wobei der reelle und der ganzzahlige Teil getrennt gespeichert werden. Höchstwahrscheinlich so, dass dem ganzzahligen Teil immer X Bits und dem Bruchteil Y Bits zugewiesen werden. Aber Prozessorarchitekturen kennen diesen Weg nicht, und deshalb wird einer Fließkommazahl der Vorzug gegeben.
Zusatz
Fließkommaaddition ist hübscheinfach. Aufgrund des IEEE 754-Standards hat eine Zahl mit einfacher Genauigkeit eine große Anzahl von Bits, daher ist es am besten, direkt zu den Beispielen zu springen, und es ist besser, die kleinste Fließkommadarstellung zu nehmen. Zum Beispiel zwei Zahlen - X und Y.
Variable | Unterschreiben | Aussteller | Mantisse |
Mit | 0 | 1001 | 110 |
Und | 0 | 0111 | 000 |
Die Schritte werden sein:
a) Zahlen müssen in normalisierter Form dargestellt werden. Die verborgene Einheit wird explizit dargestellt. X = 1,110 . 22, und Y = 1,000 . 20.
b) Sie können den Additionsprozess nur fortsetzen, indem Sie die Exponenten ausgleichen, und dazu müssen Sie den Wert von Y neu schreiben. Er entspricht dem Wert der normalisierten Zahl, obwohl er tatsächlich denormalisiert ist.
Berechnen Sie die Differenz der Exponenten vom Grad 2 - 0 = 2.Verschieben Sie nun die Mantisse, um diese Änderungen zu kompensieren, dh addieren Sie 2 zum Exponenten des zweiten Terms, wodurch das Komma der verborgenen Einheit um zwei Stellen nach links verschoben wird. Es stellt sich heraus 0,0100 . 22. Dies entspricht dem vorherigen Wert von Y, also bereits Y".
c) Jetzt müssen Sie die Mantissen der Zahl X und das angepasste Y addieren.
1,110 + 0,01 = 10,0
Der Exponent ist immer noch gleich dem dargestellten Exponenten X, der 2 ist.
d) den in der vorherigen Stufe erhaltenen Betrag,die Einheit der Normalisierung verschoben, was bedeutet, dass Sie den Exponenten verschieben und die Summierung wiederholen müssen. 10.0 mit zwei Bits links vom Komma, jetzt muss die Zahl normalisiert werden, also das Komma um einen Punkt nach links verschieben und den Exponenten entsprechend um 1 erhöhen, es ergibt 1.000 . 23.
e) Es ist an der Zeit, die Fließkommazahl in ein Ein-Byte-System umzuwandeln.
Betrag | Unterschreiben | Aussteller | Mantisse |
X+Y | 0 | 1010 | 000 |
Fazit
Wie Sie sehen können, ist das Hinzufügen solcher Zahlen nicht zu großschwierig, nichts, was das Komma schwebt. Es sei denn natürlich, wir zählen die Reduktion einer Zahl mit kleinerem Exponenten auf eine Zahl mit größerem (im obigen Beispiel waren dies Y bis X), sowie die Wiederherstellung des Status quo, also die Ausgabe der Entschädigung - Verschieben des Kommas der Mantisse nach links. Wenn die Addition bereits erfolgt ist, ist eine weitere Komplikation sehr wahrscheinlich – Renormalisierung und Abschneiden von Bits, wenn ihre Anzahl nicht mit dem Format der Zahl für ihre Darstellung übereinstimmt.
Multiplikation
Das binäre Zahlensystem bietet zweidie Art und Weise, wie Gleitkommazahlen multipliziert werden. Diese Aufgabe kann durch eine Multiplikation erfüllt werden, die mit den niederwertigsten Ziffern beginnt und die mit den höchstwertigen Ziffern im Multiplikator beginnt. Beide Fälle enthalten eine Reihe von Operationen, die nacheinander Teilprodukte addieren. Diese Additionsoperationen werden durch die Bits des Multiplikators gesteuert. Das heißt, wenn in einer der Ziffern des Multiplikators eine Einheit steht, dann erhöht sich die Summe der Partialprodukte um den Multiplikanden mit der entsprechenden Verschiebung. Und wenn sich Null in die Kategorie des Multiplikators eingeschlichen hat, wird der Multiplikator nicht hinzugefügt.
Wenn nur zwei Zahlen multipliziert werden, danndie Stellen des Produkts dürfen in ihrer Zahl die in den Faktoren enthaltene Stellenzahl nicht um mehr als das Doppelte überschreiten, und das ist bei großen Zahlen sehr, sehr viel. Werden mehrere Zahlen multipliziert, läuft das Produkt Gefahr, nicht auf den Bildschirm zu passen. Daher ist die Stellenzahl jeder digitalen Maschine ziemlich endlich, was uns dazu zwingt, uns auf maximal die doppelte Stellenzahl der Addierer zu beschränken. Und wenn die Anzahl der Stellen begrenzt ist, wird unweigerlich ein Fehler in das Produkt eingeführt. Wenn das Berechnungsvolumen groß ist, überlagern sich die Fehler, und infolgedessen steigt der Gesamtfehler stark an. Hier besteht der einzige Ausweg darin, die Ergebnisse der Multiplikation zu runden, dann stellt sich der Fehler des Produkts als Vorzeichenwechsel heraus. Bei der Durchführung einer Multiplikationsoperation wird es möglich, über das Ziffernraster hinauszugehen, jedoch nur von der Seite der unteren, da für Zahlen, die in der Form mit festem Komma dargestellt werden, eine Beschränkung gilt.
Einige Erklärung
Es ist besser, von vorne anzufangen.Die gebräuchlichste Art, eine Zahl darzustellen, ist eine Ziffernfolge als Ganzzahl mit einem Komma ganz am Ende. Diese Zeichenfolge kann beliebig lang sein, und das Komma ist an der richtigen Stelle, um die Ganzzahl von ihrem Bruchteil zu trennen. Das System stellt notwendigerweise bestimmte Bedingungen bezüglich der Position des Kommas an das Format zur Darstellung einer Zahl mit einem festen Punkt. Die Exponentialschreibweise verwendet die standardmäßige normalisierte Darstellung von Zahlen. Dies ist ein q n {displaystyle aq^{n}} aqn. Hier ein {displaystyle a}a, und diese Spitze wird Mantisse genannt. Genau deswegen wurde gesagt, dass 0 ⩽ a < q. Außerdem sollte alles klar sein: n {/displaystyle n}n ist eine ganze Zahl, ein Exponent und q {/displaystyle q}zu ist auch eine ganze Zahl, die die Basis des Gegebenen istZahlensysteme (und schriftlich ist es meistens 10). Die Mantisse hinterlässt nach der ersten Ziffer, die nicht Null ist, ein Komma, aber im weiteren Verlauf werden die Datensatzinformationen über den tatsächlichen Wert der Zahl übertragen.
Eine Fließkommazahl ist sehr ähnlichist in einer verständlichen Standardschreibweise für Zahlen geschrieben, nur Exponent und Mantisse werden getrennt geschrieben. Letzteres ist auch in einem normalisierten Format - mit einem festen Punkt, der die erste signifikante Ziffer schmückt. Es ist nur so, dass das Gleitkomma hauptsächlich in Computern verwendet wird, dh in der elektronischen Darstellung, wo das System nicht dezimal, sondern binär ist, wo sogar die Mantisse durch Umstellen des Kommas denormalisiert wird - jetzt steht es vor der ersten Ziffer, was bedeutet davor und nicht danach, wo der ganzzahlige Teil grundsätzlich nicht sein darf. Zum Beispiel wird unser natives Dezimalsystem seine Neun dem Binärsystem zur vorübergehenden Verwendung leihen. Und dieser wird es mit einer Fließkomma-Mantisse wie folgt aufschreiben: +1001000...0, und dem Indikator +0...0100 dazu. Andererseits wird das Dezimalsystem nicht in der Lage sein, so komplexe Berechnungen durchzuführen, wie dies binär mit der Fließkommaform möglich ist.
lange arithmetik
Elektronische Computer habenintegrierte Softwarepakete, bei denen die für die Mantisse und den Exponenten zugewiesene Speichermenge programmgesteuert festgelegt wird und nur durch die Größe des Computerspeichers begrenzt ist. So lange sieht Arithmetik aus, also einfache Operationen mit Zahlen, die ein Computer ausführt. Es ist alles dasselbe - Subtraktion und Addition, Division und Multiplikation, elementare Funktionen und Wurzelbildung. Aber nur die Zahlen sind völlig anders, ihre Kapazität kann die Länge eines Maschinenwortes deutlich überschreiten. Die Implementierung solcher Operationen erfolgt nicht in Hardware, sondern in Software, aber grundlegende Hardware wird häufig beim Arbeiten mit Zahlen viel niedrigerer Ordnung verwendet. Es gibt auch Arithmetik, bei der die Länge der Zahlen nur durch die Speicherkapazität begrenzt ist – Arithmetik mit beliebiger Genauigkeit. Und lange Arithmetik wird in vielen Bereichen verwendet.
eines.Für das Kompilieren von Code (Prozessoren, Mikrocontroller mit geringer Bittiefe - in 10-Bit- und Acht-Bit-Bitregistern) reicht dies eindeutig nicht aus, um Informationen von Analog-zu-Digital (Analog-Digital-Wandler) zu verarbeiten, und daher können Sie nicht darauf verzichten lange arithmetik.
2. Auch für die Kryptographie wird lange Arithmetik verwendet, wo es notwendig ist, die Genauigkeit des Ergebnisses der Potenzierung oder Multiplikation bis zu 10 sicherzustellen309. Ganzzahlige Arithmetik wird modulo m verwendet, eine große natürliche Zahl und nicht unbedingt eine Primzahl.
3.Auch Software für Finanziers und Mathematiker kommt nicht ohne langes Rechnen aus, denn nur so lassen sich Rechenergebnisse auf Papier überprüfen – am Computer mit hoher Zahlengenauigkeit. Fließkomma, sie können eine beliebige Bittiefe beinhalten. Aber technische Berechnungen und die Arbeit von Wissenschaftlern erfordern selten das Eingreifen von Softwareberechnungen, da es sehr schwierig ist, Eingabedaten fehlerfrei einzugeben. Sie sind normalerweise viel größer als Rundungsergebnisse.
Kampf gegen Fehler
Bei Operationen mit Zahlen in denen FloatsKomma, es ist sehr schwierig, den Fehler der Ergebnisse zu beurteilen. Bisher wurde noch keine mathematische Theorie erfunden, die alle zufriedenstellt und die zur Lösung dieses Problems beitragen würde. Aber die Fehler mit ganzen Zahlen sind leicht abzuschätzen. Die Möglichkeit, Ungenauigkeiten auszumerzen, liegt an der Oberfläche – verwenden Sie einfach nur Zahlen mit festem Komma. Beispielsweise sind Finanzprogramme genau auf diesem Prinzip aufgebaut. Dort ist es allerdings einfacher: Die benötigte Anzahl der Nachkommastellen ist im Voraus bekannt.
Andere Anwendungen sind möglicherweise nicht darauf beschränkt,weil es unmöglich ist, mit sehr kleinen oder sehr großen Zahlen zu arbeiten. Daher wird beim Arbeiten immer berücksichtigt, dass Ungenauigkeiten möglich sind und daher bei der Anzeige der Ergebnisse gerundet werden muss. Darüber hinaus ist die automatische Rundung oft eine unzureichende Aktion, und daher wird die Rundung absichtlich eingestellt. Die Vergleichsoperation ist in dieser Hinsicht sehr gefährlich. Hier ist es sogar äußerst schwierig, die Größe zukünftiger Fehler abzuschätzen.