Artikel

4.5: Dezimaloperationen (Teil 1)


Fähigkeiten zum Entwickeln

  • Dezimalzahlen addieren und subtrahieren
  • Dezimalzahlen multiplizieren
  • Dezimalstellen dividieren
  • Verwenden Sie Dezimalzahlen in Geldanwendungen

sei vorbereitet!

Bevor Sie beginnen, machen Sie dieses Bereitschaftsquiz.

  1. Vereinfachen Sie (dfrac{70}{100}). Wenn Sie dieses Problem übersehen haben, lesen Sie Beispiel 4.3.1.
  2. Multiplizieren Sie (dfrac{3}{10} cdot dfrac{9}{10}). Wenn Sie dieses Problem übersehen haben, lesen Sie Beispiel 4.3.7.
  3. Teilen Sie −36 ÷ (−9). Wenn Sie dieses Problem übersehen haben, lesen Sie Beispiel 3.7.3.

Dezimalstellen hinzufügen und subtrahieren

Schauen wir uns noch einmal die Mittagsbestellung vom Anfang von Decimals an, und beachten wir diesmal, wie die Zahlen addiert wurden.

[egin{split} & $3,45 quad Sandwich & $1,25 quad Wasser + & $0,33 quad Steuer hline & $5,03 quad Total end{split}]

Alle drei Artikel (Sandwich, Wasser, Steuern) wurden in Dollar und Cent angegeben, also haben wir die Dollars unter die Dollars und die Cents unter die Cents mit den Dezimalstellen dazwischen aufgereiht. Dann haben wir einfach jede Spalte hinzugefügt, als ob wir ganze Zahlen addieren würden. Indem wir Dezimalzahlen auf diese Weise aneinanderreihen, können wir die entsprechenden Stellenwerte wie bei ganzen Zahlen addieren oder subtrahieren.

WIE MAN: DEZIMALE HINZUFÜGEN ODER SUBTRAHIEREN

Schritt 1. Schreiben Sie die Zahlen vertikal, so dass die Dezimalpunkte ausgerichtet sind.

Schritt 2. Verwenden Sie nach Bedarf Nullen als Platzhalter.

Schritt 3. Addieren oder subtrahieren Sie die Zahlen, als wären es ganze Zahlen. Setzen Sie dann die Dezimalzahl in der Antwort unter die Dezimalstellen in den angegebenen Zahlen.

Beispiel (PageIndex{1}):

Hinzufügen: 3,7 + 12,4.

Lösung

Schreiben Sie die Zahlen vertikal, so dass die Dezimalpunkte ausgerichtet sind.$$egin{split} 3.&7 + 12.&4 hline end{split}$$
Platzhalter werden nicht benötigt, da beide Zahlen gleich viele Nachkommastellen haben.
Addiere die Zahlen, als wären es ganze Zahlen. Setzen Sie dann die Dezimalzahl in der Antwort unter die Dezimalstellen in den angegebenen Zahlen.$$egin{split} stackrel{1}{3}.&7 + 12.&4 hline 16.&1 end{split}$$

Übung (PageIndex{1}):

Hinzufügen: 5,7 + 11,9.

Antworten

(17.6)

Übung (PageIndex{2}):

Hinzufügen: 18.32 + 14.79.

Antworten

(13.11)

Beispiel (PageIndex{2}):

Hinzufügen: 23,5 + 41,38.

Lösung

Schreiben Sie die Zahlen vertikal, sodass die Dezimalpunkte übereinander liegen$$egin{split} 23.&5 + 41.&38 hline end{split}$$
Platziere 0 als Platzhalter hinter der 5 in 23.5, sodass beide Zahlen zwei Nachkommastellen haben.$$egin{split} 23.&5 extcolor{red}{0} + 41.&38 hline end{split}$$
Addiere die Zahlen, als wären es ganze Zahlen. Setzen Sie dann die Dezimalzahl in der Antwort unter die Dezimalstellen in den angegebenen Zahlen.$$egin{split} 23.&50 + 41.&38 hline 64.&88 end{split}$$

Übung (PageIndex{3}):

Hinzufügen: 4,8 + 11,69.

Antworten

(16.49)

Übung (PageIndex{4}):

Hinzufügen: 5.123 + 18.47.

Antworten

(23.593)

Wie viel Wechselgeld würden Sie bekommen, wenn Sie der Kassiererin einen 20-Dollar-Schein für einen Einkauf von 14,65 USD aushändigen? Die Schritte zur Berechnung zeigen wir im nächsten Beispiel.

Beispiel (PageIndex{3}):

Subtrahieren: 20 − 14,65.

Lösung

Schreiben Sie die Zahlen vertikal, so dass die Dezimalpunkte ausgerichtet sind. Denken Sie daran, dass 20 eine ganze Zahl ist, also setzen Sie den Dezimalpunkt nach der 0.$$egin{split} 20.& - 14.&65 hline end{split}$$
Setzen Sie bei 20 zwei Nullen nach dem Komma als Platzhalter, damit beide Zahlen zwei Nachkommastellen haben.

[egin{split} 20.& extcolor{red}{00} - 14.&65 hline end{split}]

Subtrahiere die Zahlen, als wären es ganze Zahlen. Setzen Sie dann die Dezimalzahl in der Antwort unter die Dezimalstellen in den angegebenen Zahlen.$$egin{split} stackrel{1}{cancel{2}} stackrel{stackrel{9}{cancel{10}}}{cancel{0}} &.stackrel{stackrel{ 9}{Abbrechen{10}}}{Abbrechen{0}} stackrel{stackrel{9}{Abbrechen{10}}}{Abbrechen{0}} - 1; ; 4; ; &.; 6; ; 5 hZeile 5; ; &.; 3; ; 5end{split}$$

Übung (PageIndex{5}):

Subtrahieren: 10 − 9,58.

Antworten

(0.42)

Übung (PageIndex{6}):

Subtrahieren: 50 − 37,42.

Antworten

(12.58)

Beispiel (PageIndex{4}):

Subtrahieren: 2,51 − 7,4.

Lösung

Wenn wir 7,4 von 2,51 subtrahieren, ist die Antwort negativ, da 7,4 > 2,51. Um leicht zu subtrahieren, können wir 2,51 von 7,4 subtrahieren. Dann setzen wir das negative Vorzeichen in das Ergebnis.

Schreiben Sie die Zahlen vertikal, so dass die Dezimalpunkte ausgerichtet sind.$$egin{split} 7.&4 - 2.&51 hline end{split}$$
Setzen Sie als Platzhalter eine Null nach der 4 in 7.4, sodass beide Zahlen zwei Nachkommastellen haben.$$egin{split} 7.&4 extcolor{red}{0} - 2.&51 hline end{split}$$
Subtrahiere und setze die Dezimalzahl in die Antwort ein.$$egin{split} 7.&40 - 2.&51 hline 4.&89 end{split}$$
Denken Sie daran, dass wir wirklich 2,51 − 7,4 subtrahieren, sodass die Antwort negativ ist.2.51 − 7.4 = − 4.89

Übung (PageIndex{7}):

Subtrahieren: 4,77 − 6,3.

Antworten

(-1.53)

Übung (PageIndex{8}):

Subtrahieren: 8.12 − 11.7.

Antworten

(-3.58)

Dezimalstellen multiplizieren

Das Multiplizieren von Dezimalzahlen ist dem Multiplizieren ganzer Zahlen sehr ähnlich – wir müssen nur bestimmen, wo das Dezimalkomma platziert werden soll. Das Verfahren zum Multiplizieren von Dezimalzahlen wird sinnvoll, wenn wir zuerst das Multiplizieren von Brüchen betrachten.

Weißt du noch, wie man Brüche multipliziert? Um Brüche zu multiplizieren, multiplizieren Sie die Zähler und dann die Nenner. Sehen wir uns also an, was wir als Produkt von Dezimalzahlen erhalten würden, wenn wir sie zuerst in Brüche umwandeln. In Tabelle 5.22 werden wir zwei Beispiele nebeneinander durchführen. Suchen Sie nach einem Muster.

Tabelle (PageIndex{1})
EINB
(0.3)(0.7)(0.2)(0.46)
In Brüche umwandeln.$$left(dfrac{3}{10} ight) left(dfrac{7}{10} ight)$$$$left(dfrac{2}{10} ight) left(dfrac{46}{100} ight)$$
Multiplizieren.$$dfrac{21}{100}$$$$dfrac{92}{1000}$$
Zurück in Dezimalzahlen umrechnen0.210.092

Es gibt ein Muster, das wir verwenden können. In A haben wir zwei Zahlen mit jeweils einer Nachkommastelle multipliziert, und das Produkt hatte zwei Nachkommastellen. In B haben wir eine Zahl mit einer Nachkommastelle mit einer Zahl mit zwei Nachkommastellen multipliziert, und das Produkt hatte drei Nachkommastellen.

Wie viele Nachkommastellen würden Sie für das Produkt von (0,01)(0,004) erwarten? Wenn Sie „fünf“ gesagt haben, haben Sie das Muster erkannt. Wenn wir zwei Zahlen mit Dezimalstellen multiplizieren, zählen wir alle Nachkommastellen in den Faktoren – in diesem Fall zwei plus drei – um die Anzahl der Dezimalstellen im Produkt zu erhalten – in diesem Fall fünf.

Sobald wir wissen, wie man die Anzahl der Nachkommastellen bestimmt, können wir Dezimalzahlen multiplizieren, ohne sie zuerst in Brüche umzuwandeln. Die Anzahl der Nachkommastellen des Produkts ist die Summe der Nachkommastellen der Faktoren.

Die Regeln zur Multiplikation positiver und negativer Zahlen gelten natürlich auch für Dezimalzahlen.

Definition: Zwei Zahlen multiplizieren

Wenn Sie zwei Zahlen multiplizieren,

  • wenn ihre Vorzeichen gleich sind, ist das Produkt positiv.
  • bei unterschiedlichen Vorzeichen ist das Produkt negativ.

Wenn Sie Dezimalzahlen mit Vorzeichen multiplizieren, bestimmen Sie zuerst das Vorzeichen des Produkts und multiplizieren Sie dann so, als ob beide Zahlen positiv wären. Schreiben Sie abschließend das Produkt mit dem entsprechenden Zeichen.

WIE MAN: DEZIMALZAHLEN MULTIPLIZIERT

Schritt 1. Bestimmen Sie das Vorzeichen des Produkts.

Schritt 2. Schreiben Sie die Zahlen im vertikalen Format und richten Sie die Zahlen rechts aus.

Schritt 3. Multiplizieren Sie die Zahlen, als ob sie ganze Zahlen wären, und ignorieren Sie vorübergehend die Dezimalpunkte.

Schritt 4. Setzen Sie den Dezimalpunkt. Die Anzahl der Nachkommastellen des Produkts ist die Summe der Nachkommastellen der Faktoren. Verwenden Sie bei Bedarf Nullen als Platzhalter.

Schritt 5. Schreiben Sie das Produkt mit dem entsprechenden Zeichen.

Beispiel (PageIndex{5}):

Multiplizieren: (3,9)(4.075).

Lösung

Bestimmen Sie das Vorzeichen des Produkts. Die Zeichen sind die gleichen.Das Produkt wird positiv sein.
Schreiben Sie die Zahlen im Hochformat und richten Sie die Zahlen rechts aus.$$egin{split} 4.07&5 imes 3.&9 hline end{split}$$
Multiplizieren Sie die Zahlen, als wären es ganze Zahlen, und ignorieren Sie vorübergehend die Dezimalpunkte.$$egin{split} 4.07&5 imes 3.&9 hline 3667&5 12225&; hline 15892&5 end{split}$$
Setzen Sie den Dezimalpunkt. Addieren Sie die Anzahl der Dezimalstellen in den Faktoren (1 + 3). Setzen Sie den Dezimalpunkt 4 Stellen von rechts.$$egin{split} 4.07&5 quad extcolor{blau}{3; Plätze} imes 3.&9 quad extcolor{blau}{1; place} hline 3667&5 12225&; hline 15892&5 quad extcolor{blau}{4; Orte} end{split}$$
Das Produkt ist positiv.(3.9)(4.075) = 15.8925

Übung (PageIndex{9}):

Multiplizieren: 4,5(6.107).

Antworten

(27.4815)

Übung (PageIndex{10}):

Multiplizieren: 10,79 (8,12).

Antworten

(87.6148)

Beispiel (PageIndex{6}):

Multiplizieren: (−8.2)(5.19).

Lösung

Die Zeichen sind unterschiedlich.Das Produkt wird negativ sein.
Schreiben Sie im Hochformat und richten Sie die Zahlen rechts aus.$$egin{split} 5.&19 imes 8.&2 hline end{split}$$
Multiplizieren.$$egin{split} 5.&19 imes 8.&2 hline 10&38 415&2; hline 425&58 end{split}$$
$$egin{split} 5.&19 imes 8.&2 hline 10&38 415&2; hline 42.5&58 end{split}$$
Das Produkt ist negativ.(−8.2)(5.19) = −42.558

Übung (PageIndex{11}):

Multiplizieren: (4,63) (−2,9).

Antworten

(-13.427)

Übung (PageIndex{12}):

Multiplizieren: (−7.78)(4.9).

Antworten

(-38.122)

Im nächsten Beispiel müssen wir mehrere Platzhalter-Nullen hinzufügen, um den Dezimalpunkt richtig zu platzieren.

Beispiel (PageIndex{7}):

Multiplizieren: (0,03)(0,045).

Lösung

Das Produkt ist positiv.(0.03)(0.045)
Schreiben Sie im Hochformat und richten Sie die Zahlen rechts aus.$$egin{split} 0.04&5 imes 0.0&3 hline end{split}$$
Multiplizieren.$$egin{split} 0.04&5 mal 0.0&3 hline 13&5 end{split}$$

Fügen Sie nach Bedarf Nullen hinzu, um die 5 Stellen zu erhalten.

Das Produkt ist positiv.(0.03)(0.045) = 0.00135

Übung (PageIndex{13}):

Multiplizieren: (0,04)(0,087).

Antworten

(0.00348)

Übung (PageIndex{14}):

Multiplizieren: (0,09)(0,067).

Antworten

(0.00603)

Multiplizieren mit Potenzen von 10

In vielen Bereichen, insbesondere in den Naturwissenschaften, ist es üblich, Dezimalzahlen mit Zehnerpotenzen zu multiplizieren. Mal sehen, was passiert, wenn wir 1,9436 mit einigen Zehnerpotenzen multiplizieren.

Betrachten Sie die Ergebnisse ohne die letzten Nullen. Bemerken Sie ein Muster?

[egin{split} 1,9436(10) & = 19,436 1,9436(100) & = 194,36 1,9436(1000) & = 1943,6 end{split}]

Die Anzahl der Stellen, die das Komma verschoben hat, entspricht der Anzahl der Nullen in Zehnerpotenzen. Tabelle 5.26 fasst die Ergebnisse zusammen.

Tabelle (PageIndex{2})
MalAnzahl NullenAnzahl der Stellen Dezimalpunkt bewegt
1011 Stelle rechts
10022 Plätze rechts
1,00033 Plätze rechts
10,00044 Plätze rechts

Wir können dieses Muster als Abkürzung verwenden, um mit Zehnerpotenzen zu multiplizieren, anstatt mit dem vertikalen Format zu multiplizieren. Wir können die Nullen in Zehnerpotenzen zählen und dann den Dezimalpunkt um dieselbe Stelle nach rechts verschieben. Um beispielsweise 45,86 mit 100 zu multiplizieren, verschieben Sie das Komma um 2 Stellen nach rechts.

Manchmal, wenn wir den Dezimalpunkt verschieben müssen, gibt es nicht genügend Dezimalstellen. In diesem Fall verwenden wir Nullen als Platzhalter. Lassen Sie uns zum Beispiel 2,4 mit 100 multiplizieren. Wir müssen den Dezimalpunkt um 2 Stellen nach rechts verschieben. Da rechts vom Komma nur eine Ziffer steht, müssen wir an der Hundertstelstelle eine 0 schreiben.

WIE MAN: EIN DEZIMAL MIT EINER KRAFT VON 10 . MULTIPLIZIERT

Schritt 1. Verschieben Sie den Dezimalpunkt um die gleiche Anzahl Stellen nach rechts wie die Anzahl der Nullen in Zehnerpotenzen.

Schritt 2. Schreiben Sie bei Bedarf Nullen am Ende der Zahl als Platzhalter.

Beispiel (PageIndex{8}):

Multiplizieren Sie 5,63 mit Faktoren von (a) 10 (b) 100 (c) 1000.

Lösung

Wenn wir uns die Anzahl der Nullen im Vielfachen von zehn ansehen, sehen wir, wie viele Stellen wir brauchen, um die Dezimalstelle nach rechts zu verschieben.

(a) 5,63(10)

Es gibt 1 Null in 10, also verschieben Sie den Dezimalpunkt um 1 Stelle nach rechts.
56.3

(b) 5,63(100)

Es gibt 2 Nullen in 100, also verschieben Sie das Komma um 2 Stellen nach rechts.
563

(c) 5,63(1000)

Es gibt 3 Nullen in 1000, also verschieben Sie das Komma um 3 Stellen nach rechts.
Am Ende muss eine Null hinzugefügt werden.5,630

Übung (PageIndex{15}):

Multiplizieren Sie 2,58 mit Faktoren von (a) 10 (b) 100 (c) 1000.

Antworte a

(25.8)

Antwort b

(258)

Antwort c

(2,580)

Übung (PageIndex{16}):

14,2 mit Faktoren von (a) 10 (b) 100 (c) 1000 multiplizieren.

Antworte a

(142)

Antwort b

(1,420)

Antwort c

(14,200)


Multiplizieren und Dividieren mit Dezimalstellen

Angenommen, Sie multiplizieren eine Dezimalzahl mit einer ganzen Zahl, sagen wir 0,12 &mal 3 .

Dies entspricht dem dreimaligen Addieren der Dezimalzahl: 0,12 + 0,12 + 0,12 . Das kann man sich so vorstellen: Wenn drei Freunde jeweils 12 Cent haben, haben sie zusammen 36 Cent.

Es ist etwas schwieriger, wenn beide Zahlen Dezimalzahlen sind. Nehmen Sie das Problem 0,12 & mal 0,9 . Die Zahl 0,9 ist kleiner als 1, was bedeutet es also, die erste Dezimalstelle 0,9 mal zu addieren?

Denken Sie daran, dass Dezimalzahlen nur eine andere Art sind, Brüche mit Zehnerpotenzen im Nenner zu schreiben. Das Multiplizieren einer Zahl mit 0,9 entspricht dem Finden von neun Zehnteln dieser Zahl. Sie könnten das Problem also 0,12 & mal 0,9 umschreiben als

Dann würden Sie Zähler und Nenner multiplizieren, um 108 1000 zu erhalten. Dieser Bruch entspricht der Dezimalzahl 0,108.

Natürlich müssen Sie nicht jedes Mal in Bruchnotation konvertieren.

Standardalgorithmus zum Multiplizieren von Dezimalzahlen

Zuerst multiplizieren Sie einfach die Zahlen, als wären sie ganze Zahlen. (Die Dezimalpunkte nicht aneinanderreihen!)

Zählen Sie dann die Gesamtzahl der Stellen rechts vom Dezimalpunkt in BEIDEN Zahlen, die Sie multiplizieren. Nennen wir diese Zahl n . Beginnen Sie in Ihrer Antwort von rechts und bewegen Sie sich n Stellen nach links und setzen Sie ein Dezimalkomma.

Schritt 1: Multiplizieren Sie die Zahlen und ignorieren Sie das Komma.

Schritt 2: In 3.1 steht 1 Stelle rechts vom Komma. In 5.06 gibt es 2. Da 1 + 2 = 3, bewegen Sie sich in Ihrer Antwort in 3 Dezimalstellen von rechts.

Sie können überprüfen, ob dies angemessen ist. 3.1 ist nahe 3 und 5.06 ist nahe 5, daher erwarten wir eine Antwort nahe 15. Und wir haben einen!

Warum funktioniert das? Auch hier multiplizieren Sie in Wirklichkeit Brüche. 3.1 bedeutet 31 10 und 5.06 bedeutet 506 100 . Wenn wir diese Brüche multiplizieren, erhalten wir 10 x 100 = 1000 im Nenner, also wird die endgültige Antwort in Tausendstel ausgedrückt. Wenn Sie die Gesamtzahl der Stellen rechts von den Dezimalstellen in den Faktoren addieren, multiplizieren Sie in Wirklichkeit Zehnerpotenzen in den Nennern der Brüche.


Hexadezimalsystem (Hex-System)

Das Hexadezimalsystem (kurz hex), verwendet die Zahl 16 als Basis (Radix). Als Zahlensystem zur Basis 16 verwendet es 16 Symbole. Dies sind die 10 Dezimalstellen (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) und die ersten sechs Buchstaben des englischen Alphabets (A, B, C, D, E, F). Die Buchstaben werden verwendet, weil die Werte 10, 11, 12, 13, 14 und 15 jeweils in einem einzigen Symbol dargestellt werden müssen.

Hex wird in Mathematik und Informationstechnologien verwendet, um Binärzahlen einfacher darzustellen. Jede Hex-Ziffer repräsentiert vier Binärziffern, daher ist Hex eine Sprache, um Binär in abgekürzter Form zu schreiben.

Vier Binärziffern (auch Nibble genannt) bilden ein halbes Byte. Das heißt, ein Byte kann Binärwerte von 0000 0000 bis 1111 1111 tragen. In Hex lassen sich diese freundlicher darstellen, von 00 bis FF.

In der HTML-Programmierung können Farben durch eine 6-stellige Hexadezimalzahl dargestellt werden: FFFFFF steht für Weiß, während 000000 für Schwarz steht.

So konvertieren Sie Dezimal in Hex

Dezimal in hexadezimale Konvertierung kann durch Anwenden des wiederholten Divisions- und Restalgorithmus erreicht werden. Einfach ausgedrückt wird die Dezimalzahl wiederholt durch die Wurzel 16 geteilt. Zwischen diesen Divisionen ergeben die Reste das Hex-Äquivalent in umgekehrter Reihenfolge.

So konvertieren Sie Schritt für Schritt Dezimal in Hex:

  • Schritt 1: Wenn die angegebene Dezimalzahl kleiner als 16 ist, ist das Hex-Äquivalent gleich. Denken Sie daran, dass die Buchstaben A, B, C, D, E und F für die Werte 10, 11, 12, 13, 14 und 15 verwendet werden, entsprechend umrechnen. Die Dezimalzahl 15 ist beispielsweise F in Hex.
  • Schritt 2: Wenn die angegebene Dezimalzahl 16 oder größer ist, teilen Sie die Zahl durch 16.
  • Schritt 3: Notieren Sie den Rest.
  • Schritt 4: Teilen Sie den Teil vor dem Komma Ihres Quotienten wieder durch 16. Schreibe den Rest auf.
  • Schritt 5: Fahren Sie mit dem Dividieren durch 16 fort und notieren Sie die Reste, bis die letzte Dezimalstelle, die Ihnen übrig bleibt, kleiner als 16 ist.
  • Schritt 6: Wenn die letzte Dezimalstelle kleiner als 16 ist, ist der Quotient kleiner als 0 und der Rest ist die Stelle selbst.
  • Schritt 7: Der letzte Rest, den Sie erhalten, ist die höchstwertige Ziffer Ihres Hex-Werts, während der erste Rest aus Schritt 3 die niedrigstwertige Ziffer ist. Schreibt man also die Reste in umgekehrter Reihenfolge - beginnend mit der höchstwertigen Ziffer ganz unten - erreicht man den Hex-Wert der angegebenen Dezimalzahl.

Wenden wir diese Schritte nun beispielsweise auf die Dezimalzahl (501) an.10


Neue Sprachen und sprachspezifische Verbesserungen

Alle Sprachen

  • Die Option -fshow-column ist jetzt standardmäßig aktiviert. Das bedeutet, dass Fehlermeldungen jetzt eine Spalte zugeordnet ist.
  • Die Kompilierung von Programmen, die stark diskriminierte Datensatztypen mit Variantenteilen verwenden, wurde beschleunigt und erzeugt kompakteren Code.
  • Das Stack-Checking funktioniert jetzt auf den meisten Plattformen einigermaßen gut. In bestimmten Fällen werden Stack-Überläufe möglicherweise immer noch nicht erkannt, aber in diesen Fällen wird eine Warnung zur Kompilierzeit ausgegeben.

C-Familie

  • Wenn ein in einer #include-Direktive benannter Header nicht gefunden wird, wird der Compiler sofort beendet. Dies vermeidet eine Kaskade von Fehlern, die sich aus Deklarationen ergeben, von denen erwartet wird, dass sie in diesem Header fehlen.
  • Eine neue eingebaute Funktion __builtin_unreachable() wurde hinzugefügt, die dem Compiler mitteilt, dass die Steuerung diesen Punkt nie erreichen wird. Es kann nach asm-Anweisungen verwendet werden, die durch die Übertragung der Kontrolle an eine andere Stelle und an anderen Stellen, die als unerreichbar bekannt sind, enden.
  • Die Option -Wlogical-op warnt jetzt vor logischen Ausdrücken wie (c == 1 && c == 2) und (c != 1 || c != 2) , die wahrscheinlich Fehler sind. Diese Option ist standardmäßig deaktiviert.
  • Eine asm goto-Funktion wurde hinzugefügt, um asm-Anweisungen zuzulassen, die zu C-Labels springen.
  • C++0x-Roh-Strings werden für C++ und für C mit -std=gnu99 unterstützt.
  • Das veraltete Attribut nimmt jetzt ein optionales String-Argument an, zum Beispiel __attribute__((deprecated("text string"))) , das zusammen mit der veralteten Warnung ausgegeben wird.
  • Die Option -Wenum-compare, die beim Vergleichen von Werten verschiedener Aufzählungstypen warnt, funktioniert jetzt für C. Sie funktionierte früher nur für C++. Diese Warnung wird von -Wall aktiviert. Es kann vermieden werden, indem eine Typumwandlung verwendet wird.
  • Die Option -Wcast-qual warnt jetzt vor Casts, die unsicher sind, da sie die Verletzung der const-Korrektheit ohne weitere Warnungen zulassen. Es warnt insbesondere vor Fällen, in denen ein Qualifizierer hinzugefügt wird, wenn alle niedrigeren Typen nicht const sind. Es warnt beispielsweise vor einer Umwandlung von char ** in const char ** .
  • Die Option -Wc++-compat wurde erheblich verbessert. Es gibt neue Warnungen für:
    • Verwenden von reservierten C++-Operatornamen als Bezeichner.
    • Konvertierungen in Enumerationstypen ohne explizite Umwandlungen.
    • Verwenden von va_arg mit einem Enum-Typ.
    • Verwenden verschiedener Aufzählungstypen in den beiden Zweigen von ?: .
    • Verwenden von ++ oder -- für eine Variable vom Typ Aufzählung.
    • Verwenden desselben Namens sowohl für ein struct-, union- oder enum-Tag als auch für ein typedef, es sei denn, typedef bezieht sich auf den gekennzeichneten Typ selbst.
    • Verwenden einer Struktur, Union oder Aufzählung, die in einer anderen Struktur oder Union definiert ist.
    • Ein mit typedef definiertes Strukturfeld, wenn es ein Feld in der Struktur gibt, oder eine einschließende Struktur, deren Name der typedef-Name ist.
    • Doppelte Definitionen im Dateibereich.
    • Nicht initialisierte const-Variablen.
    • Eine globale Variable mit einem anonymen struct-, union- oder enum-Typ.
    • Verwenden einer String-Konstanten zum Initialisieren eines char-Arrays, dessen Größe der Länge des Strings entspricht.
    • Verbesserte experimentelle Unterstützung für den kommenden C++0x ISO C++-Standard, einschließlich Unterstützung für Rohstrings, Lambda-Ausdrücke und explizite Typkonvertierungsoperatoren.
    • Beim Drucken des Namens einer Klassen-Template-Spezialisierung lässt G++ jetzt alle Template-Argumente weg, die von Standard-Template-Argumenten stammen. Dieses Verhalten (und das Pretty-Printing von Funktions-Template-Spezialisierungen als Template-Signatur und -Argumente) kann mit der Option -fno-pretty-templates deaktiviert werden.
    • Die Zugriffssteuerung wird jetzt auf typedef-Namen angewendet, die in einer Vorlage verwendet werden, was dazu führen kann, dass G++ falsch formatierten Code ablehnt, der von früheren Versionen akzeptiert wurde. Die Option -fno-access-control kann als vorübergehende Problemumgehung verwendet werden, bis der Code korrigiert ist.
    • Die Kompilierungszeit für Code, der Vorlagen verwendet, sollte jetzt nicht mehr quadratisch, sondern linear mit der Anzahl der Instanziierungen skaliert werden, da Vorlageninstanzen jetzt mithilfe von Hash-Tabellen nachgeschlagen werden.
    • Deklarationen von Funktionen, die wie eingebaute Deklarationen von Bibliotheksfunktionen aussehen, gelten nur dann als erneute Deklarationen, wenn sie mit extern "C" deklariert werden. Dies kann zu Problemen mit Code führen, der extern "C" bei handgeschriebenen Deklarationen von C-Bibliotheksfunktionen wie abort oder memcpy weglässt. Ein solcher Code ist falsch formatiert, wurde aber von früheren Versionen akzeptiert.
    • Diagnose, die sich früher über die Übergabe von Nicht-POD-Typen an . oder über die Deklaration einer Nicht-POD-Variablen hinweg zu springen, prüfen nun nach C++0x eher auf Trivialität als auf PODness.
    • Im C++0x-Modus sind nun lokale und anonyme Klassen als Template-Argumente und in Deklarationen von Variablen und Funktionen mit Linkage erlaubt, sofern auch eine solche Deklaration definiert ist (DR 757).
    • Labels dürfen nun Attribute haben, wie es in C seit einiger Zeit erlaubt ist. Dies ist nur erlaubt, wenn der Labeldefinition und dem Attributspezifizierer ein Semikolon folgt&mdashi.d.h. das Label gilt für eine leere Anweisung. Das einzige nützliche Attribut für ein Label ist unbenutzt.
    • G++ implementiert jetzt DR 176. Zuvor unterstützte G++ nicht die Verwendung des injizierten Klassennamens einer Template-Basisklasse als Typnamen, und die Suche nach dem Namen fand die Deklaration des Templates im einschließenden Gültigkeitsbereich. Jetzt findet die Suche nach dem Namen den injizierten Klassennamen, der entweder als Typ oder als Vorlage verwendet werden kann, je nachdem, ob dem Namen eine Vorlagenargumentliste folgt oder nicht. Infolge dieser Änderung können einige Codes, die zuvor akzeptiert wurden, falsch formatiert sein, weil
      1. Auf den injizierten Klassennamen kann nicht zugegriffen werden, da er von einer privaten Basis stammt, oder
      2. Der injizierte Klassenname kann nicht als Argument für einen Vorlagenvorlagenparameter verwendet werden.
      In beiden Fällen kann der Code korrigiert werden, indem ein nested-name-specifier hinzugefügt wird, um die Vorlage explizit zu benennen. Ersteres kann mit -fno-access-control umgangen werden, Zweites wird nur mit -pedantic abgewiesen.
    • Ein neuer Standard-Mangling für SIMD-Vektortypen wurde hinzugefügt, um Namenskonflikte auf Systemen mit Vektoren unterschiedlicher Länge zu vermeiden. Standardmäßig verwendet der Compiler weiterhin das alte Mangling, gibt aber Aliase mit dem neuen Mangling auf Zielen aus, die starke Aliase unterstützen. Benutzer können mit -fabi-version=4 oder -fabi-version=0 komplett auf die neue Mangelhaftigkeit umstellen. -Wabi warnt jetzt vor Code, der das alte Mangling verwendet.
    • Die Befehlszeilenoption -ftemplate-depth-N wird jetzt als -ftemplate-depth=N geschrieben und die alte Form ist veraltet.
    • Konvertierungen zwischen NULL- und Nicht-Zeiger-Typen werden jetzt standardmäßig gewarnt. Die neue Option -Wno-conversion-null deaktiviert diese Warnungen. Zuvor waren diese Warnungen nur verfügbar, wenn explizit -Wconversion verwendet wurde.

    Laufzeitbibliothek (libstdc++)

    • Verbesserte experimentelle Unterstützung für den kommenden ISO C++-Standard C++0x, einschließlich:
      • Unterstützung für <future>, <functional> und <random>.
      • Bestehende Einrichtungen nutzen jetzt explizite Operatoren und die neu implementierten Kernfunktionen von C++0x.
      • Der Header <cstdatomic> wurde in <atomic> umbenannt.

      Ein experimenteller Profilmodus wurde hinzugefügt. Dies ist eine Implementierung vieler C++-Standardbibliothekskonstrukte mit einer zusätzlichen Analyseschicht, die Ratschläge zur Leistungsverbesserung basierend auf der Erkennung suboptimaler Nutzungsmuster gibt. Beispielsweise,

      Bei Instrumentierung über den Profilmodus können Vorschläge zur Anfangsgröße und Auswahl des verwendeten Containers wie folgt zurückgegeben werden:

      Diese Konstrukte können stückweise durch die normalen libstdc++-Konstrukte ersetzt werden, oder alle vorhandenen Komponenten können über das Makro -D_GLIBCXX_PROFILE transformiert werden.

      Fortran

      • Das COMMON-Standard-Padding wurde geändert &ndash anstatt das Padding vor einer Variablen hinzuzufügen, wird es jetzt nachträglich hinzugefügt, was die Kompatibilität mit anderen Herstellern erhöht und in einigen Fällen hilft, die korrekte Ausgabe zu erhalten. Vgl. auch die Option -falign-commons (in 4.4 hinzugefügt).
      • Die Option -finit-real= unterstützt nun auch den Wert snan für die Signalisierung not-a-number um wirksam zu sein, zusätzlich muss Trapping aktiviert werden (z. Hinweis: Kompilierzeitoptimierungen können ein signalisierendes NaN in ein leises verwandeln.
      • Die neue Option -fcheck= wurde mit den Optionen bounds , array-temps , do , pointer und recursive hinzugefügt. Die Optionen bounds und array-temps entsprechen -fbounds-check und -fcheck-array-temporaries . Die Option do prüft auf ungültige Modifikationen von Schleifeniterationsvariablen, und die rekursive Option prüft auf rekursive Aufrufe von Unterprogrammen/Funktionen, die nicht als rekursiv markiert sind. Bei Pointer-Pointer-Assoziationsprüfungen werden in Aufrufen jedoch weder undefinierte Pointer noch Pointer in Ausdrücken behandelt. Die Verwendung von -fcheck=all aktiviert alle diese Laufzeitprüfungen.
      • Die Laufzeitüberprüfung -fcheck=bounds warnt jetzt vor ungültigen Stringlängen von Zeichendummy-Argumenten. Darüber hinaus wurden weitere Prüfungen zur Kompilierzeit hinzugefügt.
      • Die neue Option -fno-protect-parens wurde hinzugefügt, wenn sie gesetzt ist, kann der Compiler REAL- und COMPLEX-Ausdrücke ohne Rücksicht auf Klammern neu anordnen.
      • GNU Fortran verlinkt nicht mehr auf libgfortranbegin . MAIN__ (Assemblersymbolname) ist nach wie vor das eigentliche Fortran-Hauptprogramm, das von der main-Funktion aufgerufen wird. main wird jetzt jedoch generiert und in dieselbe Objektdatei wie MAIN__ eingefügt. Vorläufig existiert libgfortranbegin noch aus Gründen der Abwärtskompatibilität. Einzelheiten finden Sie im neuen Kapitel zur gemischtsprachigen Programmierung im Handbuch.
      • Die I/O-Bibliothek wurde für Leistung und saubereren Code umstrukturiert.
      • Array-Zuweisungen und WHERE werden jetzt parallel ausgeführt, wenn OpenMPs WORKSHARE verwendet wird.
      • Die experimentelle Option -fwhole-file wurde hinzugefügt. Die Option ermöglicht die Überprüfung der gesamten Datei von Prozedurargumenten und ermöglicht bessere Optimierungen. Es kann auch mit -fwhole-program verwendet werden, das jetzt auch in gfortran unterstützt wird.
      • Weitere mathematische Funktionen von Fortran 2003 und Fortran 2008 können jetzt als Initialisierungsausdrücke verwendet werden.
      • Einige erweiterte Attribute wie STDCALL werden jetzt über die GCC$-Compilerdirektive unterstützt.
      • Für Fortran 77-Kompatibilität: Wenn -fno-sign-zero verwendet wird, verhält sich das intrinsische SIGN jetzt so, als ob Null immer positiv wäre.
      • Für Legacy-Kompatibilität: Auf Cygwin und MinGW werden jetzt die speziellen Dateien CONOUT$ und CONIN$ (und CONERR$, die auf CONOUT$ abgebildet wird) unterstützt.
      • Fortran 2003-Support wurde erweitert:
        • Prozedurzeigerfunktionsergebnisse und Prozedurzeigerkomponenten (einschließlich PASS),
        • zuordenbare Skalare (experimentell),
        • DEFERRED typgebundene Prozeduren,
        • das Argument ERRMSG= der Anweisungen ALLOCATE und DEALLOCATE wurde implementiert.
        • Die ALLOCATE-Anweisung unterstützt Typspezifikationen und das Argument SOURCE=.
        • OPERATOR(*) und ASSIGNMENT(=) sind jetzt als GENERIC typgebundene Prozedur (d.h. als typgebundene Operatoren) erlaubt.
        • Runden ( ROUND= , RZ , . ) für die Ausgabe wird jetzt unterstützt.
        • Die Parameter des Typs INT_FAST<8,16,32,64,128>_T des intrinsischen Moduls ISO_C_BINDING werden jetzt unterstützt, mit Ausnahme der oben aufgeführten Ziele, bei denen GCC keine Informationen vom Typ <stdint.h> hat.
        • Erweiterbare abgeleitete Typen mit typgebundener Prozedur oder Prozedurzeiger mit PASS-Attribut müssen jetzt CLASS gemäß dem Fortran 2003-Standard verwenden. Der Workaround zur Verwendung von TYPE wird nicht mehr unterstützt.
        • Experimentelle, unvollständige Unterstützung für Polymorphismus, einschließlich CLASS , SELECT TYPE und dynamischer Versand von typgebundenen Prozeduraufrufen. Einige Funktionen funktionieren noch nicht, z. B. unbegrenzter Polymorphismus ( CLASS(*) ).
        • Die OPEN-Anweisung unterstützt jetzt die Option NEWUNIT=, die eine eindeutige Dateieinheit zurückgibt und so die versehentliche Verwendung derselben Einheit in verschiedenen Programmteilen verhindert.
        • Unterstützung für Elemente mit unbegrenztem Format wurde hinzugefügt.
        • Die Typparameter INT <8,16,32> und REAL <32,64,128> des intrinsischen Moduls ISO_FORTRAN_ENV werden jetzt unterstützt.
        • Die Verwendung komplexer Argumente mit TAN , SINH , COSH , TANH , ASIN , ACOS und ATAN ist jetzt möglich die Funktionen ASINH , ACOSH und ATANH wurden hinzugefügt (für reelle und komplexe Argumente) und ATAN(Y,X) ist jetzt ein Alias für ATAN2(Y,X).
        • Das BLOCK-Konstrukt wurde implementiert.

        Binärsystem

        Das binäres Zahlensystem verwendet die Zahl 2 als Basis (Radix). Als Zahlensystem zur Basis 2 besteht es nur aus zwei Zahlen: 0 und 1.

        Während es im alten Ägypten, China und Indien für verschiedene Zwecke verwendet wurde, ist das Binärsystem in der modernen Welt zur Sprache der Elektronik und Computer geworden. Dies ist das effizienteste System, um den Aus- (0) und Ein-Zustand (1) eines elektrischen Signals zu erkennen. Es ist auch die Grundlage für Binärcode, der verwendet wird, um Daten in computerbasierten Maschinen zu erstellen. Sogar der digitale Text, den Sie gerade lesen, besteht aus Binärzahlen.

        Das Lesen einer Binärzahl ist einfacher als es aussieht: Da es sich um ein Positionssystem handelt, wird jede Ziffer einer Binärzahl hoch 2 potenziert, beginnend von ganz rechts mit 2 0 . Im Binärsystem bezieht sich jede Binärziffer auf 1 Bit.

        Beispiele für die Konvertierung von Dezimal in Binär

        Tabelle der Dezimal-zu-Binär-Umrechnungstabelle

        DezimalBinär
        100000001
        200000010
        300000011
        400000100
        500000101
        600000110
        700000111
        800001000
        900001001
        1000001010
        1100001011
        1200001100
        1300001101
        1400001110
        1500001111
        1600010000
        1700010001
        1800010010
        1900010011
        2000010100
        2100010101
        2200010110
        2300010111
        2400011000
        2500011001
        2600011010
        2700011011
        2800011100
        2900011101
        3000011110
        3100011111
        3200100000
        3300100001
        3400100010
        3500100011
        3600100100
        3700100101
        3800100110
        3900100111
        4000101000
        4100101001
        4200101010
        4300101011
        4400101100
        4500101101
        4600101110
        4700101111
        4800110000
        4900110001
        5000110010
        5100110011
        5200110100
        5300110101
        5400110110
        5500110111
        5600111000
        5700111001
        5800111010
        5900111011
        6000111100
        6100111101
        6200111110
        6300111111
        6401000000
        DezimalBinär
        6501000001
        6601000010
        6701000011
        6801000100
        6901000101
        7001000110
        7101000111
        7201001000
        7301001001
        7401001010
        7501001011
        7601001100
        7701001101
        7801001110
        7901001111
        8001010000
        8101010001
        8201010010
        8301010011
        8401010100
        8501010101
        8601010110
        8701010111
        8801011000
        8901011001
        9001011010
        9101011011
        9201011100
        9301011101
        9401011110
        9501011111
        9601100000
        9701100001
        9801100010
        9901100011
        10001100100
        10101100101
        10201100110
        10301100111
        10401101000
        10501101001
        10601101010
        10701101011
        10801101100
        10901101101
        11001101110
        11101101111
        11201110000
        11301110001
        11401110010
        11501110011
        11601110100
        11701110101
        11801110110
        11901110111
        12001111000
        12101111001
        12201111010
        12301111011
        12401111100
        12501111101
        12601111110
        12701111111
        12810000000
        DezimalBinär
        12910000001
        13010000010
        13110000011
        13210000100
        13310000101
        13410000110
        13510000111
        13610001000
        13710001001
        13810001010
        13910001011
        14010001100
        14110001101
        14210001110
        14310001111
        14410010000
        14510010001
        14610010010
        14710010011
        14810010100
        14910010101
        15010010110
        15110010111
        15210011000
        15310011001
        15410011010
        15510011011
        15610011100
        15710011101
        15810011110
        15910011111
        16010100000
        16110100001
        16210100010
        16310100011
        16410100100
        16510100101
        16610100110
        16710100111
        16810101000
        16910101001
        17010101010
        17110101011
        17210101100
        17310101101
        17410101110
        17510101111
        17610110000
        17710110001
        17810110010
        17910110011
        18010110100
        18110110101
        18210110110
        18310110111
        18410111000
        18510111001
        18610111010
        18710111011
        18810111100
        18910111101
        19010111110
        19110111111
        19211000000
        DezimalBinär
        19311000001
        19411000010
        19511000011
        19611000100
        19711000101
        19811000110
        19911000111
        20011001000
        20111001001
        20211001010
        20311001011
        20411001100
        20511001101
        20611001110
        20711001111
        20811010000
        20911010001
        21011010010
        21111010011
        21211010100
        21311010101
        21411010110
        21511010111
        21611011000
        21711011001
        21811011010
        21911011011
        22011011100
        22111011101
        22211011110
        22311011111
        22411100000
        22511100001
        22611100010
        22711100011
        22811100100
        22911100101
        23011100110
        23111100111
        23211101000
        23311101001
        23411101010
        23511101011
        23611101100
        23711101101
        23811101110
        23911101111
        24011110000
        24111110001
        24211110010
        24311110011
        24411110100
        24511110101
        24611110110
        24711110111
        24811111000
        24911111001
        25011111010
        25111111011
        25211111100
        25311111101
        25411111110
        25511111111
        Letzte Kommentare

        @madan
        Ich hatte immer ein Problem mit Binary. Ich fand es am einfachsten, sich die Potenz von 2 bis zu einer bestimmten Zahl zu merken (normalerweise beginne ich mit 128), und dann können Sie von dort aus hochrechnen. Was ich also mache, um dies freihändig zu tun, ich beginne mit einer Zahl, die ich kenne, sagen wir, Sie erinnern sich, dass 64 der höchste 2-Bit-Operator ist, an den Sie sich erinnern, also multipliziere ich das, bis ich die Zahl, die ich umwandeln muss, überwunden habe. 1024 ist also zu groß, also ist 512 die erste Binärzahl, die nicht zu groß ist, also setzen Sie das Bit auf 1.
        1
        Als nächstes ist 256, und der Rest aus der Subtraktion von 512 von 789 ist 277. Sie setzen das Bit auf 1, um 256 anzuzeigen.
        11
        Als nächstes ist 128, aber Ihr Rest ist 21. Dieses Bit ist 0.
        110
        64, Bit ist 0.
        1100
        32, Ihr Rest ist 21, also ist das Bit 0.
        11000
        16, was weniger als 21 ist. Das Bit ist also 1. Der Rest ist jetzt 5.
        110001
        8 ist das nächste 2-Bit, es ist größer als 5, also ist das Bit 0.
        1100010
        4, Rest 1. Bit ist 1
        11000101
        2, Bit ist 0
        110001010
        1, Bit ist 1
        1100010101
        Es ist mühsam, aber funktioniert. Ich habe die Berechnung auf der Seite überprüft und sie ist korrekt. Wenn Sie es in Bytes eingeben müssen, wäre es 0011 0001 0101. Jedes Byte besteht aus 4 Bits, mit Nullen aufgefüllt

        Es ist eine sehr gute Anwendung, ich wünschte, ich könnte diese App herunterladen

        Was ist mit der Umwandlung einer Zahl wie 125,625

        Großartig für Betrug in ICT vielen Dank. Wirklich gute Webseite

        Diese Website ist sehr schön. Es hat meine Arbeit so einfach gemacht.

        Wirklich gut zum Schummeln in meinem Informatik-Test.

        Erstaunlich, rundum vielen Dank für diese Seite. Es ist wundervoll.

        Erklären Sie die Fähigkeiten jedes einzelnen Schrittes, die Sie gut machen können

        @madan
        Ich hatte immer ein Problem mit Binary. Ich fand es am einfachsten, sich die Potenz von 2 bis zu einer bestimmten Zahl zu merken (normalerweise beginne ich mit 128), und dann können Sie von dort aus hochrechnen. Was ich also mache, um dies freihändig zu tun, ich beginne mit einer Zahl, die ich kenne, sagen wir, Sie erinnern sich, dass 64 der höchste 2-Bit-Operator ist, an den Sie sich erinnern, also multipliziere ich das, bis ich die Zahl, die ich umwandeln muss, überwunden habe. 1024 ist also zu groß, also ist 512 die erste Binärzahl, die nicht zu groß ist, also setzen Sie das Bit auf 1.
        1
        Als nächstes ist 256, und der Rest aus der Subtraktion von 512 von 789 ist 277. Sie setzen das Bit auf 1, um 256 anzuzeigen.
        11
        Als nächstes ist 128, aber Ihr Rest ist 21. Dieses Bit ist 0.
        110
        64, Bit ist 0.
        1100
        32, Ihr Rest ist 21, also ist das Bit 0.
        11000
        16, was weniger als 21 ist. Das Bit ist also 1. Der Rest ist jetzt 5.
        110001
        8 ist das nächste 2-Bit, es ist größer als 5, also ist das Bit 0.
        1100010
        4, Rest 1. Bit ist 1
        11000101
        2, Bit ist 0
        110001010
        1, Bit ist 1
        1100010101
        Es ist mühsam, aber funktioniert. Ich habe die Berechnung auf der Seite überprüft und sie ist korrekt. Wenn Sie es in Bytes eingeben müssen, wäre es 0011 0001 0101. Jedes Byte besteht aus 4 Bits, mit Nullen aufgefüllt.

        irgendein Körper hilft mir, dies zu lösen (789) 10 =( ?) 2

        Es wäre cool, wenn es zeigen würde, wie es zu den Berechnungen gekommen ist

        Hat mir bei meinem Test sehr geholfen.

        Es hat meiner Arbeit wirklich geholfen

        Ich sollte nur vielen Dank sagen. es hat mir geholfen und der Text war nützlich.
        Danke noch einmal.


        Auffinden von Bruchteilen mit Division

        In dieser Lektion der 4. Klasse lernen die Schüler den Zusammenhang zwischen der Division und dem Finden eines Bruchteils einer Menge. Um zum Beispiel 2/3 von 9 Äpfeln zu finden, finden wir zuerst 1/3 von 9 Äpfeln durch Division und verdoppeln dann unser Ergebnis.

        Mamas 24 Brownies sind in 6 gleiche aufgeteilt
        Teile. Jeder Teil ist 1/6 des Ganzen. Wie
        viele stücke sind in jedem teil?

        1. Schreiben Sie einen Divisionssatz und einen Bruchteilsatz.

        2. Schreiben Sie für jeden Divisionssatz einen Bruchteilsatz.

        ein . 30 ÷ 5 = _____

        3. Suchen Sie ein Teil. Schreiben Sie auch einen Divisionssatz.

        Teile diese zehn
        Fisch in 5 Gruppen.

        A. Marsha hat 18 Dollar von ihrer Mutter bekommen. Sie legte 6 Dollar in ihre Ersparnisse, ein Teil davon war __________.

        Divisionssatz: _______ ÷_____ = _____

        B. Mariana gab ein Viertel ihrer Ersparnisse von 80 US-Dollar aus, oder 4,5: Dezimaloperationen (Teil 1),[nobr][H1toH2]

        Inhalt

        Viele Zahlensysteme der alten Zivilisationen verwenden die Zehn und ihre Kräfte zur Darstellung von Zahlen, wahrscheinlich weil es zehn Finger an zwei Händen gibt und die Menschen begannen, mit ihren Fingern zu zählen. Beispiele sind zuerst die ägyptischen Zahlen, dann die Brahmi-Zahlen, die griechischen Zahlen, die hebräischen Zahlen, die römischen Zahlen und die chinesischen Zahlen. Sehr große Zahlen waren in diesen alten Zahlensystemen schwer darzustellen, und nur die besten Mathematiker waren in der Lage, große Zahlen zu multiplizieren oder zu dividieren. Diese Schwierigkeiten wurden mit der Einführung des hindu-arabischen Zahlensystems zur Darstellung von ganzen Zahlen vollständig gelöst. Dieses System wurde erweitert, um einige nicht ganzzahlige Zahlen darzustellen, genannt Dezimalbrüche oder Dezimal Zahlen, zum Bilden der dezimales Zahlensystem.

        Zum Schreiben von Zahlen verwendet das Dezimalsystem zehn Dezimalstellen, ein Dezimalzeichen und bei negativen Zahlen ein Minuszeichen "−".Die Dezimalstellen sind 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 [7] das Dezimaltrennzeichen ist der Punkt " . " in vielen Ländern, [4] [8] aber auch ein Komma " , " in anderen Ländern. [5]

        Um eine nicht negative Zahl darzustellen, besteht eine Dezimalzahl aus

        • entweder eine (endliche) Ziffernfolge (wie "2017"), wobei die gesamte Folge eine ganze Zahl darstellt, a m a m − 1 … a 0 ein_ldots a_<0>>
        • oder ein Dezimalzeichen, das zwei Ziffernfolgen trennt (z. B. "20.70828")

        Ob m > 0 , d. h. wenn die erste Folge mindestens zwei Ziffern enthält, wird im Allgemeinen angenommen, dass die erste Ziffer einm ist nicht null. Unter bestimmten Umständen kann es nützlich sein, links eine oder mehrere Nullen zu haben, dies ändert nichts an dem durch die Dezimalstelle dargestellten Wert: zum Beispiel 3,14 = 03,14 = 003,14 . Ähnlich ist es, wenn die letzte Ziffer rechts vom Dezimalzeichen Null ist – das heißt, wenn Bn = 0 — kann umgekehrt entfernt werden, nachgestellte Nullen können nach dem Dezimalzeichen hinzugefügt werden, ohne die dargestellte Zahl zu ändern [Anmerkung 1], zum Beispiel 15 = 15,0 = 15,00 und 5,2 = 5,20 = 5,200 .

        Um eine negative Zahl darzustellen, wird ein Minuszeichen vor gesetzt einm .

        Das ganzzahliger Teil oder Bestandteil einer Dezimalzahl ist die ganze Zahl, die links vom Dezimaltrennzeichen steht (siehe auch Trunkierung). Bei einer nicht negativen Dezimalzahl ist dies die größte ganze Zahl, die nicht größer als die Dezimalzahl ist. Der Teil vom Dezimaltrennzeichen rechts ist der Bruchteil, die der Differenz zwischen der Zahl und ihrem ganzzahligen Teil entspricht.

        Wenn der ganzzahlige Teil einer Zahl Null ist, kann es, typischerweise bei der Berechnung, vorkommen, dass der ganzzahlige Teil nicht geschrieben wird (zum Beispiel 0,1234 anstelle von 0,1234). Beim normalen Schreiben wird dies wegen der Verwechslungsgefahr zwischen dem Dezimalzeichen und anderen Satzzeichen im Allgemeinen vermieden.

        Kurz gesagt hängt der Beitrag jeder Ziffer zum Wert einer Zahl von ihrer Position in der Zahl ab. Das heißt, das Dezimalsystem ist ein Positionszahlensystem.

        Allgemeiner gesagt eine Dezimalzahl mit n Ziffern nach dem Trennzeichen stellen den Bruch mit Nenner 10 . dar n , deren Zähler die ganze Zahl ist, die durch Entfernen des Trennzeichens erhalten wird.

        Daraus folgt, dass eine Zahl genau dann ein Dezimalbruch ist, wenn sie eine endliche Dezimaldarstellung hat.

        Als vollständig gekürzter Bruch ausgedrückt, sind die Dezimalzahlen diejenigen, deren Nenner ein Produkt aus einer Potenz von 2 und einer Potenz von 5 ist. Somit sind die kleinsten Nenner von Dezimalzahlen

        Dezimalzahlen erlauben keine exakte Darstellung für alle reellen Zahlen, z.B. für die reelle Zahl . Dennoch erlauben sie es, jede reelle Zahl mit jeder gewünschten Genauigkeit zu approximieren, z. B. nähert sich die Dezimalzahl 3,14159 dem reellen π an, da sie weniger als 10 −5 davon entfernt ist, so dass Dezimalzahlen in Wissenschaft, Technik und im täglichen Leben weit verbreitet sind.

        Genauer gesagt gibt es für jede reelle Zahl x und jede positive ganze Zahl n zwei Dezimalstellen L und du mit höchstens n Ziffern nach dem Komma, so dass Lxdu und (duL) = 10 −n .

        Zahlen werden sehr oft als Ergebnis von Messungen erhalten. Da Messungen einer Messunsicherheit mit bekannter Obergrenze unterliegen, wird das Ergebnis einer Messung durch eine Dezimalzahl mit . gut dargestellt n Stellen nach dem Komma, sobald der absolute Messfehler nach oben durch 10 − . begrenzt istn . In der Praxis werden Messergebnisse oft mit einer bestimmten Anzahl von Nachkommastellen angegeben, die die Fehlergrenzen angeben. Obwohl z. B. 0,080 und 0,08 dieselbe Zahl bezeichnen, deutet die Dezimalzahl 0,080 auf eine Messung mit einem Fehler von weniger als 0,001 hin, während die Zahl 0,08 einen durch 0,01 begrenzten absoluten Fehler anzeigt. In beiden Fällen könnte der wahre Wert der Messgröße beispielsweise 0,0803 oder 0,0796 betragen (siehe auch signifikante Zahlen).

        Für eine reelle Zahl x und eine ganze Zahl n ≥ 0 , lass [x]n bezeichnet die (endliche) Dezimalentwicklung der größten Zahl, die nicht größer ist als x das hat genau n Stellen nach dem Komma. Lassen Dich bezeichnet die letzte Ziffer von [x]ich . Es ist einfach zu sehen, dass [x]n erhalten Sie durch Anhängen Dn rechts von [x]n−1 . So hat man

        und der Unterschied von [x]n−1 und [x]n beläuft sich auf

        was entweder 0 ist, wenn Dn = 0 , oder wird beliebig klein als n tendiert ins Unendliche. Nach der Definition eines Grenzwertes x ist die Grenze von [x]n Wenn n tendiert ins Unendliche. Dies wird geschrieben als x = lim n → ∞ [ x ] n < extstyle x=lim _[x]_> oder

        was heißt an unendliche Dezimalentwicklung von x .

        Ein solcher Dezimalbruch, d. h.: Dn = 0 für n > n , kann in seine äquivalente unendliche Dezimalentwicklung umgewandelt werden, indem man Dn von Dn − 1 und Ersetzen aller nachfolgenden 0s durch 9s (siehe 0.999. ).

        Zusammenfassend hat jede reelle Zahl, die kein Dezimalbruch ist, eine eindeutige unendliche Dezimalentwicklung. Jeder Dezimalbruch hat genau zwei unendliche Dezimalentwicklungen, von denen eine nur Nullen nach einer Stelle enthält, was durch die obige Definition von [x]n , und der andere enthält nur 9er nach einer Stelle, die durch die Definition von [x]n als die größte Zahl, die ist weniger als x, mit genau n Ziffern nach dem Dezimalzeichen.

        Rationale Zahlen Bearbeiten

        Die lange Division ermöglicht die Berechnung der unendlichen Dezimalentwicklung einer rationalen Zahl. Wenn die rationale Zahl ein Dezimalbruch ist, endet die Division schließlich und erzeugt eine Dezimalzahl, die durch Hinzufügen von unendlich vielen Nullen in eine unendliche Erweiterung verlängert werden kann. Wenn die rationale Zahl kein Dezimalbruch ist, kann die Division unbegrenzt fortgesetzt werden. Da jedoch alle aufeinanderfolgenden Reste kleiner als der Divisor sind, gibt es nur endlich viele mögliche Reste, und nach einer gewissen Stelle muss dieselbe Ziffernfolge im Quotienten unendlich wiederholt werden. Das heißt, man hat a wiederholende Dezimalzahl. Beispielsweise,

        Das Umgekehrte gilt auch: Wenn sich an einem Punkt in der dezimalen Darstellung einer Zahl die gleiche Ziffernfolge endlos wiederholt, ist die Zahl rational.

        Die meisten modernen Computerhardware- und -softwaresysteme verwenden im Allgemeinen intern eine binäre Darstellung (obwohl viele frühe Computer, wie der ENIAC oder der IBM 650, intern eine Dezimaldarstellung verwendeten). [10] Für die externe Verwendung durch Computerspezialisten wird diese binäre Darstellung manchmal in den entsprechenden Oktal- oder Hexadezimalsystemen dargestellt.

        Für die meisten Zwecke werden Binärwerte jedoch in oder aus den äquivalenten Dezimalwerten zur Darstellung oder Eingabe von Menschen umgewandelt, Computerprogramme drücken Literale standardmäßig dezimal aus. (123.1 zum Beispiel wird in einem Computerprogramm als solches geschrieben, obwohl viele Computersprachen diese Zahl nicht genau codieren können.)

        Sowohl Computerhardware als auch -software verwenden auch interne Darstellungen, die effektiv dezimal sind, um Dezimalwerte zu speichern und zu rechnen. Oft wird diese Arithmetik mit Daten durchgeführt, die mit einer Variante von binär kodierten Dezimalzahlen kodiert sind, [11] [12] insbesondere in Datenbankimplementierungen, aber es werden auch andere Dezimaldarstellungen verwendet (einschließlich dezimaler Gleitkommazahlen wie in neueren Revisionen der IEEE 754-Standard für Gleitkomma-Arithmetik). [13]

        Dezimalarithmetik wird in Computern verwendet, damit dezimale Bruchergebnisse beim Addieren (oder Subtrahieren) von Werten mit einer festen Länge ihres Bruchteils immer mit derselben Genauigkeit berechnet werden. Dies ist besonders wichtig für Finanzrechnungen, die beispielsweise zu Buchführungszwecken ganzzahlige Vielfache der kleinsten Währungseinheit in ihren Ergebnissen benötigen. Dies ist in binär nicht möglich, da die negativen Potenzen von 10 keine endliche binäre Bruchdarstellung haben und im Allgemeinen für Multiplikation (oder Division) unmöglich ist. [14] [15] Siehe Arithmetik mit beliebiger Genauigkeit für genaue Berechnungen.

        Viele alte Kulturen berechneten mit Zahlen auf der Grundlage von zehn, manchmal argumentierten sie, weil menschliche Hände typischerweise zehn Finger/Ziffern haben. [16] Standardisierte Gewichte, die in der Industal-Zivilisation (ca. 3300-1300 v. Chr.) verwendet wurden, basierten auf den Verhältnissen: 1/20, 1/10, 1/5, 1/2, 1, 2, 5, 10, 20 , 50, 100, 200 und 500, während ihr standardisiertes Lineal – das Mohenjo-Daro-Herrscher – wurde in zehn gleiche Teile geteilt. [17] [18] [19] Ägyptische Hieroglyphen, die seit etwa 3000 v. Chr. nachweisbar sind, verwendeten ein rein dezimales System, [20] ebenso wie die kretischen Hieroglyphen (ca. 1625-1500 v. Chr.) das ägyptische Modell. [21] [22] Das Dezimalsystem wurde an die aufeinander folgenden bronzezeitlichen Kulturen Griechenlands weitergegeben, darunter Linear A (ca. 18. Jahrhundert v. Chr. - 1450 v. Chr.) Und Linear B (ca. 1375 - 1200 v. Chr.) – das Zahlensystem von Auch das klassische Griechenland verwendete Zehnerpotenzen, darunter römische Ziffern, eine Zwischenbasis von 5. [23] Bemerkenswerterweise erfand der Universalgelehrte Archimedes (ca. 287–212 v [23] und führte später den deutschen Mathematiker Carl Friedrich Gauß dazu, zu beklagen, welche Höhen die Wissenschaft schon zu seiner Zeit erreicht hätte, wenn Archimedes das Potenzial seiner genialen Entdeckung voll ausgeschöpft hätte. [24] Hethitische Hieroglyphen (seit dem 15. Jahrhundert v. Chr.) waren ebenfalls streng dezimal. [25]

        Einige nichtmathematische antike Texte wie die Veden aus dem Jahr 1700-900 v. Chr. verwenden Dezimalzahlen und mathematische Dezimalbrüche. [26]

        Die ägyptischen hieratischen Ziffern, die Ziffern des griechischen Alphabets, die Ziffern des hebräischen Alphabets, die römischen Ziffern, die chinesischen Ziffern und die frühen indischen Brahmi-Ziffern sind alle nicht-positionelle Dezimalsysteme und erforderten eine große Anzahl von Symbolen. Ägyptische Ziffern verwendeten zum Beispiel unterschiedliche Symbole für 10, 20 bis 90, 100, 200 bis 900, 1000, 2000, 3000, 4000 bis 10.000. [27] Das früheste Positionsdezimalsystem der Welt war die chinesische Stabkalküle. [28]

        Geschichte der Dezimalbrüche Bearbeiten

        Dezimalbrüche wurden erstmals Ende des 4. [28] [30] Die geschriebenen chinesischen Dezimalbrüche waren nicht-positionsbezogen. [30] Die Zählstabfraktionen waren jedoch positionell. [28]

        J. Lennart Berggren stellt fest, dass Positionsdezimalbrüche zum ersten Mal in einem Buch des arabischen Mathematikers Abu'l-Hasan al-Uqlidisi aus dem 10. Jahrhundert vorkommen. [32] Der jüdische Mathematiker Immanuel Bonfils verwendete um 1350 Dezimalbrüche in Vorwegnahme von Simon Stevin, entwickelte jedoch keine Notation, um sie darzustellen. [33] Der persische Mathematiker Jamshīd al-Kāshī behauptete, im 15. Jahrhundert selbst Dezimalbrüche entdeckt zu haben. [32] Al Khwarizmi führte im frühen 9. Jahrhundert die Bruchrechnung in islamische Länder ein. Ein chinesischer Autor behauptete, dass seine Bruchdarstellung eine exakte Kopie der traditionellen chinesischen mathematischen Bruchrechnung von Sunzi Suanjing sei. [28] Diese Form des Bruchs mit Zähler oben und Nenner unten ohne horizontalen Strich wurde auch von al-Uqlidisi und von al-Kāshī in seinem Werk "Arithmetic Key" verwendet. [28] [34]

        Ein Vorläufer der modernen europäischen Dezimalschreibweise wurde im 16. Jahrhundert von Simon Stevin eingeführt. [35]

        Natürliche Sprachen Bearbeiten

        In Indien entstand eine Methode, jede mögliche natürliche Zahl mit einem Satz von zehn Symbolen auszudrücken. Mehrere indische Sprachen zeigen ein einfaches Dezimalsystem. Viele indoarische und dravidische Sprachen haben Zahlen zwischen 10 und 20, die in einem regelmäßigen Muster der Addition zu 10 ausgedrückt werden. [36]

        Die ungarische Sprache verwendet auch ein einfaches Dezimalsystem. Alle Zahlen zwischen 10 und 20 werden regelmäßig gebildet (z.B. 11 wird als "tizenegy" wörtlich "eins auf zehn" ausgedrückt, ebenso wie bei denen zwischen 20 und 100 (23 als "huszonhárom" = "drei auf zwanzig").

        Ein einfaches dezimales Rangsystem mit einem Wort für jede Ordnung (10 十 , 100 百 , 1000 千 , 10.000 万 ) und in dem 11 ausgedrückt wird als zehn Eins und 23 wie zwei-zehn-drei, und 89.345 wird als 8 (Zehntausend) 万 9 (Tausend) 千 3 (Hundert) 百 4 (Zehner) 十 5 im Chinesischen und Vietnamesisch mit einigen Unregelmäßigkeiten gefunden. Japanisch, Koreanisch und Thai haben das chinesische Dezimalsystem importiert. Viele andere Sprachen mit Dezimalsystem haben spezielle Wörter für die Zahlen zwischen 10 und 20 und Dekaden. Zum Beispiel ist 11 im Englischen "eleven" nicht "ten-one" oder "one-teen".

        Inkasprachen wie Quechua und Aymara haben ein fast einfaches Dezimalsystem, in dem 11 ausgedrückt wird als zehn mit einem und 23 wie zwei-zehn mit drei.

        Einige Psychologen vermuten, dass Unregelmäßigkeiten der englischen Namen von Zahlen die Zählfähigkeit von Kindern beeinträchtigen können. [37]


        Inhalt

        BCD macht sich die Tatsache zunutze, dass jede beliebige Dezimalzahl durch ein Vier-Bit-Muster dargestellt werden kann. Die naheliegendste Art, Ziffern zu codieren, ist Natürliches BCD (NBCD), wobei jede Dezimalstelle durch ihren entsprechenden 4-Bit-Binärwert dargestellt wird, wie in der folgenden Tabelle gezeigt. Dies wird auch als "8421"-Kodierung bezeichnet.

        Dezimalziffer Tarierweste
        8 4 2 1
        0 0 0 0 0
        1 0 0 0 1
        2 0 0 1 0
        3 0 0 1 1
        4 0 1 0 0
        5 0 1 0 1
        6 0 1 1 0
        7 0 1 1 1
        8 1 0 0 0
        9 1 0 0 1

        Dieses Schema kann auch als bezeichnet werden Einfache binärcodierte Dezimalzahl (SBCD) oder BCD 8421, und ist die gebräuchlichste Kodierung. [12] Andere sind die sogenannte „4221“- und „7421“-Codierung – benannt nach der Gewichtung der Bits – und „Excess-3“. [13] Zum Beispiel ist die BCD-Ziffer 6, 0110'b in 8421-Notation, 1100'b in 4221 (zwei Kodierungen sind möglich), 0110'b in 7421, während es in Excess-3 1001'b ist ( 6 + 3 = 9 ).

        4-Bit-BCD-Codes und Pseudo-Tetrades
        Bisschen Gewicht 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Kommentar
        4 8 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Binär
        3 4 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
        2 2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
        1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
        Name 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Dezimal
        8 4 2 1 (XS-0) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [14] [15] [16] [17] [Anm. 2]
        7 4 2 1 0 1 2 3 4 5 6 7 8 9 [18] [19] [20]
        Aiken (2 4 2 1) 0 1 2 3 4 5 6 7 8 9 [14] [15] [16] [17] [Anm. 3]
        Überschuss-3 (XS-3) -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 [14] [15] [16] [17] [Anm. 2]
        Überschuss-6 (XS-6) -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 [18] [Anm. 2]
        Jump-at-2 (2 4 2 1) 0 1 2 3 4 5 6 7 8 9 [16] [17]
        Jump-at-8 (2 4 2 1) 0 1 2 3 4 5 6 7 8 9 [21] [22] [16] [17] [Anm. 4]
        4 2 2 1 (ich) 0 1 2 3 4 5 6 7 8 9 [16] [17]
        4 2 2 1 (II) 0 1 2 3 4 5 6 7 8 9 [21] [22]
        5 4 2 1 0 1 2 3 4 5 6 7 8 9 [18] [14] [16] [17]
        5 2 2 1 0 1 2 3 4 5 6 7 8 9 [14] [16] [17]
        5 1 2 1 0 1 2 3 4 5 6 7 8 9 [19]
        5 3 1 1 0 1 2 3 4 5 6 7 8 9 [16] [17]
        Weiß (5 2 1 1) 0 1 2 3 4 5 6 7 8 9 [23] [18] [14] [16] [17]
        5 2 1 1 0 1 2 3 4 5 6 7 8 9 [24]
        0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
        Magnetband 1 2 3 4 5 6 7 8 9 0 [15]
        Paul 1 3 2 6 7 5 4 0 8 9 [25]
        Grau 0 1 3 2 6 7 5 4 15 14 12 13 8 9 11 10 [26] [14] [15] [16] [17] [Anm. 2]
        Glixon 0 1 3 2 6 7 5 4 9 8 [27] [14] [15] [16] [17]
        Ledley 0 1 3 2 7 6 4 5 8 9 [28]
        4 3 1 1 0 1 2 3 5 4 6 7 8 9 [19]
        LARC 0 1 2 4 3 5 6 7 9 8 [29]
        Klar 0 1 2 4 3 9 8 7 5 6 [2] [3]
        Petherick (RAE) 1 3 2 0 4 8 6 7 9 5 [30] [31] [Anm. 5]
        O'Brien I (Watt) 0 1 3 2 4 9 8 6 7 5 [32] [14] [16] [17] [Anm. 6]
        5-zyklisch 0 1 3 2 4 5 6 8 7 9 [28]
        Tompkins I 0 1 3 2 4 9 8 7 5 6 [33] [14] [16] [17]
        Lippel 0 1 2 3 4 9 8 7 6 5 [34] [35] [14]
        O'Brien II 0 2 1 4 3 9 7 8 5 6 [32] [14] [16] [17]
        Tompkins II 0 1 4 3 2 7 9 8 5 6 [33] [14] [16] [17]
        Überschuss-3 Grau -3 -2 0 -1 4 3 1 2 12 11 9 10 5 6 8 7 [16] [17] [20] [nb 7] [nb 2]
        6 3 −2 −1 (I) 3 2 1 0 5 4 8 9 7 6 [29] [36]
        6 3 −2 −1 (II) 0 3 2 1 6 5 4 9 8 7 [29] [36]
        8 4 −2 −1 0 4 3 2 1 8 7 6 5 9 [29]
        Lucali 0 15 14 1 12 3 2 13 8 7 6 9 4 11 10 5 [37]
        Kautz I 0 2 5 1 3 7 9 8 6 4 [18]
        Kautz II 9 4 1 3 2 8 6 7 0 5 [18] [14]
        Süßkind I 0 1 4 3 2 9 8 5 6 7 [35]
        Süßkind II 0 1 9 8 4 3 2 5 6 7 [35]
        0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

        Die folgende Tabelle stellt Dezimalstellen von 0 bis 9 in verschiedenen BCD-Codierungssystemen dar. In den Headern zeigt "8 4 2 1" das Gewicht jedes Bits an. In der fünften Spalte ("BCD 8 4 −2 −1") sind zwei der Gewichte negativ. Sowohl ASCII- als auch EBCDIC-Zeichencodes für die Ziffern, die Beispiele für BCD-Zonen sind, werden ebenfalls angezeigt.


        Ziffer
        Tarierweste
        8 4 2 1
        Stibitz-Code oder Excess-3 Aiken-Code oder BCD
        2 4 2 1
        Tarierweste
        8 4 −2 −1
        IBM 702, IBM 705, IBM 7080, IBM 1401
        8 4 2 1
        ASCII
        0000 8421
        EBCDIC
        0000 8421
        0 0000 0011 0000 0000 1010 0011 0000 1111 0000
        1 0001 0100 0001 0111 0001 0011 0001 1111 0001
        2 0010 0101 0010 0110 0010 0011 0010 1111 0010
        3 0011 0110 0011 0101 0011 0011 0011 1111 0011
        4 0100 0111 0100 0100 0100 0011 0100 1111 0100
        5 0101 1000 1011 1011 0101 0011 0101 1111 0101
        6 0110 1001 1100 1010 0110 0011 0110 1111 0110
        7 0111 1010 1101 1001 0111 0011 0111 1111 0111
        8 1000 1011 1110 1000 1000 0011 1000 1111 1000
        9 1001 1100 1111 1111 1001 0011 1001 1111 1001

        Da die meisten Computer mit Daten in 8-Bit-Bytes umgehen, können Sie eine der folgenden Methoden verwenden, um eine BCD-Nummer zu codieren:

        • Unverpackt: Jede Dezimalziffer wird in ein Byte codiert, wobei vier Bits die Zahl darstellen und die restlichen Bits keine Bedeutung haben.
        • Verpackt: Zwei Dezimalziffern werden in ein einzelnes Byte codiert, wobei eine Ziffer im niederwertigsten Halbbyte (Bit 0 bis 3) und die andere Ziffer im höchstwertigen Halbbyte (Bit 4 bis 7) liegt. [Anm. 8]

        Als Beispiel die Kodierung der Dezimalzahl 91 Die Verwendung von ungepacktem BCD führt zu dem folgenden binären Muster von zwei Bytes:

        In gepacktem BCD würde dieselbe Zahl in ein einzelnes Byte passen:

        Daher ist der Zahlenbereich für ein ungepacktes BCD-Byte null bis einschließlich neun, während der Bereich für ein gepacktes BCD-Byte null bis einschließlich neunundneunzig ist.

        Um Zahlen darzustellen, die größer als der Bereich eines einzelnen Bytes sind, kann eine beliebige Anzahl zusammenhängender Bytes verwendet werden. Um zum Beispiel die Dezimalzahl darzustellen 12345 in gepackter BCD im Big-Endian-Format würde ein Programm wie folgt codieren:

        Hier wurde das höchstwertige Nibble des höchstwertigen Bytes als Null codiert, also wird die Zahl als 012345 (aber Formatierungsroutinen können führende Nullen ersetzen oder entfernen). Gepacktes BCD ist bei der Speichernutzung effizienter als ungepacktes BCD, das dieselbe Zahl (mit der führenden Null) im nicht gepackten Format codiert, würde den doppelten Speicher verbrauchen.

        Verschiebe- und Maskierungsoperationen werden verwendet, um eine gepackte BCD-Ziffer zu packen oder zu entpacken. Andere bitweise Operationen werden verwendet, um eine Zahl in ihr äquivalentes Bitmuster umzuwandeln oder den Prozess umzukehren.

        In gepacktes BCD (oder einfach gepackt dezimal [38] ), stellt jedes der beiden Nibbles jedes Bytes eine Dezimalziffer dar. [nb 8] Packed BCD wird mindestens seit den 1960er Jahren verwendet und ist seitdem in der gesamten IBM Mainframe-Hardware implementiert. Die meisten Implementierungen sind Big-Endian, d. h. mit der höherwertigen Stelle in der oberen Hälfte jedes Bytes und mit dem am weitesten links liegenden Byte (an der niedrigsten Speicheradresse) mit den höchstwertigen Stellen des gepackten Dezimalwerts. Das untere Halbbyte des ganz rechten Bytes wird normalerweise als Vorzeichenflag verwendet, obwohl einigen Darstellungen ohne Vorzeichen ein Vorzeichenflag fehlt. Als Beispiel besteht ein 4-Byte-Wert aus 8 Halbbytes, wobei die oberen 7 Halbbytes die Ziffern eines 7-stelligen Dezimalwerts speichern und das unterste Halbbyte das Vorzeichen des dezimalen Integerwerts angibt.

        Standardvorzeichenwerte sind 1100 (hex C) für positiv (+) und 1101 (D) für negativ (−). Diese Konvention stammt aus dem Zonenfeld für EBCDIC-Zeichen und der vorzeichenbehafteten Overpunch-Darstellung. Andere zulässige Zeichen sind 1010 (A) und 1110 (E) für positiv und 1011 (B) für negativ. IBM System/360-Prozessoren verwenden die Vorzeichen 1010 (A) und 1011 (B), wenn das A-Bit im PSW gesetzt ist, für den ASCII-8-Standard, der nie bestanden wurde. Die meisten Implementierungen stellen auch vorzeichenlose BCD-Werte mit einem Vorzeichen-Halbbyte von 1111 (F) bereit. [39] [40] [41] ILE RPG verwendet 1111 (F) für positiv und 1101 (D) für negativ. [42] Diese stimmen mit der EBCDIC-Zone für Ziffern ohne Vorzeichenüberdruck überein. Im gepackten BCD wird die Zahl 127 durch 0001 0010 0111 1100 (127C) und –127 durch 0001 0010 0111 1101 (127D) repräsentiert.Burroughs-Systeme verwendeten 1101 (D) für negativ, und jeder andere Wert wird als positiver Vorzeichenwert betrachtet (die Prozessoren normalisieren ein positives Vorzeichen auf 1100 (C)).

        Unterzeichnen
        Ziffer
        Tarierweste
        8 4 2 1
        Unterzeichnen Anmerkungen
        EIN 1 0 1 0 +
        B 1 0 1 1
        C 1 1 0 0 + Bevorzugt
        D 1 1 0 1 Bevorzugt
        E 1 1 1 0 +
        F 1 1 1 1 + Ohne Vorzeichen

        Egal wie viele Bytes ein Wort breit ist, es gibt immer eine gerade Anzahl von Nibbles, da jedes Byte zwei davon hat. Daher ein Wort von n Bytes können bis zu (2n)−1 Dezimalstellen, was immer eine ungerade Anzahl von Stellen ist. Eine Dezimalzahl mit D Ziffern erfordert 1 / 2 (D+1) Byte Speicherplatz.

        Ein 4-Byte-Wort (32 Bit) kann beispielsweise sieben Dezimalstellen plus ein Vorzeichen enthalten und Werte im Bereich von ±9.9999.999 darstellen. Somit ist die Zahl −1.234.567 7 Stellen breit und ist codiert als:

        Wie bei Zeichenketten wird das erste Byte der gepackten Dezimalzahl – das mit den zwei höchstwertigen Stellen – normalerweise an der niedrigsten Adresse im Speicher abgelegt, unabhängig von der Endianness der Maschine.

        Im Gegensatz dazu kann eine 4-Byte-Binär-Zweierkomplement-Ganzzahl Werte von -2.147.483.648 bis +2.147.483.647 darstellen.

        Während gepacktes BCD den Speicher nicht optimal nutzt (etwa 20 % mehr Speicher als binäre Notation zum Speichern derselben Zahlen verwendet), wird die Umwandlung in ASCII, EBCDIC oder die verschiedenen Kodierungen von Unicode trivial, da keine arithmetischen Operationen erforderlich sind. Die zusätzlichen Speicheranforderungen werden normalerweise durch die Notwendigkeit der Genauigkeit und Kompatibilität mit Taschenrechnern oder Handberechnungen ausgeglichen, die die Festkomma-Dezimalarithmetik bietet. Dichtere Packungen von BCD existieren, die den Speichernachteil vermeiden und auch keine arithmetischen Operationen für übliche Konvertierungen benötigen.

        Gepacktes BCD wird in der Programmiersprache COBOL als Datentyp "COMPUTATIONAL-3" (eine IBM-Erweiterung, die von vielen anderen Compiler-Herstellern übernommen wurde) oder "PACKED-DECIMAL" (Teil des COBOL-Standards von 1985) unterstützt. Es wird in PL/I als "FIXED DECIMAL" unterstützt. Neben dem IBM System/360 und späteren kompatiblen Mainframes ist gepacktes BCD im nativen Befehlssatz der ursprünglichen VAX-Prozessoren der Digital Equipment Corporation und einiger Modelle der Mainframes der SDS Sigma-Serie implementiert und ist das native Format für die Burroughs Corporation Medium Systems Corporation Reihe von Großrechnern (abgeleitet von der Electrodata 200-Serie aus den 1950er Jahren).

        Zehnerkomplementdarstellungen für negative Zahlen bieten einen alternativen Ansatz zum Codieren des Vorzeichens von gepackten (und anderen) BCD-Zahlen. In diesem Fall haben positive Zahlen immer eine höchstwertige Ziffer zwischen 0 und 4 (einschließlich), während negative Zahlen durch das 10er-Komplement der entsprechenden positiven Zahl dargestellt werden. Infolgedessen ermöglicht dieses System, dass 32-Bit-gepackte BCD-Zahlen von -50.000.000 bis +49.999.999 reichen, und -1 wird als 99999999 dargestellt. (Wie bei Zweierkomplement-Binärzahlen ist der Bereich nicht symmetrisch um Null.)

        Festkomma-gepackte Dezimalzahl Bearbeiten

        Festkomma-Dezimalzahlen werden von einigen Programmiersprachen (wie COBOL, PL/I und Ada) unterstützt. Diese Sprachen ermöglichen es dem Programmierer, einen impliziten Dezimalpunkt vor einer der Ziffern anzugeben. Ein mit den Bytes 12 34 56 7C codierter gepackter Dezimalwert stellt beispielsweise den Festkommawert +1.234.567 dar, wenn sich der implizierte Dezimalpunkt zwischen der 4. und 5. Stelle befindet:

        Der Dezimalpunkt wird nicht wirklich im Speicher abgelegt, da das gepackte BCD-Speicherformat dies nicht vorsieht. Seine Position ist dem Compiler einfach bekannt, und der generierte Code verhält sich entsprechend für die verschiedenen arithmetischen Operationen.

        Codierungen mit höherer Dichte Bearbeiten

        Wenn eine Dezimalziffer vier Bit erfordert, dann benötigen drei Dezimalziffern 12 Bit. Da jedoch 2 10 (1.024) größer als 10 3 (1.000) ist, werden nur 10 Bit benötigt, wenn drei Dezimalstellen zusammen codiert werden. Zwei solcher Codierungen sind Chen-Ho-Kodierung und dicht gepackt dezimal (DPD). Letzteres hat den Vorteil, dass Teilmengen der Codierung zwei Ziffern in die optimalen sieben Bits und eine Ziffer in vier Bits kodieren, wie bei regulärem BCD.

        Einige Implementierungen, zum Beispiel IBM Mainframe-Systeme, unterstützen gezont dezimal numerische Darstellungen. Jede Dezimalziffer wird in einem Byte gespeichert, wobei die unteren vier Bits die Ziffer in BCD-Form kodieren. Die oberen vier Bits, die "Zonen"-Bits genannt werden, werden normalerweise auf einen festen Wert gesetzt, so dass das Byte einen der Ziffer entsprechenden Zeichenwert enthält. EBCDIC-Systeme verwenden einen Zonenwert von 1111 (hex F). Dies ergibt Bytes im Bereich F0 bis F9 (hex), die die EBCDIC-Codes für die Zeichen "0" bis "9" sind. Analog verwenden ASCII-Systeme einen Zonenwert von 0011 (hex 3), was die Zeichencodes 30 bis 39 (hex) ergibt.

        Bei Dezimalwerten mit Vorzeichen in Zonen enthält das am weitesten rechts stehende (niedrigstwertige) Zonenhalbbyte die Vorzeichenziffer, die dieselbe Menge von Werten ist, die für gepackte Dezimalzahlen mit Vorzeichen verwendet werden (siehe oben). Somit repräsentiert ein als Hex-Bytes F1 F2 D3 codierter gezonter Dezimalwert den vorzeichenbehafteten Dezimalwert −123:

        EBCDIC-Zonen-Dezimal-Umrechnungstabelle Bearbeiten

        (*) Hinweis: Diese Zeichen variieren je nach Einstellung der lokalen Zeichencodeseite.

        Festkomma-gezonte Dezimalzahl Bearbeiten

        Einige Sprachen (wie COBOL und PL/I) unterstützen direkt in Zonen aufgeteilte Festkomma-Dezimalwerte und weisen an einer Stelle zwischen den Dezimalstellen einer Zahl einen impliziten Dezimalpunkt zu. Bei einem sechs-Byte-Dezimalwert mit Vorzeichen und einem implizierten Dezimalpunkt rechts von der vierten Ziffer stellen die Hex-Bytes F1 F2 F7 F9 F5 C0 beispielsweise den Wert +1.279,50 dar:

        IBM Bearbeiten

        IBM verwendet die Begriffe Binärcodierter Dezimalaustauschcode (BCDIC, manchmal auch nur BCD genannt), für 6-Bit alphanumerisch Codes, die Zahlen, Großbuchstaben und Sonderzeichen darstellten. Einige Variationen von BCDIC Alphamerik wird in den meisten frühen IBM-Computern verwendet, einschließlich der IBM 1620 (eingeführt 1959), der IBM 1400-Serie und Nicht-Decimal Architecture-Mitgliedern der IBM 700/7000-Serie.

        Die IBM 1400-Serie sind zeichenadressierbare Maschinen, wobei jeder Standort mit sechs Bits beschriftet ist B, A, 8, 4, 2 und 1, plus ein ungerades Paritätsprüfbit (C) und ein Wortmarkenbit (m). Zum Codieren von Ziffern 1 durch 9, B und EIN Null sind und der Ziffernwert durch Standard-4-Bit-BCD in Bits dargestellt wird 8 durch 1. Für die meisten anderen Zeichenbits B und EIN werden einfach von den "12", "11" und "0" "Zonenstanzungen" im Lochkartenzeichencode und Bits abgeleitet derived 8 durch 1 von dem 1 durch 9 Schläge. Ein "12-Zonen"-Stanzset beides B und EIN, ein "11-Zonen"-Set B, und ein "0-Zone" (ein 0-Schlag in Kombination mit anderen) Set EIN. Also der Buchstabe EIN, welches ist (12,1) im Lochkartenformat, ist kodiert (B,A,1). Das Währungssymbol $, (11,8,3) in der Lochkarte, wurde im Speicher kodiert als (B,8,2,1). Dadurch kann die Schaltung zwischen dem Lochkartenformat und dem internen Speicherformat mit nur wenigen Sonderfällen sehr einfach umgestellt werden. Ein wichtiger Sonderfall ist Ziffer 0, vertreten durch einen einsamen 0 die Karte einstanzen und (8,2) im Kerngedächtnis. [43]

        Der Speicher des IBM 1620 ist in 6-Bit-adressierbare Ziffern organisiert, die üblichen 8, 4, 2, 1 Plus F, als Flag-Bit verwendet und C, ein ungerades Paritätsprüfbit. Tarierweste Alphamerik werden mit Ziffernpaaren kodiert, wobei die "Zone" in der gerade adressierten und die "Ziffer" in der ungeraden adressierten Ziffer steht, wobei sich die "Zone" auf die 12, 11, und 0 "Zonenstanzen" wie in der Serie 1400. Eingabe/Ausgabe-Umsetzungshardware, die zwischen den internen Ziffernpaaren und den externen Standard-6-Bit-BCD-Codes umgewandelt wird.

        In der Dezimalarchitektur IBM 7070, IBM 7072 und IBM 7074 Alphamerik werden mit Ziffernpaaren kodiert (mit Zwei-aus-Fünf-Code in den Ziffern, nicht BCD) des 10-stelligen Wortes, mit der "Zone" in der linken und der "Ziffer" in der rechten Ziffer. Eingabe/Ausgabe-Umsetzungshardware, die zwischen den internen Ziffernpaaren und den externen Standard-6-Bit-BCD-Codes umgewandelt wird.

        Mit der Einführung von System/360 erweiterte IBM die 6-Bit-BCD Alphamerik in 8-Bit-EBCDIC, wodurch viele weitere Zeichen (z. B. Kleinbuchstaben) hinzugefügt werden können. Ein gepacktes Jacket mit variabler Länge length numerisch Der Datentyp ist ebenfalls implementiert und bietet Maschinenbefehle, die Arithmetik direkt mit gepackten Dezimaldaten ausführen.

        Auf IBM 1130 und 1800 wird gepackte BCD in der Software durch das Commercial Subroutine Package von IBM unterstützt.

        BCD-Daten werden heute noch stark in IBM-Prozessoren und -Datenbanken wie IBM DB2, Mainframes und Power6 verwendet. Bei diesen Produkten ist das BCD normalerweise in Zonen unterteiltes BCD (wie in EBCDIC oder ASCII), gepacktes BCD (zwei Dezimalstellen pro Byte) oder „reine“ BCD-Kodierung (eine Dezimalstelle wird als BCD in den unteren vier Bits jedes Bytes gespeichert). . All dies wird in Hardwareregistern und Verarbeitungseinheiten sowie in Software verwendet. Um gepackte Dezimalzahlen in EBCDIC-Tabellenentladungen in lesbare Zahlen umzuwandeln, können Sie die Maske OUTREC FIELDS des JCL-Dienstprogramms DFSORT verwenden. [44]

        Andere Computer Bearbeiten

        Die VAX-11-Serie von Digital Equipment Corporation enthält Anweisungen, die direkt arithmetische Berechnungen an gepackten BCD-Daten durchführen und zwischen gepackten BCD-Daten und anderen ganzzahligen Darstellungen konvertieren können. [41] Das gepackte BCD-Format des VAX ist mit dem auf IBM System/360 und späteren kompatiblen Prozessoren von IBM kompatibel. Die MicroVAX- und späteren VAX-Implementierungen ließen diese Fähigkeit von der CPU weg, behielten jedoch die Codekompatibilität mit früheren Maschinen bei, indem die fehlenden Anweisungen in einer vom Betriebssystem bereitgestellten Softwarebibliothek implementiert wurden. Dies wird automatisch über die Ausnahmebehandlung aufgerufen, wenn die veralteten Anweisungen angetroffen werden, so dass Programme, die sie verwenden, ohne Modifikation auf den neueren Maschinen ausgeführt werden können.

        Die Intel x86-Architektur unterstützt ein einzigartiges 18-stelliges (zehn Byte) BCD-Format, das in die Gleitkommaregister geladen und gespeichert werden kann, von wo aus Berechnungen durchgeführt werden können. [45]

        In neueren Computern werden solche Fähigkeiten fast immer in Software statt im Befehlssatz der CPU implementiert, aber numerische BCD-Daten sind in kommerziellen und finanziellen Anwendungen immer noch sehr verbreitet. Es gibt Tricks, um gepackte BCD- und dezimale Addier- oder Subtraktionsoperationen mit kurzen, aber schwer verständlichen Sequenzen wortparalleler Logik und binärer arithmetischer Operationen zu implementieren. [47] Der folgende Code (in C geschrieben) berechnet beispielsweise eine vorzeichenlose 8-stellige gepackte BCD-Addition unter Verwendung von 32-Bit-Binäroperationen:

        BCD ist in elektronischen Systemen weit verbreitet, in denen ein numerischer Wert angezeigt werden soll, insbesondere in Systemen, die ausschließlich aus digitaler Logik bestehen und keinen Mikroprozessor enthalten. Durch die Verwendung von BCD kann die Manipulation numerischer Daten für die Anzeige stark vereinfacht werden, indem jede Ziffer als separate einzelne Unterschaltung behandelt wird. Dies entspricht viel besser der physikalischen Realität von Display-Hardware – ein Designer könnte sich beispielsweise dafür entscheiden, eine Reihe von separaten, identischen Sieben-Segment-Displays zu verwenden, um eine Messschaltung aufzubauen. Wenn die numerische Größe als reine Binärgröße gespeichert und manipuliert würde, würde die Verbindung mit einer solchen Anzeige eine komplexe Schaltung erfordern. In Fällen, in denen die Berechnungen relativ einfach sind, kann daher das durchgehende Arbeiten mit BCD zu einem insgesamt einfacheren System führen als die Konvertierung in und aus binär. Die meisten Taschenrechner führen alle ihre Berechnungen in BCD durch.

        Das gleiche Argument gilt, wenn Hardware dieser Art einen eingebetteten Mikrocontroller oder einen anderen kleinen Prozessor verwendet. Häufig führt die interne Darstellung von Zahlen im BCD-Format zu kleinerem Code, da eine Konvertierung von oder in eine binäre Darstellung auf derart begrenzten Prozessoren teuer sein kann. Für diese Anwendungen verfügen einige kleine Prozessoren über dedizierte arithmetische Modi, die beim Schreiben von Routinen helfen, die BCD-Größen manipulieren. [48] ​​[49]

        Ergänzung Bearbeiten

        Es ist möglich, eine Addition durchzuführen, indem Sie zuerst eine Binärdatei hinzufügen und anschließend in BCD konvertieren. Die Umwandlung der einfachen Summe zweier Ziffern kann durch Addieren von 6 (d. h. 16 − 10) erfolgen, wenn das Fünf-Bit-Ergebnis der Addition eines Ziffernpaares einen Wert größer als 9 hat. Der Grund für das Addieren von 6 ist, dass 16 mögliche 4-Bit-BCD-Werte (da 2 4 = 16), aber nur 10 Werte sind gültig (0000 bis 1001). Beispielsweise:

        10001 ist die binäre, nicht dezimale Darstellung des gewünschten Ergebnisses, aber die höchstwertige 1 (der "Übertrag") passt nicht in eine 4-Bit-Binärzahl. In BCD wie in Dezimal kann kein Wert größer als 9 (1001) pro Ziffer existieren. Um dies zu korrigieren, wird 6 (0110) zur Summe addiert, und dann wird das Ergebnis als zwei Knabbereien behandelt:

        Die beiden Halbbytes des Ergebnisses 0001 und 0111 entsprechen den Ziffern "1" und "7". Dies ergibt "17" in BCD, was das richtige Ergebnis ist.

        Diese Technik kann auf das Hinzufügen mehrerer Ziffern durch Hinzufügen in Gruppen von rechts nach links erweitert werden, wobei die zweite Ziffer als Übertrag weitergegeben wird, wobei das 5-Bit-Ergebnis jeder Ziffernpaarsumme immer mit 9 verglichen wird. Einige CPUs bieten ein Halbübertrags-Flag um BCD-arithmetische Anpassungen nach binären Additions- und Subtraktionsoperationen zu erleichtern.

        Subtraktion Bearbeiten

        Die Subtraktion erfolgt durch Addition des Zehnerkomplements des Subtrahends zum Minuend. Um das Vorzeichen einer Zahl in BCD darzustellen, wird die Zahl 0000 verwendet, um eine positive Zahl darzustellen, und 1001 wird verwendet, um eine negative Zahl darzustellen. Die restlichen 14 Kombinationen sind ungültige Zeichen. Um die vorzeichenbehaftete BCD-Subtraktion zu veranschaulichen, betrachten Sie das folgende Problem: 357 − 432.

        In BCD mit Vorzeichen ist 357 0000 0011 0101 0111. Das Zehnerkomplement von 432 kann erhalten werden, indem man das Neunerkomplement von 432 nimmt und dann eins addiert. Also, 999 − 432 = 567 und 567 + 1 = 568. Indem 568 in BCD mit dem negativen Vorzeichencode vorangestellt wird, kann die Zahl −432 dargestellt werden. −432 im vorzeichenbehafteten BCD ist also 1001 0101 0110 1000.

        Da beide Zahlen nun in BCD mit Vorzeichen dargestellt sind, können sie addiert werden:

        Da BCD eine Form der Dezimaldarstellung ist, sind einige der obigen Ziffernsummen ungültig. Falls ein ungültiger Eintrag (jede BCD-Ziffer größer als 1001) existiert, wird 6 hinzugefügt, um ein Übertragsbit zu erzeugen und zu bewirken, dass die Summe ein gültiger Eintrag wird. Das Hinzufügen von 6 zu den ungültigen Einträgen führt also zu folgendem:

        Das Ergebnis der Subtraktion ist also 1001 1001 0010 0101 (−925). Um das Ergebnis zu bestätigen, beachten Sie, dass die erste Ziffer 9 ist, was negativ bedeutet. Dies scheint richtig zu sein, da 357 − 432 eine negative Zahl ergeben sollten. Die verbleibenden Halbbytes sind BCD, 1001 0010 0101 ist also 925. Das Zehnerkomplement von 925 ist 1000 − 925 = 75, das berechnete Ergebnis ist also −75.

        Wenn eine andere Anzahl von Halbbytes addiert wird (zB 1053 − 2), muss der Zahl mit den weniger Stellen zunächst Nullen vorangestellt werden, bevor das Zehnerkomplement gebildet oder subtrahiert wird. Bei 1053 − 2 müsste also 2 zunächst als 0002 in BCD dargestellt und das Zehnerkomplement von 0002 berechnet werden.

        Vorteile Bearbeiten

        • Viele nicht-ganzzahlige Werte, wie z. B. dezimal 0,2, haben eine unendliche Stellenwertdarstellung in Binär (.001100110011. ), aber einen endlichen Stellenwert in binär-codierter Dezimalzahl (0,0010). Folglich vermeidet ein System, das auf binärcodierten Dezimaldarstellungen von Dezimalbrüchen basiert, Fehler bei der Darstellung und Berechnung solcher Werte. Dies ist nützlich bei Finanzberechnungen.
        • Die Skalierung mit einer Potenz von 10 ist einfach. an einer Dezimalstellengrenze ist einfacher. Addition und Subtraktion in Dezimalzahlen müssen nicht gerundet werden.
        • Das Angleichen von zwei Dezimalzahlen (zum Beispiel 1,3 + 27,08) ist eine einfache, genaue Verschiebung.
        • Die Konvertierung in eine Zeichenform oder für die Anzeige (z. B. in ein textbasiertes Format wie XML oder in Ansteuersignale für eine Siebensegmentanzeige) ist eine einfache Abbildung pro Ziffer und kann in linearer (O(n)) Zeit. Die Umwandlung von reinem Binärsystem erfordert eine relativ komplexe Logik, die sich über Ziffern erstreckt, und für große Zahlen ist kein Algorithmus zur linearen Zeitumwandlung bekannt (siehe Binäres Zahlensystem § Umwandlung in und aus anderen Zahlensystemen).

        Nachteile Bearbeiten

        • Einige Operationen sind komplexer zu implementieren. Addierer erfordern zusätzliche Logik, damit sie vorzeitig umbrechen und einen Übertrag erzeugen. Für BCD-Add werden 15 bis 20 Prozent mehr Schaltungen benötigt als für reine Binärdateien. [Zitat benötigt] Multiplikation erfordert die Verwendung von Algorithmen, die etwas komplexer sind als Shift-Mask-Add (eine binäre Multiplikation, die binäre Verschiebungen und Additionen oder das Äquivalent pro Ziffer oder Zifferngruppe erfordert).
        • Standard-BCD benötigt vier Bits pro Ziffer, ungefähr 20 Prozent mehr Platz als eine binäre Codierung (das Verhältnis von 4 Bit zu log210 Bit sind 1,204). Wenn es so gepackt wird, dass drei Ziffern in zehn Bits codiert werden, wird der Speicheraufwand stark reduziert, auf Kosten einer Codierung, die nicht mit den 8-Bit-Bytegrenzen ausgerichtet ist, die auf existierender Hardware üblich sind, was zu langsameren Implementierungen auf diesen Systemen führt.
        • Praktische existierende Implementierungen von BCD sind typischerweise langsamer als Operationen auf binären Darstellungen, insbesondere auf eingebetteten Systemen, aufgrund der begrenzten Prozessorunterstützung für native BCD-Operationen. [50]

        Es gibt verschiedene BCD-Implementierungen, die andere Darstellungen für Zahlen verwenden. Programmierbare Rechner, die von Texas Instruments, Hewlett-Packard und anderen hergestellt werden, verwenden typischerweise ein Gleitkomma-BCD-Format, typischerweise mit zwei oder drei Ziffern für den (Dezimal-)Exponenten. Die zusätzlichen Bits der Vorzeichenziffer können verwendet werden, um spezielle numerische Werte anzuzeigen, wie beispielsweise unendlich, Unterlauf/Überlauf und Fehler (eine blinkende Anzeige).

        Signierte Variationen Bearbeiten

        Vorzeichenbehaftete Dezimalwerte können auf verschiedene Weise dargestellt werden. Die Programmiersprache COBOL unterstützt beispielsweise fünf in Zonen unterteilte Dezimalformate, von denen jedes das Ziffernzeichen anders codiert:

        Typ Beschreibung Beispiel
        Ohne Vorzeichen Kein Vorzeichen knabbern F1 F2 F3
        Nachgestelltes signiert (kanonisches Format) Vorzeichen-Nibble im letzten (niedrigstwertigen) Byte F1 F2 C3
        Signiert führend (Überschlag) Vorzeichen-Nibble im ersten (höchsten) Byte C1 F2 F3
        Signiert nachfolgend separat Separates Vorzeichenbyte ( '+' oder '−' ) nach den Ziffernbytes F1 F2 F3 2B
        Signiert führend separat Separates Vorzeichenbyte ( '+' oder '−' ) vor den Ziffernbytes 2B F1 F2 F3

        Telefonie binär codierte Dezimalzahl (TBCD) Bearbeiten

        3GPP entwickelt TBCD, [51] eine Erweiterung zu BCD, bei der die verbleibenden (unbenutzten) Bitkombinationen verwendet werden, um bestimmte Telefonzeichen hinzuzufügen, [52] [53] mit Ziffern, die denen im Originaldesign von Telefontastaturen ähneln.

        Dezimal
        Ziffer
        TBCD
        8 4 2 1
        * 1 0 1 0
        # 1 0 1 1
        ein 1 1 0 0
        B 1 1 0 1
        C 1 1 1 0
        Wird als Füller verwendet, wenn eine ungerade Anzahl von Stellen vorhanden ist 1 1 1 1

        Das erwähnte 3GPP-Dokument definiert TBCD-STRING mit vertauschten Nibbles in jedem Byte. Bits, Oktette und Ziffern indiziert ab 1, Bits von rechts, Ziffern und Oktette von links.

        Bits 8765 Oktett n Codierungsziffer 2n

        Bits 4321 von Oktett n Codierungsziffer 2 (n – 1) + 1

        Bedeutung Nummer 1234 würde in TBCD zu 21 43 werden.

        Wenn Darstellungs- und Berechnungsfehler wichtiger sind als die Geschwindigkeit der Umwandlung zur und von der Anzeige, kann eine skalierte Binärdarstellung verwendet werden, die eine Dezimalzahl als binärcodierte ganze Zahl und einen binärcodierten vorzeichenbehafteten Dezimalexponenten speichert. 0,2 kann beispielsweise als 2 × 10 − 1 dargestellt werden.

        Diese Darstellung ermöglicht eine schnelle Multiplikation und Division, erfordert jedoch möglicherweise eine Verschiebung um eine Zehnerpotenz während der Addition und Subtraktion, um die Dezimalpunkte auszurichten. Sie eignet sich für Anwendungen mit einer festen Anzahl von Nachkommastellen, die diese Anpassung dann nicht erfordern – insbesondere Finanzanwendungen, bei denen in der Regel 2 oder 4 Nachkommastellen ausreichen. Tatsächlich ist dies fast eine Form der Festpunktarithmetik, da die Position des Radixpunktes impliziert wird.

        Die Hertz- und Chen-Ho-Codierungen bieten Boolesche Transformationen zum Umwandeln von Gruppen von drei BCD-codierten Ziffern in und von 10-Bit-Werten [nb 1], die effizient in Hardware mit nur 2 oder 3 Gate-Verzögerungen codiert werden können. Dicht gepackte Dezimalzahl (DPD) ist ein ähnliches Schema [nb 1], das für die meisten Signifikanten, mit Ausnahme der führenden Ziffer, für eine der beiden alternativen Dezimalkodierungen verwendet wird, die im Gleitkomma-Standard IEEE 754-2008 spezifiziert sind.

        Das BIOS vieler PCs speichert Datum und Uhrzeit in BCD, weil der MC6818-Echtzeituhr-Chip, der im ursprünglichen IBM PC AT-Motherboard verwendet wird, die in BCD codierte Zeit bereitstellt. Dieses Formular kann zur Anzeige leicht in ASCII umgewandelt werden. [54] [55]

        Die Atari 8-Bit-Computerfamilie verwendet BCD, um Gleitkomma-Algorithmen zu implementieren. Der MOS 6502-Prozessor verfügt über einen BCD-Modus, der die Additions- und Subtraktionsbefehle beeinflusst. Die vom Hersteller bereitgestellte Software des Psion Organizer 1 Handheld-Computers verwendete auch vollständig BCD, um Gleitkommazahlen zu implementieren, spätere Psion-Modelle verwendeten ausschließlich Binär.

        Frühe Modelle der PlayStation 3 speichern Datum und Uhrzeit in BCD. Dies führte am 1. März 2010 zu einem weltweiten Ausfall der Konsole. Die letzten beiden Ziffern des als BCD gespeicherten Jahres wurden als 16 fehlinterpretiert, was zu einem Fehler im Datum des Geräts führte, wodurch die meisten Funktionen funktionsunfähig wurden. Dies wurde als das Jahr-2010-Problem bezeichnet.


        Rd Sharma 2018 für Klasse 9 Mathe Kapitel 1 - Zahlensystem

        Rd Sharma 2018 Solutions for Class 9 Math Chapter 1 Number System werden hier mit einfachen Schritt-für-Schritt-Erklärungen bereitgestellt. Diese Lösungen für das Zahlensystem sind bei Schülern der Klasse 9 äußerst beliebt, denn Mathe-Zahlensystemlösungen sind praktisch, um Ihre Hausaufgaben schnell zu erledigen und sich auf Prüfungen vorzubereiten. Alle Fragen und Antworten aus dem Rd Sharma 2018 Book of Class 9 Math Chapter 1 werden hier kostenlos für Sie bereitgestellt. Sie werden auch das werbefreie Erlebnis der Rd Sharma 2018 Solutions von Meritnation lieben. Alle Rd Sharma 2018 Lösungen für Klasse Klasse 9 Math werden von Experten erstellt und sind 100% genau.

        Seite Nr. 1.13:

        Frage 1:

        Drücken Sie die folgenden rationalen Zahlen als Dezimalzahlen aus:

        Antworten:

        (i) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Daher verwenden wir die lange Divisionsmethode wie folgt.

        (ii) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Daher verwenden wir die lange Divisionsmethode wie folgt.

        (iii) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Daher verwenden wir die lange Divisionsmethode wie folgt.

        Seite Nr. 1.13:

        Frage 2:

        Drücken Sie die folgenden rationalen Zahlen als Dezimalzahlen aus:
        (i) 2 3

        Antworten:

        (i) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        (ii) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        (iii) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        (iv) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        (v) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        (vi) Gegebene rationale Zahl ist

        Nun müssen wir diese rationale Zahl in Dezimalform ausdrücken. Also werden wir die lange Divisionsmethode verwenden

        Seite Nr. 1.13:

        Frage 3:

        Betrachten Sie mehrere Beispiele für rationale Zahlen in der Form p q   ( q   ≠ 0 ) , wobei P und Q sind ganze Zahlen ohne gemeinsame Faktoren außer 1 und mit abschließenden Dezimaldarstellungen. Können Sie erraten, welche Eigenschaft? Q muss erfüllen?

        Antworten:

        Primfaktorzerlegung ist der Prozess, um herauszufinden, welche Primzahlen Sie miteinander multiplizieren müssen, um eine bestimmte Zahl zu erhalten. Also Primfaktorzerlegung der Nenner (Q) darf nur die Potenz 2 oder 5 oder beides haben.

        Seite Nr. 1.22:

        Frage 1:

        Drücken Sie jede der folgenden Dezimalzahlen in der Form p q aus:

        (i) 0,39
        (ii) 0,750
        (iii) 2,15
        (iv) 7.010
        (v) 9,90
        (vi) 1.0001

        Antworten:

        Jetzt müssen wir die angegebene Dezimalzahl in die Form umwandeln

        Jetzt müssen wir die gegebene Dezimalzahl in die Form umwandeln

        Jetzt müssen wir die angegebene Dezimalzahl in die Form ausdrücken

        Nun müssen wir die angegebene Dezimalzahl in die Form ausdrücken

        Jetzt müssen wir die gegebene Dezimalzahl in die Form finden

        Jetzt müssen wir die gegebene Dezimalzahl in die Form finden

        Seite Nr. 1.22:

        Frage 2:

        Drücken Sie jede der folgenden Dezimalzahlen in der Form p q aus:
        (i) 0 . 4

        Antworten:

        Seite Nr. 1.31:

        Frage 1:

        Definiere eine irrationale Zahl.

        Antworten:

        Eine irrationale Zahl ist eine reelle Zahl, die nicht auf ein Verhältnis zwischen einer ganzen Zahl P und eine natürliche Zahl Q .

        Wenn die dezimale Darstellung einer irrationalen Zahl nicht terminiert und sich nicht wiederholt, wird sie als irrationale Zahl bezeichnet. Beispielsweise

        Seite Nr. 1.31:

        Frage 2:

        Erklären Sie, wie sich irrationale Zahlen von rationalen Zahlen unterscheiden.

        Antworten:

        Jede rationale Zahl muss entweder eine terminierende oder eine nicht terminierende Zahl haben, aber eine irrationale Zahl muss eine nicht terminierende und sich nicht wiederholende Dezimaldarstellung haben.

        Eine rationale Zahl ist eine Zahl, die als einfacher Bruch (Verhältnis) geschrieben werden kann und deren Nenner ungleich Null ist, während eine irrationale Zahl eine Zahl ist, die nicht als Verhältnis geschrieben werden kann.

        Seite Nr. 1.31:

        Frage 3:

        Untersuchen Sie, ob die folgenden Zahlen rational oder irrational sind:

        Antworten:

        Es ist nicht terminierend und nicht wiederholend

        Also ist eine irrationale Zahl

        Daher ist eine rationale Zahl.

        Wir kommen also zu einem Widerspruch.

        Also ist eine irrationale Zahl

        (iv) Sei die rationale Zahl

        Wenn wir auf beiden Seiten quadrieren, erhalten wir

        Seit, x ist eine rationale Zahl

        Aber ist eine irrationale Zahl

        Wir kommen also zum Widerspruch

        Also ist eine irrationale Zahl

        (v) Sei die rationale Zahl

        Wenn wir auf beiden Seiten quadrieren, erhalten wir

        Aber ist eine irrationale Zahl

        Wir kommen also zu einem Widerspruch

        Also ist eine irrationale Zahl

        (vi) Sei eine rationale Zahl.

        Seit, x ist rationale Zahl,

        &rArr x &ndash 6 ist eine rationale Zahl

        Aber wir wissen, dass das eine irrationale Zahl ist, die ein Widerspruch ist

        So ist eine irrationale Zahl

        (viii) Sei eine rationale Zahl

        Aber wir wissen, dass das eine irrationale Zahl ist

        Wir kommen also zu einem Widerspruch

        Also eine irrationale Zahl.

        (ix) Sei x   =   5 - 2 die rationale Zahl

        Wenn wir auf beiden Seiten quadrieren, erhalten wir

        x   =   5 - 2 x 2 = 5 - 2 2 x 2 = 25 + 4 - 4 5 x 2 - 29 = - 4 5 x 2 - 29 - 4 = 5

        x 2   ist   rational.   x 2 - 29   ist also   rational x 2 - 29 - 4   =   5   ist   rational .

        Aber 5 ist irrational. Wir kommen also zum Widerspruch

        Daher ist x   =   5 - 2 eine irrationale Zahl

        Es ist nicht terminierend oder nicht wiederholend

        Also ist eine irrationale Zahl

        Also ist eine rationale Zahl

        Daher ist es eine rationale Zahl

        Daher ist es eine rationale Zahl

        Es ist nicht terminierend oder nicht wiederholend

        Daher ist es eine irrationale Zahl

        Seite Nr. 1.31:

        Frage 4:

        Identifizieren Sie die folgenden als rationale oder irrationale Zahlen. Geben Sie die dezimale Darstellung rationaler Zahlen an:
        (i) ( 4 )

        Antworten:

        x = 2, was eine rationale Zahl ist


        3 18 = 3 3 × 3 × 2 = 3 × 3 2 = 9 2

        Es ist also eine irrationale Zahl

        Jetzt müssen wir prüfen, ob es rational oder irrational ist

        Jetzt müssen wir prüfen, ob es rational oder irrational ist

        Es ist also eine irrationale Zahl

        Jetzt müssen wir prüfen, ob es rational oder irrational ist

        Es ist also eine rationale Zahl

        Jetzt müssen wir prüfen, ob es rational oder irrational ist

        Seite Nr. 1.31:

        Frage 5:

        Finden Sie in den folgenden Gleichungen heraus, welche Variablen x, y, z usw. stellen rationale oder irrationale Zahlen dar:
        (ich)

        Antworten:

        Jetzt müssen wir den Wert von finden x

        So dass es x ist eine irrationale Zahl

        Jetzt müssen wir den Wert von finden ja

        So ja ist eine rationale Zahl

        Jetzt müssen wir den Wert von finden z

        Jetzt müssen wir den Wert von finden du

        Es ist also eine irrationale Zahl

        Jetzt müssen wir den Wert von finden v

        Es ist also eine irrationale Zahl

        Jetzt müssen wir den Wert von finden w

        Es ist also eine irrationale Zahl

        Jetzt müssen wir den Wert von finden T

        Es ist also eine irrationale Zahl

        Seite Nr. 1.31:

        Frage 6:

        Geben Sie zwei rationale Zahlen an, die zwischen 0.232332333233332 liegen. und 0.212112111211112.

        Antworten:

        Hier die dezimale Darstellung von ein und B sind nicht terminierend und nicht wiederholbar. Wir beobachten also, dass in der ersten Dezimalstelle von ein und B die gleiche Ziffer haben, aber Ziffern an der zweiten Stelle ihrer Dezimaldarstellung sind verschieden. Und die Zahl ein hat 3 und B hat 1. So ein > B.

        Also liegen zwei rationale Zahlen zwischen und

        Seite Nr. 1.31:

        Frage 7:

        Geben Sie zwei rationale Zahlen an, die zwischen 0,515115111511115 liegen. 0.5353353335.

        Antworten:

        Hier die dezimale Darstellung von ein und B sind nicht terminierend und nicht wiederholbar. Wir beobachten also, dass in der ersten Dezimalstelle ein und B die gleiche Ziffer haben, aber Ziffern an der zweiten Stelle ihrer Dezimaldarstellung sind verschieden. Und die Zahl ein hat 1 und B hat 3. Also ein < B.

        Also liegen zwei rationale Zahlen zwischen und

        Seite Nr. 1.32:

        Frage 8:

        Finden Sie eine irrationale Zahl zwischen 0,2101 und 0,222. = 0 . 2 ¯ .

        Antworten:

        Hier ein und B sind rationale Zahlen .Da ein hat terminiert und B hat sich wiederholende Dezimalstellen. Wir beobachten, dass in der zweiten Dezimalstelle ein hat 1 und B hat 2. Also ein < B.

        Somit liegt eine irrationale Zahl zwischen und

        Seite Nr. 1.32:

        Frage 9:

        Finden Sie eine rationale Zahl und auch eine irrationale Zahl zwischen den Zahlen 0.3033000003 . und 0.3010010001 .

        Antworten:

        Hier dezimale Darstellung von ein und B sind nicht terminierend und nicht wiederholbar. So ein und B sind irrationale Zahlen. Wir beobachten, dass in den ersten beiden Dezimalstellen von ein und B die gleiche Ziffer haben, aber die Ziffer an der dritten Stelle ihrer Dezimaldarstellung ist unterschiedlich.

        Also liegt eine rationale Zahl zwischen und

        Und die irrationale Zahl liegt zwischen und

        Seite Nr. 1.32:

        Frage 10:

        Finden Sie drei verschiedene irrationale Zahlen zwischen den rationalen Zahlen 5 7 und 9 11 .

        Antworten:

        Hier beobachten wir, dass in der ersten Dezimalstelle x hat Ziffer 7 und ja hat 8. Also x < ja. An der zweiten Dezimalstelle x hat Ziffer 1. Wenn wir also irrationale Zahlen betrachten

        a   =   0 . 72072007200072 . . b   =   0 . 73073007300073 . . c   =   0 . 74074007400074 . . . .

        Daher sind irrationale Zahlen erforderlich.

        Seite Nr. 1.32:

        Frage 11:

        Geben Sie jeweils ein Beispiel von zwei irrationalen Zahlen an, deren:
        (i) Differenz ist eine rationale Zahl.
        (ii) Differenz ist eine irrationale Zahl.
        (iii) Summe ist eine rationale Zahl.
        (iv) Summe ist eine irrationale Zahl.
        (v) Produkt ist eine rationale Zahl.
        (vi) Produkt ist eine irrationale Zahl.
        (vii) Quotient ist eine rationale Zahl.
        (viii) Quotient ist eine irrationale Zahl.

        Antworten:

        Daher sind und zwei irrationale Zahlen und ihre Differenz ist eine rationale Zahl

        (ii) Seien zwei irrationale Zahlen und ihre Differenz ist eine irrationale Zahl

        Denn ist eine irrationale Zahl

        (iii) Seien zwei irrationale Zahlen und ihre Summe ist eine rationale Zahl

        (iv) Seien zwei irrationale Zahlen und ihre Summe ist eine irrationale Zahl

        (v) Seien zwei irrationale Zahlen und ihr Produkt ist eine rationale Zahl

        (vi) Seien zwei irrationale Zahlen und ihr Produkt ist eine irrationale Zahl

        (vii) Seien zwei irrationale Zahlen und ihr Quotient ist eine rationale Zahl

        (viii) Seien zwei irrationale Zahlen und ihr Quotient ist eine irrationale Zahl

        Seite Nr. 1.32:

        Frage 12:

        Finden Sie zwei irrationale Zahlen zwischen 0,5 und 0,55.

        Antworten:

        Hier ein und B sind rationale Zahlen. Wir beobachten also, dass in der ersten Dezimalstelle ein und B haben die gleiche Ziffer .So ein < B.

        Somit liegen zwei irrationale Zahlen zwischen 0,5 und 0,55.

        Seite Nr. 1.32:

        Frage 13:

        Finden Sie zwei irrationale Zahlen zwischen 0,1 und 0,12.

        Antworten:

        Hier ein und B sind rationale Zahlen. Wir beobachten also, dass in der ersten Dezimalstelle ein und B gleiche Ziffer haben. So ein < B.

        Somit liegen zwei irrationale Zahlen zwischen 0,1 und 0,12.

        Seite Nr. 1.32:

        Frage 14:

        Beweisen Sie, dass 3 + 5 eine irrationale Zahl ist.

        Antworten:

        Da dies eine irrationale Zahl ist

        Jetzt müssen wir beweisen, dass es sich um eine irrationale Zahl handelt

        So gelangen wir zu einem Widerspruch, der ein rationaler, der falsch ist.

        Seite Nr. 1.36:

        Frage 1:

        Vervollständige die folgenden Sätze:
        (i) Jeder Punkt auf der Zahlengeraden entspricht a . Zahl, die viele entweder sein. oder .
        (ii) Die Dezimalform einer irrationalen Zahl ist weder . Noch .
        (iii) Die dezimale Darstellung einer rationalen Zahl ist entweder . oder .
        (iv) Jede reelle Zahl ist entweder . Nummer bzw. Nummer.

        Antworten:

        (i) Jeder Punkt auf der Zahlengeraden entspricht a Real Nummer, die entweder sein kann rational oder ein irrational Nummer.

        (ii) Die Dezimalform einer irrationalen Zahl ist weder beendend Noch wiederholend.

        (iii) Die dezimale Darstellung der rationalen Zahl ist entweder beenden, wiederkehrend.

        (iv) Jede reelle Zahl ist entweder rational Nummer oder ein irrational Zahl, weil rationale oder irrationale Zahlen eine Familie der reellen Zahlen sind.

        Seite Nr. 1.36:

        Frage 2:

        Finden Sie heraus, ob die folgende Aussage wahr oder falsch ist.
        (i) Jede reelle Zahl ist entweder rational oder irrational.
        (ii) π ist eine irrationale Zahl.
        (iii) Irrationale Zahlen können nicht durch Punkte auf dem Zahlenstrahl dargestellt werden.

        Antworten:

        (i) Stimmt, weil rationale oder irrationale Zahlen eine Familie der reellen Zahlen sind. Jede reelle Zahl ist also entweder eine rationale oder eine irrationale Zahl.

        (ii) Richtig, weil die dezimale Darstellung eines Irrationalen immer nicht terminiert oder sich nicht wiederholt. Also eine irrationale Zahl.

        (iii) Falsch, weil wir irrationale Zahlen durch Punkte auf der Zahlengeraden darstellen können.

        Seite Nr. 1.36:

        Frage 3:

        Stellen Sie 6 ,   7 ,   8 auf dem Zahlenstrahl dar.

        Antworten:

        Wir werden gebeten, auf dem Zahlenstrahl zu vertreten

        Wir werden einem bestimmten Algorithmus folgen, um diese Zahlen auf der reellen Linie darzustellen

        Wir werden den Punkt berücksichtigen EIN als Referenzpunkt zur Entfernungsmessung

        (1) Zeichne zuerst eine Linie AXT und YY &rsquo senkrecht zu AXT

        (3) Nimm EIN als Zentrum und AB Zeichnen Sie als Radius einen Bogen, der die Linie schneidet AXT bei EIN 1

        (5) Nimm EIN als Zentrum und AB 1 als Radius und zeichne einen Bogen, der die Linie schneidet AXT bei EIN 2 .

        So EIN 2 ist die Darstellung für

        (2) Nehmen EIN Zentrum und AB 2 als Radius und zeichne einen Bogen, der die horizontale Linie bei cut schneidet EIN 3 so dass

        Also Punkt EIN 3 ist die Darstellung von

        (3) Zeichnen Sie erneut die senkrechte Linie zu AXT

        (4) Nimm EIN als Zentrum und AB 3 als Radius und zeichne einen Bogen, der die horizontale Linie bei schneidet EIN 4

        EIN 4 ist im Grunde die Darstellung von

        Seite Nr. 1.36:

        Frage 4:

        Stellen Sie 3. 5 ,   9 . 4,   10. 5 auf dem reellen Zahlenstrahl.

        Antworten:

        Wir werden gebeten, die reellen Zahlen auf der reellen Zahlengeraden darzustellen

        Wir werden einem bestimmten Algorithmus folgen, um diese Zahlen auf der reellen Zahlengeraden darzustellen

        Wir werden nehmen EIN als Bezugspunkt zur Entfernungsmessung

        (1) Zeichnen Sie eine ausreichend große Linie und markieren Sie einen Punkt EIN darauf

        (2) Nehmen Sie einen Punkt B auf der Linie, so dass

        (3) Einen Punkt markieren C auf der Linie, so dass

        (4) Finden Sie den Mittelpunkt von AB und lass es sein Ö

        (5) Nimm Ö als Zentrum und OC als Radius und zeichnen Sie einen Halbkreis. Zeichne eine Senkrechte BD was den Halbkreis bei schneidet D

        (6) Nimm B als Zentrum und BD Zeichnen Sie als Radius einen Bogen, der die horizontale Linie bei schneidet E

        (7) Punkt E ist die Darstellung von

        Wir werden nehmen EIN als Bezugspunkt für die Entfernungsmessung. Wir werden der gleichen Figur in Teil (a) folgen.

        (1) Zeichnen Sie eine ausreichend große Linie und markieren Sie einen Punkt EIN darauf

        (2) Nehmen Sie einen Punkt B auf der Linie, so dass

        (3) Einen Punkt markieren C auf der Linie, so dass

        (4) Finden Sie den Mittelpunkt von AB und lass es sein Ö

        (5) Nimm Ö als Zentrum und OC als Radius und zeichnen Sie einen Halbkreis. Zeichne eine Senkrechte BC was den Halbkreis bei schneidet D

        (6) Nimm B als Zentrum und BD Zeichnen Sie als Radius einen Bogen, der die horizontale Linie bei schneidet E

        (7) Punkt E ist die Darstellung von

        Wir werden nehmen EIN als Bezugspunkt für die Entfernungsmessung. Wir werden der gleichen Figur in Teil (a) folgen.

        (1) Zeichnen Sie eine ausreichend große Linie und markieren Sie einen Punkt EIN an

        (2) Nehmen Sie einen Punkt B auf der Linie, so dass

        (3) Einen Punkt markieren C auf der Linie, so dass

        (4) Mittelpunkt von . finden AB und lass es sein Ö

        (5) Nimm Ö als Zentrum und OC als Radius und zeichnen Sie einen Halbkreis. Zeichne eine Senkrechte BC was den Halbkreis bei schneidet D

        (6) Nimm B als Zentrum und BD Zeichnen Sie als Radius einen Bogen, der die horizontale Linie bei . schneidet E

        (7) Punkt E ist die Darstellung von

        Seite Nr. 1.40:

        Frage 1:

        Visualisieren Sie 2,665 auf dem Zahlenstrahl mit fortlaufender Vergrößerung.

        Antworten:


        Wir wissen, dass 2,665 zwischen 2 und 3 liegt. Also teilen wir die Zahlengerade in 10 gleiche Teile
        und markieren Sie jeden Teilungspunkt. Die erste Markierung rechts von 2 ist 2.1, gefolgt von 2.2 und so weiter.
        Der Punkt links von 3 ist 2.9. Die vergrößerte Ansicht davon zeigt nun, dass 2,665 zwischen 2,6 und liegt
        2.7. Unser Fokus liegt jetzt also auf 2.6 und 2.7. Wir teilen dies wieder in 10 gleiche Teile. Der erste Teil wird sein
        2,61 gefolgt von 2,62 und so weiter.
        Wir vergrößern dies nun noch einmal und stellen fest, dass 2,665 zwischen 2,66 und 2,67 liegt. Also vergrößern wir diesen Teil
        und wieder in 10 gleiche Teile teilen. Der erste Teil wird 2.661 darstellen, der nächste wird 2.662 sein und so weiter.
        2,665 ist also die 5. Marke in dieser Unterteilung, wie in der Abbildung gezeigt.

        Seite Nr. 1.40:

        Frage 2:

        Visualisieren Sie die Darstellung von 5. 3 7 ¯ auf dem Zahlenstrahl bis zu 5 Dezimalstellen, also bis zu 5.37777.

        Antworten:


        Wir wissen, dass 5. 3 7 ¯ wird zwischen 5 und 6 liegen. Also suchen wir 5 . 3 7 ¯ zwischen 5 und 6. Wir teilen diesen Teil der Zahlengerade
        zwischen 5 und 6 in 10 gleiche Teile und verwenden Sie eine Lupe, um 5 zu visualisieren. 3 7 ¯ .
        5. 3 7 ¯ liegt zwischen 5,37 und 5,38. Visualisieren 5. 3 7 ¯ genauer verwenden wir eine Lupe, um zwischen 5,377 und 5,378 zu visualisieren.
        Auch hier teilen wir den Anteil zwischen 5.377 und 5.378 in 10 gleiche Teile auf und visualisieren näher, um darzustellen
        5. 3 7 ¯ wie in der Abbildung angegeben. Dieser befindet sich zwischen 5,3778 und 5,3777.

        Seite Nr. 1.40:

        Frage 1:

        Markieren Sie jeweils die richtige Alternative:

        1. Welche der folgenden Aussagen ist richtig?
        (a) Die Dezimalentwicklung einer rationalen Zahl ist terminierend
        (b) Dezimalentwicklung einer rationalen Zahl ist nicht terminierend
        (c) Die Dezimalentwicklung einer irrationalen Zahl ist terminiert
        (d) Die Dezimalentwicklung einer irrationalen Zahl ist nicht endend und nicht wiederholend

        Antworten:

        Die Dezimalentwicklung einer irrationalen Zahl ist nicht endend und nicht wiederholend. Daher können wir sagen, dass eine Zahl, deren Dezimalentwicklung nicht terminiert und sich nicht wiederholt, irrationale Zahl genannt wird. Und die Dezimalentwicklung der rationalen Zahl endet entweder oder wiederholt sich. Wir können also sagen, dass eine Zahl, deren Dezimalentwicklung entweder endet oder sich wiederholt, als rationale Zahl bezeichnet wird.

        Daher ist die richtige Option .

        Seite Nr. 1.40:

        Frage 2:

        Welche der folgenden Aussagen ist richtig?
        (a) Die Summe zweier irrationaler Zahlen ist immer eine irrationale Zahl
        (b) Die Summe zweier irrationaler Zahlen ist immer eine rationale Zahl
        (c) Die Summe zweier irrationaler Zahlen kann eine rationale Zahl oder eine irrationale Zahl sein
        (d) Die Summe zweier irrationaler Zahlen ist immer eine ganze Zahl

        Antworten:

        Da und sind zwei irrationale Zahlen und

        Daher kann die Summe zweier irrationaler Zahlen rational sein

        Nun seien und seien zwei irrationale Zahlen und

        Daher kann die Summe zweier irrationaler Zahlen irrational sein

        Daher ist die richtige Option .

        Seite Nr. 1.40:

        Frage 3:

        Welche der folgenden Aussagen ist richtig?
        (a) Summe zweier irrationaler Zahlen ist immer irrational
        (b) Summe einer rationalen und irrationalen Zahl ist immer eine irrationale Zahl
        (c) Quadrat einer irrationalen Zahl ist immer eine rationale Zahl
        (d) Die Summe zweier rationaler Zahlen kann niemals eine ganze Zahl sein

        Antworten:

        Die Summe aus irrationaler Zahl und rationaler Zahl ist immer irrationale Zahl.

        Lassen ein eine rationale Zahl sein und B eine irrationale Zahl sein.

        Als 2ab ist irrational, ist also irrational.

        Seite Nr. 1.40:

        Frage 4:

        Welche der folgenden Aussagen ist wahr?
        (a) Produkt zweier irrationaler Zahlen ist immer irrational
        (b) Produkt einer rationalen und einer irrationalen Zahl ist immer irrational
        (c) Summe zweier irrationaler Zahlen kann niemals irrational sein
        (d) Summe einer ganzen Zahl und einer rationalen Zahl kann niemals eine ganze Zahl sein

        Antworten:

        Denn wir wissen, dass das Produkt aus rationaler und irrationaler Zahl immer ein irrationales ist. Zum Beispiel: Seien rationale bzw. irrationale Zahlen und ihr Produkt ist


        4.8 — Gleitkommazahlen

        Ganzzahlen eignen sich hervorragend zum Zählen ganzer Zahlen, aber manchmal müssen wir speichern sehr große Zahlen oder Zahlen mit einem Bruchteil. EIN Gleitkomma Typvariable ist eine Variable, die eine reelle Zahl aufnehmen kann, z. B. 4320.0, -3.33 oder 0.01226. Das schwebend Teil des Namens Gleitkomma bezieht sich auf die Tatsache, dass der Dezimalpunkt "schweben" kann, dh eine variable Anzahl von Stellen vor und nach dem Dezimalpunkt unterstützen kann.

        Es gibt drei verschiedene Gleitkomma-Datentypen: schweben, doppelt, und langes Doppel. Wie bei Integern definiert C++ die tatsächliche Größe dieser Typen nicht (aber garantiert Mindestgrößen). Auf modernen Architekturen folgt die Gleitkommadarstellung fast immer dem Binärformat IEEE 754. In diesem Format beträgt ein Float 4 Byte, ein Double 8 und ein Long Double kann einem Double (8 Byte), 80 Bit (oft auf 12 Byte aufgefüllt) oder 16 Byte entsprechen.

        Gleitkomma-Datentypen sind immer vorzeichenbehaftet (können positive und negative Werte enthalten).

        Kategorie Typ Mindestmaß Typische Größe
        Gleitkomma schweben 4 Bytes 4 Bytes
        doppelt 8 Byte 8 Byte
        langes Doppel 8 Byte 8, 12 oder 16 Byte

        Hier sind einige Definitionen von Gleitkommazahlen:

        Geben Sie bei der Verwendung von Gleitkommaliteralen immer mindestens eine Dezimalstelle ein (auch wenn die Dezimalstelle 0 ist). Dies hilft dem Compiler zu verstehen, dass die Zahl eine Gleitkommazahl und keine ganze Zahl ist.

        Beachten Sie, dass Gleitkommaliterale standardmäßig den Typ double aufweisen. Ein f-Suffix wird verwendet, um ein Literal vom Typ float zu bezeichnen.

        Stellen Sie immer sicher, dass der Typ Ihrer Literale mit dem Typ der Variablen übereinstimmt, denen sie zugewiesen oder zum Initialisieren verwendet werden. Andernfalls kommt es zu einer unnötigen Konvertierung, möglicherweise mit einem Genauigkeitsverlust.

        Stellen Sie sicher, dass Sie keine Ganzzahlliterale verwenden, wo Gleitkommaliterale verwendet werden sollten. Dies umfasst das Initialisieren oder Zuweisen von Werten zu Gleitkommaobjekten, das Ausführen von Gleitkommaarithmetik und das Aufrufen von Funktionen, die Gleitkommawerte erwarten.

        Drucken von Gleitkommazahlen

        Betrachten Sie nun dieses einfache Programm:

        Die Ergebnisse dieses scheinbar einfachen Programms werden Sie vielleicht überraschen:

        Im ersten Fall hat std::cout 5 gedruckt, obwohl wir 5.0 eingegeben haben. Standardmäßig druckt std::cout den Nachkommateil einer Zahl nicht, wenn der Nachkommateil 0 ist.

        Im zweiten Fall wird die Zahl wie erwartet gedruckt.

        Im dritten Fall wurde die Zahl in wissenschaftlicher Notation gedruckt (wenn Sie eine Auffrischung der wissenschaftlichen Notation benötigen, siehe Lektion 4.7 – Einführung in die wissenschaftliche Notation).

        Angenommene IEEE 754-Darstellung:

        Größe Bereich Präzision
        4 Bytes ±1,18 x 10 -38 bis ±3,4 x 10 38 6-9 signifikante Stellen, typischerweise 7
        8 Byte ±2,23 x 10 -308 bis ±1,80 x 10 308 15-18 signifikante Stellen, typischerweise 16
        80-Bit (verwendet normalerweise 12 oder 16 Byte) ±3,36 x 10 -4932 bis ±1,18 x 10 4932 18-21 signifikante Stellen
        16 Byte ±3,36 x 10 -4932 bis ±1,18 x 10 4932 33-36 signifikante Stellen

        Der 80-Bit-Gleitkommatyp ist eine historische Anomalie. Auf modernen Prozessoren wird es normalerweise mit 12 oder 16 Byte implementiert (was eine natürlichere Größe für Prozessoren ist).

        Es mag etwas seltsam erscheinen, dass der 80-Bit-Gleitkommatyp denselben Bereich hat wie der 16-Byte-Gleitkommatyp. Dies liegt daran, dass sie die gleiche Anzahl von Bits für den Exponenten haben – die 16-Byte-Zahl kann jedoch höherwertige Ziffern speichern.

        Betrachten Sie den Bruch 1/3. Die dezimale Darstellung dieser Zahl ist 0,3333333333333… wobei die 3 ins Unendliche geht. Wenn Sie diese Zahl auf ein Blatt Papier schreiben, wird Ihr Arm irgendwann müde und Sie hören irgendwann auf zu schreiben. Und die Zahl, die Ihnen übrigbleibt, wäre in der Nähe von 0,3333333333…. (mit 3 geht ins Unendliche), aber nicht genau.

        Auf einem Computer würde eine unendlich lange Zahl zum Speichern unendlichen Speicher benötigen, und normalerweise haben wir nur 4 oder 8 Bytes. Dieser begrenzte Speicher bedeutet, dass Gleitkommazahlen nur eine bestimmte Anzahl von signifikanten Stellen speichern können – und dass alle zusätzlichen signifikanten Stellen verloren gehen. Die tatsächlich gespeicherte Nummer wird der gewünschten Nummer nahe kommen, aber nicht genau.

        Die Genauigkeit einer Gleitkommazahl legt fest, wie viele wichtige Ziffer es kann ohne Informationsverlust darstellen.

        Bei der Ausgabe von Gleitkommazahlen hat std::cout eine Standardgenauigkeit von 6 -- das heißt, es geht davon aus, dass alle Gleitkommavariablen nur auf 6 Stellen (die minimale Genauigkeit einer Gleitkommazahl) signifikant sind, und schneidet daher alles danach ab. .


        Schau das Video: Myomektomie und Zystozelen-Operationen - Esnaf Krankenhaus (November 2021).