Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Darstellung von Zeichen und Zahlen [Technische Informatik — Eine Einführung] Univ.-Prof. Dr. Paul Molitor Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg 1. November 2005 1 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Der Begriff der Information 2 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Der Begriff der Information Der Begriff der Information wird sowohl umgangssprachlich als auch in verschiedenen Wissenschaften unterschiedlich benutzt! 3 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Der Begriff der Information Der Begriff der Information wird sowohl umgangssprachlich als auch in verschiedenen Wissenschaften unterschiedlich benutzt! Example (Informationstheorie: Informationsgehalt, Eigeninformation) Information = Maß für die Beseitigung von Unbestimmtheit [...später mehr dazu, siehe Datenkompression] 4 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Der Begriff der Information Der Begriff der Information wird sowohl umgangssprachlich als auch in verschiedenen Wissenschaften unterschiedlich benutzt! Example (Informationstheorie: Informationsgehalt, Eigeninformation) Information = Maß für die Beseitigung von Unbestimmtheit [...später mehr dazu, siehe Datenkompression] Example (Informatik: Daten) Information = Daten ... daher auch der Begriff ”Informationsverarbeitung” 5 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Daten Die Daten, die in einem Rechner verarbeitet werden, sind vielfältig: Zeichen, z. B. über Tastatur eingegebenes Zeichen Text, z. B. Brief an das Finanzamt Zahlen Bilder und Videos Audio-Daten 6 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Daten Die Daten, die in einem Rechner verarbeitet werden, sind vielfältig: Zeichen, z. B. über Tastatur eingegebenes Zeichen Text, z. B. Brief an das Finanzamt Zahlen Bilder und Videos Audio-Daten Speicherung von Daten in digitalen ”binären” Rechner Auch wenn ein Algorithmus prinzipiell mit solchen Objekten operiert, letztendlich müssen sie (bei den heutigen digitalen Rechnern) als Folgen von Bits repräsentiert werden. 7 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Daten Die Daten, die in einem Rechner verarbeitet werden, sind vielfältig: Zeichen, z. B. über Tastatur eingegebenes Zeichen Text, z. B. Brief an das Finanzamt Zahlen Bilder und Videos Audio-Daten Speicherung von Daten in digitalen ”binären” Rechner Auch wenn ein Algorithmus prinzipiell mit solchen Objekten operiert, letztendlich müssen sie (bei den heutigen digitalen Rechnern) als Folgen von Bits repräsentiert werden. 8 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Bit, Byte, Wort, Doppelwort, ... Definition (Bit und Byte) Ein Bit ist eine Elementarinformation in Form einer einzelnen Ziffer, die entweder den Wert 0 oder den Wert 1 annehmen kann. Ob an einem Punkt der Wert 1 oder 0 anliegt, wird über das Potenzial an diesem Punkt definiert. Bei nichtinvertierender Logik z. B. liegt an einem Punkt der Wert 1 dann an, wenn sein Potenzial größer als die Schwellenspannung eines Transistors ist. 9 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Bit, Byte, Wort, Doppelwort, ... Definition (Bit und Byte) Ein Bit ist eine Elementarinformation in Form einer einzelnen Ziffer, die entweder den Wert 0 oder den Wert 1 annehmen kann. Eine Folge von acht Bits wird als Byte bezeichnet. Bei einem 2k -Bit Rechner besteht ein Wort aus 2k Bits, ein Doppelwort aus 2 · 2k Bit. 10 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Bit, Byte, Wort, Doppelwort, ... Definition (Bit und Byte) Ein Bit ist eine Elementarinformation in Form einer einzelnen Ziffer, die entweder den Wert 0 oder den Wert 1 annehmen kann. Eine Folge von acht Bits wird als Byte bezeichnet. Durch ein Byte können 28 = 256 verschiedene Werte/Zeichen dargestellt werden Bei einem 2k -Bit Rechner besteht ein Wort aus 2k Bits, ein Doppelwort aus 2 · 2k Bit. Für k = 32 bzw. k = 64 können mit einem Wort 4.294.967.296 bzw. 18.446.744.073.709.551.616 verschiedene Informationen dargestellt werden. 11 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Codes Welches Byte welches Zeichen darstellt, ist eine Frage der Kodierung! Definition (Code) Gegeben sei ein endliches Alphabet A, also eine endliche Menge von Symbolen. Weiterhin sei B∗ die Menge aller beliebig langen endlichen Bitfolgen. 1 Ein Code ist eine injektive Abbildung c : A → B∗ . 2 Ein Code c heißt auch Code fester Länge oder genauer Code der Länge n, wenn c : A → B, B ⊆ Bn für beliebiges n ∈ N gilt, 3 Die Menge aller Codewörter eines Codes c ist durch c(A) := { w ∈ B∗ ; ∃ a ∈ A : c(a) = w } gegeben. 12 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Codes Welches Byte welches Zeichen darstellt, ist eine Frage der Kodierung! Definition (Code) Gegeben sei ein endliches Alphabet A, also eine endliche Menge von Symbolen. Weiterhin sei B∗ die Menge aller beliebig langen endlichen Bitfolgen. 1 Ein Code ist eine injektive Abbildung c : A → B∗ . 2 Ein Code c heißt auch Code fester Länge oder genauer Code der Länge n, wenn c : A → B, B ⊆ Bn für beliebiges n ∈ N gilt, 3 Die Menge aller Codewörter eines Codes c ist durch c(A) := { w ∈ B∗ ; ∃ a ∈ A : c(a) = w } gegeben. 13 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Codes Example Gegeben sei das Alphabet A1 := {rot, grün, blau}. Dann ist die Abbildung c1 : A1 → B24 , c1 := { (rot (grün (blau 7→ 7→ 7→ 1111 1111 0000 0000 0000 0000), 0000 0000 1111 1111 0000 0000), 0000 0000 0000 0000 1111 1111) } ein Code der Länge 24. 14 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Codes Example Gegeben sei das Alphabet A1 := {rot, grün, blau}. Dann ist die Abbildung c1 : A1 → B24 , c1 := { (rot (grün (blau 7→ 7→ 7→ 1111 1111 0000 0000 0000 0000), 0000 0000 1111 1111 0000 0000), 0000 0000 0000 0000 1111 1111) } ein Code der Länge 24. Example Gegeben sei das Alphabet A2 := {lila, violett, gelb}. Dann ist die Abbildung c2 : A2 → B24 , c2 := { (lila (violett (gelb 7→ 7→ 7→ 1111 1111 0000 0000 1111 1111), 1111 1111 0000 0000 1111 1111), 1111 1111 1111 1111 0000 0000) } kein Code. 15 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele ASCII (American Standard Code for Information Interchange) Tabelle: Code-Tabelle für den ASCII-Code c6 c5 c4 c3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 c2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 c1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 c0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 NUL SOH SFX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS QS RS US ! ” # $ % & ’ ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; ¡ = ¿ ? A B C D E F G H I J K L M N O | {z } Steuerzeichen | 1 0 1 1 1 0 1 1 1 P Q R S T U V W X Y Z [ \ ] ˆ ‘ a b c d e f g h i j k l m n o p q r s t u v w x y z { — } * DEL {z } Schriftzeichen 16 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Kodierung und Dekodierung von Zeichen Kodierung bzw. Verschlüsselung Vorgang des ”Übersetzens” eines Zeichens in sein Codewort. Dekodierung bzw. Entschlüsselung Vorgang des ”Rückübersetzens” eines Codeswortes in das dazugehörige Zeichen. 17 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Gegeben sei ein endliches Alphabet A der Größe m. Wie hat man A zu kodieren? 18 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Gegeben sei ein endliches Alphabet A der Größe m. Wie hat man A zu kodieren? Bei Codes fester Länge n: Wie groß muss n sein? 19 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Gegeben sei ein endliches Alphabet A der Größe m. Wie hat man A zu kodieren? Bei Codes fester Länge n: Wie groß muss n sein? Es muss n ≥ dlog2 me gelten! 20 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Gegeben sei ein endliches Alphabet A der Größe m. Wie hat man A zu kodieren? Bei Codes fester Länge n: Wie groß muss n sein? Es muss n ≥ dlog2 me gelten! ... ist eine Folgerung aus Definition (Tiefe eines gerichteten Baumes) Die Tiefe eines gerichteten Baumes T ist gegeben durch die Länge des längsten Pfades von der Wurzel von T zu einem seiner Blätter. Lemma Ein binärer Baum der Tiefe k besitzt höchstens 2k Blätter. 21 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Wie hat man A zu kodieren? Welche zusätzlichen Ziele werden mit der Kodierung verfolgt? 22 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Wie hat man A zu kodieren? Welche zusätzlichen Ziele werden mit der Kodierung verfolgt? Mögliche Ziele keine weiteren Ziele Fehlererkennung Fehlerkorrektur Minimierung der mittleren Codewortlänge 23 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Wie hat man A zu kodieren? Welche zusätzlichen Ziele werden mit der Kodierung verfolgt? Mögliche Ziele keine weiteren Ziele Fehlererkennung Es muss n ≥ dlog2 me + r für ein r ≥ 1 gelten! [für Weiteres siehe später...] Fehlerkorrektur Minimierung der mittleren Codewortlänge 24 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Wie hat man A zu kodieren? Welche zusätzlichen Ziele werden mit der Kodierung verfolgt? Mögliche Ziele keine weiteren Ziele Fehlererkennung Es muss n ≥ dlog2 me + r für ein r ≥ 1 gelten! [für Weiteres siehe später...] Fehlerkorrektur Es muss n ≥ dlog2 me + r für ein r ≥ dlog2 log2 me gelten! [für Weiteres siehe später...] Minimierung der mittleren Codewortlänge 25 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Codes: Definition und Beispiele Codes: Eigenschaften und Ziele Welcher Code für welchen Zweck? Wie hat man A zu kodieren? Welche zusätzlichen Ziele werden mit der Kodierung verfolgt? Mögliche Ziele keine weiteren Ziele Fehlererkennung Es muss n ≥ dlog2 me + r für ein r ≥ 1 gelten! [für Weiteres siehe später...] Fehlerkorrektur Es muss n ≥ dlog2 me + r für ein r ≥ dlog2 log2 me gelten! [für Weiteres siehe später...] Minimierung der mittleren Codewortlänge Der Code muss ein Code variabler Länge sein! [für Weiteres siehe später...] 26 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zahlendarstellungen Es gibt mehrere Möglichkeiten, Zahlen im Rechner darzustellen: Festkommadarstellungen Gleitkommadarstellungen Die verschiedenen Darstellungen besitzen unterschiedliche Eigenschaften! 27 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zahlendarstellungen Es gibt mehrere Möglichkeiten, Zahlen im Rechner darzustellen: Festkommadarstellungen Darstellung durch Betrag und Vorzeichen (engl.: sign and magnitude representation) Einer-Komplement-Darstellung (engl.: one’s complement representation) Zweier-Komplement-Darstellung (engl.: two’s complement representation) Gleitkommadarstellungen Die verschiedenen Darstellungen besitzen unterschiedliche Eigenschaften! 28 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zahlendarstellungen Es gibt mehrere Möglichkeiten, Zahlen im Rechner darzustellen: Festkommadarstellungen Darstellung durch Betrag und Vorzeichen (engl.: sign and magnitude representation) Einer-Komplement-Darstellung (engl.: one’s complement representation) Zweier-Komplement-Darstellung (engl.: two’s complement representation) Gleitkommadarstellungen Gleitkommadarstellung nach dem IEEE 754 Format Die verschiedenen Darstellungen besitzen unterschiedliche Eigenschaften! 29 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Stellenwertsysteme Ein Stellenwertsystem (Zahlensystem) ist ein Tripel S = (b, Z , δ) mit: 1 b ≥ 2 ist eine natürliche Zahl, die Basis des Stellenwertsystems. 2 Z ist eine b-elementige Menge von Symbolen, die auch als Ziffern bezeichnet werden. 3 δ : Z → {0, 1, . . . , b − 1} ist eine Abbildung, die jeder Ziffer eine natürliche Zahl zwischen 0 und b − 1 zuordnet. 30 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Stellenwertsysteme Ein Stellenwertsystem (Zahlensystem) ist ein Tripel S = (b, Z , δ) mit: 1 b ≥ 2 ist eine natürliche Zahl, die Basis des Stellenwertsystems. 2 Z ist eine b-elementige Menge von Symbolen, die auch als Ziffern bezeichnet werden. 3 δ : Z → {0, 1, . . . , b − 1} ist eine Abbildung, die jeder Ziffer eine natürliche Zahl zwischen 0 und b − 1 zuordnet. Example b b b b Basis b = 2 = 8 = 10 = 16 Zahlensystem Binärsystem Oktalsystem Dezimalsystem Hexadezimalsystem Ziffernmenge Z 0, 1 0, 1, 2, 3, 4, 5, 6, 7 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,A,B,C,D,E,F Reihenfolge der Ziffern gemäß wie sie auf die jeweiligen Zahlen abgebildet werden. 31 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Festkommadarstellung ohne Vorzeichen Definition (Nichtnegative Festkommazahl) Gegeben sei ein Zahlensystem S := (b, Z , δ) sowie n, k ∈ N . Eine nichtnegative Festkommazahl d mit n Vor- und k Nachkommastellen ist eine Folge von Ziffern aus Z , deren Länge n + k beträgt. Der Wert hdi von d := dn dn−1 . . . d1 d0 d−1 . . . d−k {z | Vorkommastellen } | {z } Nachkommastellen mit di ∈ Z (−k ≤ i ≤ n) beträgt hdi := n X δ(di ) · b i . i=−k 32 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Festkommadarstellung ohne Vorzeichen Definition (Nichtnegative Festkommazahl) Gegeben sei ein Zahlensystem S := (b, Z , δ) sowie n, k ∈ N . Eine nichtnegative Festkommazahl d mit n Vor- und k Nachkommastellen ist eine Folge von Ziffern aus Z , deren Länge n + k beträgt. Der Wert hdi von d := dn dn−1 . . . d1 d0 d−1 . . . d−k {z | Vorkommastellen } | {z } Nachkommastellen mit di ∈ Z (−k ≤ i ≤ n) beträgt hdi := n X δ(di ) · b i . i=−k Ist die Basis des benutzten Stellenwertsystems nicht unmittelbar aus dem Kontext ersichtlich, versieht man die Ziffernfolge mit der Basis als Index. 33 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Wir betrachten die Festkommazahl 0110, die je nach Basis b des Stellenwertsystems, bezüglich dessen sie interpretiert wird, unterschiedliche Werte darstellt. Dabei sind in diesem Beispiel sämtliche Ziffern der Zahl Vorkommastellen, es gilt also n = 3 und k = 0. Basis Festkommazahl Dezimalwert 2 01102 610 8 01108 7210 10 011010 11010 34 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zahlen sind zum Rechnen da! Wie kann man in den verschiedenen Stellenwertsystemen rechnen? 35 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zahlen sind zum Rechnen da! Wie kann man in den verschiedenen Stellenwertsystemen rechnen? Mögliche Realisierungen arithmetischer Operationen: [später mehr...] 36 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Darstellung durch Betrag und Vorzeichen Definition (Darstellung durch Betrag und Vorzeichen) Gegeben sei eine Festkommazahl d := dn dn−1 . . . d0 d−1 . . . d−k mit n + 1 Vor- und k Nachkommastellen (k, n ≥ 0). Interpretiert man d als Darstellung durch Betrag und Vorzeichen, so wird dies durch die Bezeichnung [d]BV gekennzeichnet. Die Bitstelle dn repräsentiert das Vorzeichen, und durch die Stellen dn−1 . . . d0 d−1 . . . d−k wird der Betrag von d dargestellt. Der Dezimalwert [d]BV ergibt sich somit zu X n−1 [dn dn−1 . . . d0 d−1 . . . d−k ]BV := (−1)dn · di · 2i . i=−k 37 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Darstellung durch Betrag und Vorzeichen Example (n = 2 und k = 0) d [d]BV 000 0 001 1 010 2 011 3 100 0 101 −1 110 −2 111 −3 38 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Darstellung durch Betrag und Vorzeichen Eigenschaften der Darstellung durch Betrag und Vorzeichen 1 Symmetrischer Zahlenbereich: [−(2n − 2−k ), 2n − 2−k ] 2 Keine kanonische Darstellung der Zahlen aus dem Zahlenbereich! 3 Addition und Subtraktion sind recht kompliziert in dieser Darstellung! [als Übung...] 39 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Definition Gegeben sei eine Festkommazahl d := dn dn−1 . . . d0 d−1 . . . d−k mit n + 1 Vor- und k Nachkommastellen (k, n > 0). Interpretiert man d als Darstellung im Einer-Komplement, so wird dies durch die Bezeichnung [d]1 gekennzeichnet. Die Bitstelle dn repräsentiert wieder das Vorzeichen. Der Dezimalwert [d]1 ergibt sich zu 0 n−1 X [dn dn−1 . . . d0 d−1 . . . d−k ]1 := @ 1 di · 2 A − dn · 2n − 2−k . i i=−k 40 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung 41 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Lemma (Negation von Bitfolgen im Einer-Komplement) Seien d und d 0 Bitfolgen. Zudem gehe d 0 durch Komplementieren aller Bits aus d hervor. Dann gilt: [d 0 ]1 = −[d]1 42 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = 43 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = = 0 n−1 X @ 0 1 n−1 X n −k A +@ di · 2 − dn · 2 − 2 i=−k i=−k i di0 1 · 2 A − dn0 · 2n − 2−k i 44 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = = 0 n−1 X @ 0 1 n−1 X n −k A +@ di · 2 − dn · 2 − 2 i=−k i=−k = 0 1 n−1 X 0 iA @ (di + di ) · 2 − (dn + dn0 ) · 2n − 2−k i di0 1 · 2 A − dn0 · 2n − 2−k i i=−k 45 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = = 0 n−1 X @ 0 1 n−1 X n −k A +@ di · 2 − dn · 2 − 2 i=−k i=−k = 0 1 n−1 X 0 iA @ (di + di ) · 2 − (dn + dn0 ) · 2n − 2−k = 0 1 n−1 X i @ (di + (1 − di )) · 2 A − (dn + (1 − dn )) · 2n − 2−k i di0 1 · 2 A − dn0 · 2n − 2−k i i=−k i=−k 46 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = = 0 n−1 X @ 0 1 n−1 X n −k A +@ di · 2 − dn · 2 − 2 i=−k i=−k = 0 1 n−1 X 0 iA @ (di + di ) · 2 − (dn + dn0 ) · 2n − 2−k = 0 1 n−1 X i @ (di + (1 − di )) · 2 A − (dn + (1 − dn )) · 2n − 2−k i di0 1 · 2 A − dn0 · 2n − 2−k i i=−k i=−k X n−1 = 2i − (2n − 2−k ) i=−k 47 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Beweis: [d 0 ]1 + [d]1 = = 0 n−1 X @ 0 1 n−1 X n −k A +@ di · 2 − dn · 2 − 2 i=−k i=−k = 0 1 n−1 X 0 iA @ (di + di ) · 2 − (dn + dn0 ) · 2n − 2−k = 0 1 n−1 X i @ (di + (1 − di )) · 2 A − (dn + (1 − dn )) · 2n − 2−k i di0 1 · 2 A − dn0 · 2n − 2−k i i=−k i=−k X n−1 = 2i − (2n − 2−k ) i=−k = (2n − 2−k ) − (2n − 2−k ) = 0 48 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Einer-Komplement-Darstellung Eigenschaften der Einer-Komplement-Darstellung 1 Symmetrischer Zahlenbereich: [−(2n − 2−k ), 2n − 2−k ] 2 Keine kanonische Darstellung der Zahlen aus dem Zahlenbereich! 3 Addition und Subtraktion sind effizient realisierbar. [wird später explizit nachgewiesen...] 49 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Definition Gegeben sei eine Festkommazahl d := dn dn−1 . . . d0 d−1 . . . d−k mit n + 1 Vor- und k Nachkommastellen (k, n > 0). Interpretiert man d als Darstellung im Zweier-Komplement, so wird dies durch die Bezeichnung [d]2 gekennzeichnet. Die Bitstelle dn repräsentiert wieder das Vorzeichen. Der Dezimalwert [d]2 ergibt sich zu 0 n−1 X [dn dn−1 . . . d0 d−1 . . . d−k ]2 := @ 1 di · 2 A − dn · 2n . i i=−k 50 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung 51 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Lemma (Negation von Bitfolgen im Einer-Komplement) Seien d und d 0 Bitfolgen. Zudem gehe d 0 durch Komplementieren aller Bits aus d hervor. Dann gilt: [d 0 ]2 + 2−k = −[d]2 52 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = 53 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = = 0 n−1 X @ 1 0 n−1 X n di · 2 A − dn · 2 + @ i=−k i=−k i di0 1 · 2 A − dn0 · 2n i 54 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = = 0 n−1 X @ 1 0 n−1 X n di · 2 A − dn · 2 + @ i=−k i=−k = 0 1 n−1 X 0 i @ (di + di ) · 2 A − (dn + dn0 ) · 2n i di0 1 · 2 A − dn0 · 2n i i=−k 55 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = = 0 n−1 X @ 1 0 n−1 X n di · 2 A − dn · 2 + @ i=−k i=−k = 0 1 n−1 X 0 i @ (di + di ) · 2 A − (dn + dn0 ) · 2n i di0 1 · 2 A − dn0 · 2n i i=−k X n−1 = 2i − 2n i=−k 56 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = = 0 n−1 X @ 1 0 n−1 X n di · 2 A − dn · 2 + @ i=−k i=−k = 0 1 n−1 X 0 i @ (di + di ) · 2 A − (dn + dn0 ) · 2n i di0 1 · 2 A − dn0 · 2n i i=−k X n−1 = 2i − 2n i=−k = (2n − 2−k ) − 2n = −2−k 57 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Beweis: [d 0 ]2 + [d]2 = = 0 n−1 X @ 1 0 n−1 X n di · 2 A − dn · 2 + @ i=−k i=−k = 0 1 n−1 X 0 i @ (di + di ) · 2 A − (dn + dn0 ) · 2n i di0 1 · 2 A − dn0 · 2n i i=−k X n−1 = 2i − 2n i=−k = (2n − 2−k ) − 2n = −2−k =⇒ [d 0 ]2 + 2−k = −[d]2 58 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zweier-Komplement-Darstellung Eigenschaften der Zweier-Komplement-Darstellung 1 Asymmetrischer Zahlenbereich: [−2n , 2n − 2−k ] 2 Kanonische Darstellung der Zahlen aus dem Zahlenbereich! 3 Addition und Subtraktion sind effizient realisierbar. 59 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 60 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 Ü S 61 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 0 0 Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 62 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 0 0 Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1 0 0 1 63 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 0 0 Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 0 0 1 64 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! 0 0 Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 65 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 66 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die binäre Addition kann bei positiven Zahlen analog zur Schulmethode erfolgen! Ü S 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 In der Tat, es gilt 7+6=13. 67 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 68 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 Ü S 69 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 0 1 Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 0 1 70 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 0 1 Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 0 1 71 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 0 1 Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 1 72 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! 0 1 Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 1 0 0 0 1 73 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 74 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 In der Tat, es gilt 7+(-6)=1. 75 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Die Schulmethode funktioniert bei Verwendung der Zweier-Komplement auch wenn ein Operand oder beide Operanden negativ sind ! Ü S 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 In der Tat, es gilt 7+(-6)=1. Ist das immer so oder nur in diesem Beispiel? 76 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Definition (Formale Summe) Die formale Summe der Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) ist gegeben durch den Bitvektor s = (sn , sn−1 , . . . , s0 , s−1 , . . . , b−k ), der durch si = (ai + bi + ci−1 ) mod 2 mit ci 8 < = : 0 falls i = −(k + 1) (ai + bi + ci−1 ) div 2 falls i ≥ −k. definiert ist. 77 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k 78 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. 79 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 0 Zeige (beispielsweise durch Induktion) [a]2 + [b]2 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n 80 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 0 Zeige (beispielsweise durch Induktion) [a]2 + [b]2 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n Dann gilt [a]2 + [b]2 = [s]2 ⇐⇒ cn−1 = 0 81 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 0 Zeige (beispielsweise durch Induktion) [a]2 + [b]2 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n Dann gilt [a]2 + [b]2 = [s]2 ⇐⇒ cn−1 = 0 ⇐⇒ 0 ≤ [a]2 + [b]2 ≤ 2n − 2−k 82 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 1 83 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n+1 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n+1 84 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n+1 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n+1 Dann gilt wegen sn = cn−1 und 2n − 2n+1 = −2n [a]2 + [b]2 = [s]2 ⇐⇒ cn−1 = 1 85 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an = bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n+1 = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n+1 Dann gilt wegen sn = cn−1 und 2n − 2n+1 = −2n [a]2 + [b]2 = [s]2 ⇐⇒ cn−1 = 1 ⇐⇒ −2n ≤ [a]2 + [b]2 < 0 86 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an + bn = 1 87 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an + bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n 88 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an + bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n = [0, sn−1 , . . . , s−k ]2 − (1 − cn−1 ) · 2n 89 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an + bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n = [0, sn−1 , . . . , s−k ]2 − (1 − cn−1 ) · 2n = [0, sn−1 , . . . , s−k ]2 − sn · 2n 90 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition in der Zweier-Komplement-Darstellung Theorem (Addition im Zweier-Komplement) Für alle Bitvektoren a = (an , an−1 . . . , a0 , a−1 , . . . , a−k ) und b = (bn , bn−1 , . . . , b0 , b−1 , . . . , b−k ) gilt: [a]2 + [b2 ] = [s]2 ⇐⇒ −2n ≤ [a]2 + [b]2 ≤ 2n − 2−k Beweisidee Mache eine Fallunterscheidung nach den Vorzeichen der Operanden. Fall an + bn = 1 Aus dem ersten Fall und der Definition des Zweier-Kompplements folgt [a]2 + [b]2 = [0, an−1 , . . . , a−k ]2 + [0, bn−1 , . . . , b−k ]2 − 2n = [0, sn−1 , . . . , s−k ]2 + cn−1 · 2n − 2n = [0, sn−1 , . . . , s−k ]2 − (1 − cn−1 ) · 2n = [0, sn−1 , . . . , s−k ]2 − sn · 2n = [s]2 91 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! 92 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 0 0 1 1 93 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 x · y0 0 0 1 1 94 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 x · y0 0 0 1 1 shift x · y1 add 0 0 0 0 0 1 0 1 0 1 1 0 1 1 95 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 x · y0 0 0 1 1 shift x · y1 add 0 0 0 0 0 1 0 1 0 1 1 0 shift x · y2 add 0 0 0 0 0 1 1 1 0 0 1 1 1 1 0 1 0 1 96 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 x · y0 0 0 1 1 shift x · y1 add 0 0 0 0 0 1 0 1 0 1 1 0 shift x · y2 add 0 0 0 0 0 1 1 1 0 0 1 1 shift x · y3 add 0 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 0 1 1 0 1 1 0 1 97 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Die binäre Multiplikation erfolgt bei positiven Zahlen wie in der Schulmethode! x y 0 0 0 1 1 1 1 1 x · y0 0 0 1 1 shift x · y1 add 0 0 0 0 0 1 0 1 0 1 1 0 shift x · y2 add 0 0 0 0 0 1 1 1 0 0 1 1 shift x · y3 add 0 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 0 1 1 0 1 1 0 1 In der Tat, es gilt 3 · 7 = 21. 98 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Blöcke von Nullen bzw. Blöcke von Einsen können ”übersprungen” werden! 99 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Blöcke von Nullen bzw. Blöcke von Einsen können ”übersprungen” werden! Enthält ein Multiplikator y einen Nullblock der Länge k, so kann die Multiplikation durch einen arithmetischen Shift des Partialproduktes nach rechts um k Stellen beschleunigt werden. Die k Additionen mit Null entfallen. 100 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Blöcke von Nullen bzw. Blöcke von Einsen können ”übersprungen” werden! Enthält ein Multiplikator y einen Nullblock der Länge k, so kann die Multiplikation durch einen arithmetischen Shift des Partialproduktes nach rechts um k Stellen beschleunigt werden. Die k Additionen mit Null entfallen. Enthält der Multiplikator y einen Block mit Einser von Stelle u bis Stelle v mit u < v , d. h. ...011...110... so können die zum Einsblock gehörigen v − u + 1 Additionen der Multiplikation nach Schulmethode durch eine Addition an der Stelle v + 1 und eine Subtraktion an der Stelle u ersetzt werden. 101 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Blöcke von Nullen bzw. Blöcke von Einsen können ”übersprungen” werden! Enthält ein Multiplikator y einen Nullblock der Länge k, so kann die Multiplikation durch einen arithmetischen Shift des Partialproduktes nach rechts um k Stellen beschleunigt werden. Die k Additionen mit Null entfallen. Enthält der Multiplikator y einen Block mit Einser von Stelle u bis Stelle v mit u < v , d. h. ...011...110... so können die zum Einsblock gehörigen v − u + 1 Additionen der Multiplikation nach Schulmethode wegen [...011...110...]2 = v X i=u 2i = v X i=0 X u−1 2i − 2j = 2v +1 − 2u j=0 durch eine Addition an der Stelle v + 1 und eine Subtraktion an der Stelle u ersetzt werden. 102 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Arithmetische Operationen sind also nur an 0/1 bzw. 1/0 Übergängen im Multiplikator notwendig! 103 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Arithmetische Operationen sind also nur an 0/1 bzw. 1/0 Übergängen im Multiplikator notwendig! Rechenvorschrift yi yi−1 Operation mit y−(k+1) = 0. 104 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Arithmetische Operationen sind also nur an 0/1 bzw. 1/0 Übergängen im Multiplikator notwendig! Rechenvorschrift yi yi−1 Operation 0 0 shift 1 1 shift mit y−(k+1) = 0. 105 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Arithmetische Operationen sind also nur an 0/1 bzw. 1/0 Übergängen im Multiplikator notwendig! Rechenvorschrift yi yi−1 Operation 0 0 shift 0 1 add and shift 1 1 shift mit y−(k+1) = 0. 106 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Arithmetische Operationen sind also nur an 0/1 bzw. 1/0 Übergängen im Multiplikator notwendig! Rechenvorschrift yi yi−1 Operation 0 0 shift 0 1 add and shift 1 0 sub and shift 1 1 shift mit y−(k+1) = 0. 107 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 Operation Zwischenergebnis 0000 108 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 Operation Zwischenergebnis 0000 ↑ 109 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ Operation Zwischenergebnis 0000 shift 0000 0 110 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ 111 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 sub 0010 1110 0 112 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 113 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 ↑ 114 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 shift 1111 100 115 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 shift 1111 100 ↑ 116 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 shift 1111 100 add 0010 0001 100 117 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 shift 1111 100 add 0010 0001 100 ↑ 118 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Beispiel x y3 y2 y1 y0 0010 0 1 1 0 ↑ ↑ Operation Zwischenergebnis 0000 shift 0000 0 ↑ sub 0010 1110 0 ↑ shift 1111 00 shift 1111 100 ↑ add 0010 0001 100 ↑ shift 0000 1100 119 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Theorem (Satz von Booth) Das Verfahren von Booth ist korrekt, auch wenn einer oder zwei der Operanden negative Zahlen sind. 120 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Theorem (Satz von Booth) Das Verfahren von Booth ist korrekt, auch wenn einer oder zwei der Operanden negative Zahlen sind. Beweis: Wir betrachten im Verfahren von Booth an jeder Stelle die Differenz yi−1 − yi und berechnen das Multiplikationsergebnis durch die Summe p = 0 1 n X iA @ (yi−1 − yi ) · 2 · [x]2 i=−k 121 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Theorem (Satz von Booth) Das Verfahren von Booth ist korrekt, auch wenn einer oder zwei der Operanden negative Zahlen sind. Beweis: Wir betrachten im Verfahren von Booth an jeder Stelle die Differenz yi−1 − yi und berechnen das Multiplikationsergebnis durch die Summe p = 0 1 n X iA @ (yi−1 − yi ) · 2 · [x]2 = 0 n−1 X @−yn · 2n + y−k−1 · 2−k + i=−k i i+1 yi · (−2 + 2 1 )A · [x]2 i=−k 122 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Theorem (Satz von Booth) Das Verfahren von Booth ist korrekt, auch wenn einer oder zwei der Operanden negative Zahlen sind. Beweis: Wir betrachten im Verfahren von Booth an jeder Stelle die Differenz yi−1 − yi und berechnen das Multiplikationsergebnis durch die Summe p = 0 1 n X iA @ (yi−1 − yi ) · 2 · [x]2 = 0 n−1 X @−yn · 2n + y−k−1 · 2−k + i=−k = 0 n−1 X @−yn · 2n + i i+1 yi · (−2 + 2 1 )A · [x]2 i=−k 1 yi · 2 A · [x]2 i i=−k 123 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation in der Zweier-Komplement-Darstellung Theorem (Satz von Booth) Das Verfahren von Booth ist korrekt, auch wenn einer oder zwei der Operanden negative Zahlen sind. Beweis: Wir betrachten im Verfahren von Booth an jeder Stelle die Differenz yi−1 − yi und berechnen das Multiplikationsergebnis durch die Summe p = 0 1 n X iA @ (yi−1 − yi ) · 2 · [x]2 = 0 n−1 X @−yn · 2n + y−k−1 · 2−k + i=−k = 0 n−1 X @−yn · 2n + = [y ]2 · [x]2 i i+1 yi · (−2 + 2 1 )A · [x]2 i=−k 1 yi · 2 A · [x]2 i i=−k 124 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Vor- und Nachteile von Festkommadarstellungen Vorteile effizientes Rechnen möglich 125 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Vor- und Nachteile von Festkommadarstellungen Vorteile effizientes Rechnen möglich Nachteile keine ”ganz große” und ”ganz kleine” Zahlen darstellbar mangelnde Genauigkeit 126 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (Gleitkommazahl) Es seien n, i ∈ N . Eine Gleitkommazahl (engl.: Floating Point Number) d ist eine n-stellige Bitfolge, die — als Dezimalzahl [d] interpretiert — das folgende Format besitzt: [d] := (−1)S · M · 2E Dabei bildet S das Vorzeichen, M die Mantisse und E den Exponenten (inkl. dessen Vorzeichen) der dargestellten Zahl [d]. 127 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (Gleitkommazahl) Es seien n, i ∈ N . Eine Gleitkommazahl (engl.: Floating Point Number) d ist eine n-stellige Bitfolge, die — als Dezimalzahl [d] interpretiert — das folgende Format besitzt: [d] := (−1)S · M · 2E Dabei bildet S das Vorzeichen, M die Mantisse und E den Exponenten (inkl. dessen Vorzeichen) der dargestellten Zahl [d]. Vorzeichen, Exponent und Mantisse bestehen jeweils aus Teil-(Bit-)folgen von d, die zusammengesetzt gerade d ergeben. Das Vorzeichen wird durch ein einzelnes Bit repräsentiert, der Exponent durch eine Folge von i Bits. Die verbleibenden n − i − 1 Bits dienen zur Repräsentation der Mantisse, sodass sich folgende Aufteilung ergibt: dn−1 S dn−2 . . . dn−(i+1) i Bits Exponent E dn−(i+2) ... d1 d0 n − i − 1 Bits (vorzeichenlose) Mantisse M 128 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Verteilung der Zahlen In Festkommadarstellungen ist die Dichte der darstellbaren Zahlen in jedem Teilintervall von [−2n , 2n − 2−k ] gleich hoch! Bei Gleitkommadarstellungen ist die Anzahl der darstellbaren Zahlen in jedem Teilintervall [2i , 2i+1 ] (bzw. [−2i+1 , −2i ]) unabhängig von i. Die Dichte erhöht sich demnach exponentiell je näher das Teilintervall an der 0 liegt. 129 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Zusammensetzung der Gleitkommazahlen nach IEEE 754 einfache Genauigkeit: 31 S 30 ... 8 Bits Exponent E 23 22 ... 1 0 23 Bits vorzeichenlose Mantisse M ... 52 11 Bits Exponent E 51 ... 1 0 52 Bits vorzeichenlose Mantisse M doppelte Genauigkeit: 63 S 62 130 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen Die Gleitkommadarstellung, wie sie bis jetzt bei uns eingeführt worden ist, ist nicht kanonisch, d. h. es gibt für eine Zahl mehrere Darstellungen, auch wenn man sich entweder auf einfache Genauigkeit oder doppelte Genauigkeit beschränkt, z. B. [0 00000001 00000000000000000000010]s = (−1)0 · 2 · 21 = 4 131 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen Die Gleitkommadarstellung, wie sie bis jetzt bei uns eingeführt worden ist, ist nicht kanonisch, d. h. es gibt für eine Zahl mehrere Darstellungen, auch wenn man sich entweder auf einfache Genauigkeit oder doppelte Genauigkeit beschränkt, z. B. [0 00000001 00000000000000000000010]s = (−1)0 · 2 · 21 = 4 = (−1)0 · 1 · 22 = [0 00000010 0000000000000000000001]s 132 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen Die Gleitkommadarstellung, wie sie bis jetzt bei uns eingeführt worden ist, ist nicht kanonisch, d. h. es gibt für eine Zahl mehrere Darstellungen, auch wenn man sich entweder auf einfache Genauigkeit oder doppelte Genauigkeit beschränkt, z. B. [0 00000001 00000000000000000000010]s = (−1)0 · 2 · 21 = 4 = (−1)0 · 1 · 22 = [0 00000010 0000000000000000000001]s Eindeutigkeit erhält man, indem man die Menge der erlaubten Darstellungen einschränkt −→ normalisierte Gleitkommazahlen 133 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen einfacher Genauigkeit Um Kanonizität zu erreichen, betrachtet man normalisierte Gleitkommazahlen, bei denen der Wert der Mantisse jeweils in dem Intervall [1, 2) liegt, d. h. die Mantisse hat als Wert 1, ... 134 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen einfacher Genauigkeit Um Kanonizität zu erreichen, betrachtet man normalisierte Gleitkommazahlen, bei denen der Wert der Mantisse jeweils in dem Intervall [1, 2) liegt, d. h. die Mantisse hat als Wert 1, ... Hieraus folgt Eindeutigkeit der Darstellung. Zudem braucht die 1 vor dem Komma nicht gespeichert zu werden, da ja jede Darstellung an dieser Position eine 1 stehen hat. 135 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen einfacher Genauigkeit Um Kanonizität zu erreichen, betrachtet man normalisierte Gleitkommazahlen, bei denen der Wert der Mantisse jeweils in dem Intervall [1, 2) liegt, d. h. die Mantisse hat als Wert 1, ... Hieraus folgt Eindeutigkeit der Darstellung. Zudem braucht die 1 vor dem Komma nicht gespeichert zu werden, da ja jede Darstellung an dieser Position eine 1 stehen hat. Definition (normalisierte Gleitkommazahl) Es sei n := 32 und d := se7 . . . e0 m22 . . . m0 eine Bitfolge der Länge n. Zudem sei e7 . . . e0 6∈ {00000000, 11111111}. Wird d als normalisierte Gleitkommazahl nach IEEE 754 interpretiert, so repräsentiert d die Dezimalzahl [d]s mit [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 136 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen normalisierte Gleitkommazahlen doppelter Genauigkeit Um Kanonizität zu erreichen, betrachtet man normalisierte Gleitkommazahlen, bei denen der Wert der Mantisse jeweils in dem Intervall [1, 2) liegt, d. h. die Mantisse hat als Wert 1, ... Hieraus folgt Eindeutigkeit der Darstellung. Zudem braucht die 1 vor dem Komma nicht gespeichert zu werden, da ja jede Darstellung an dieser Position eine 1 stehen hat. Definition (normalisierte Gleitkommazahl) Es sei n := 64 und d := se10 . . . e0 m51 . . . m0 eine Bitfolge der Länge n. Zudem sei e10 . . . e0 6∈ {00000000000, 11111111111}. Wird d als normalisierte Gleitkommazahl nach IEEE 754 interpretiert, so repräsentiert d die Dezimalzahl [d]d mit [d]d := (−1) s 0 −52 X · @1 + 1 m52+i · 2 A · i P10 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 1023 137 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (normalisierte Gleitkommazahl) [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 Example Gegeben sei die normalisierte Gleitkommazahl a1 : a1 := 1 1000 0001 1100 0000 0000 0000 0000 000 138 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (normalisierte Gleitkommazahl) [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 Example Gegeben sei die normalisierte Gleitkommazahl a1 : a1 := 1 1000 0001 1100 0000 0000 0000 0000 000 Der dezimale Wert [a1 ]s von a1 lässt sich gemäß obiger Definition wie folgt ermitteln. [a1 ]s := (−1)1 · (1 + (2−1 + 2−2 )) · 22 7 +20 −127 139 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (normalisierte Gleitkommazahl) [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 Example Gegeben sei die normalisierte Gleitkommazahl a1 : a1 := 1 1000 0001 1100 0000 0000 0000 0000 000 Der dezimale Wert [a1 ]s von a1 lässt sich gemäß obiger Definition wie folgt ermitteln. [a1 ]s := = (−1)1 · (1 + (2−1 + 2−2 )) · 22 (−1) · (1 + 0, 5 + 0, 25) · 2 7 +20 −127 128+1−127 140 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (normalisierte Gleitkommazahl) [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 Example Gegeben sei die normalisierte Gleitkommazahl a1 : a1 := 1 1000 0001 1100 0000 0000 0000 0000 000 Der dezimale Wert [a1 ]s von a1 lässt sich gemäß obiger Definition wie folgt ermitteln. [a1 ]s := (−1)1 · (1 + (2−1 + 2−2 )) · 22 = (−1) · (1 + 0, 5 + 0, 25) · 2 = −1, 75 · 22 7 +20 −127 128+1−127 141 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Definition (normalisierte Gleitkommazahl) [d]s := (−1) s 0 −23 X · @1 + 1 m23+i · 2 A · i P7 2 i=0 ei 2 i ! −BIAS . i=−1 Es gilt hierbei BIAS := 127 Example Gegeben sei die normalisierte Gleitkommazahl a1 : a1 := 1 1000 0001 1100 0000 0000 0000 0000 000 Der dezimale Wert [a1 ]s von a1 lässt sich gemäß obiger Definition wie folgt ermitteln. [a1 ]s := (−1)1 · (1 + (2−1 + 2−2 )) · 22 = (−1) · (1 + 0, 5 + 0, 25) · 2 = −1, 75 · 22 = −7 7 +20 −127 128+1−127 142 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 143 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 144 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 145 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 146 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 147 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 148 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Example Gesucht ist die 32-Bit Gleitkommazahl a2 der Dezimalzahl mit [a2 ]s = −0, 625: −0, 625 ist negativ ⇒ Vorzeichenbit = 1 Umwandlung in eine Binärzahl: −0, 62510 = −0, 1012 Normalisierung: −0, 1012 = −1, 012 · 2−1 Bitfolge zur Repräsentation der Mantisse M = 0100 0000 0000 0000 0000 000. Berechnung des Exponenten : 2−1 = 2126−127 = 22 6 +25 +24 +23 +22 +21 −127 Bitfolge zur Repräsentation des Exponenten E = 0111 1110 Gleitkommadarstellung: a2 = 1 0111 1110 0100 0000 0000 0000 0000 000 149 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen denormalisierte Gleitkommazahlen Problem 150 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen denormalisierte Gleitkommazahlen Problem Die Null kann nicht als normalisierte Gleitkommazahl dargestellt werden!!! 151 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen denormalisierte Gleitkommazahlen Problem Die Null kann nicht als normalisierte Gleitkommazahl dargestellt werden!!! =⇒Einführung von denormalisierten Zahlen Definition Es sei n := 32 und d := se7 . . . e0 m22 . . . m0 eine Bitfolge der Länge n mit e7 . . . e0 := 00000000. Dann stellt d eine denormalisierte Gleitkommazahl nach dem Standard IEEE 754 dar und repräsentiert die Dezimalzahl [d]s mit [d]s := (−1) s 0 −23 X ·@ 1 m23+i · 2 A · i ! 2−126 . i=−1 Hierdurch wird der ”Bereich um die Null” äquidistant partitioniert! 152 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen denormalisierte Gleitkommazahlen Problem Die Null kann nicht als normalisierte Gleitkommazahl dargestellt werden!!! =⇒Einführung von denormalisierten Zahlen Definition Es sei n := 32 und d := se7 . . . e0 m22 . . . m0 eine Bitfolge der Länge n mit e7 . . . e0 := 00000000. Dann stellt d eine denormalisierte Gleitkommazahl nach dem Standard IEEE 754 dar und repräsentiert die Dezimalzahl [d]s mit [d]s := (−1) s 0 −23 X ·@ 1 m23+i · 2 A · i ! 2−126 . i=−1 Hierdurch wird der ”Bereich um die Null” äquidistant partitioniert! Die Darstellung der 0 ist nicht eindeutig! 153 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen denormalisierte Gleitkommazahlen Problem Die Null kann nicht als normalisierte Gleitkommazahl dargestellt werden!!! =⇒Einführung von denormalisierten Zahlen Definition Es sei n := 32 und d := se10 . . . e0 m22 . . . m0 eine Bitfolge der Länge n mit e10 . . . e0 := 00000000000. Dann stellt d eine denormalisierte Gleitkommazahl nach dem Standard IEEE 754 dar und repräsentiert die Dezimalzahl [d]d mit [d]d := (−1) s 0 −52 X ·@ 1 m52+i · 2 A · i ! 2−1022 . i=−1 Hierdurch wird der ”Bereich um die Null” äquidistant partitioniert! Die Darstellung der 0 ist nicht eindeutig! 154 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Darstellung von +∞ und −∞ Definition Es seien d := 0 1111 1111 0000 0000 0000 0000 0000 000 e := 1 1111 1111 0000 0000 0000 0000 0000 000 Dann stellt nach dem Standard IEEE 754 d den Wert +∞ und e den Wert −∞ dar. 155 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen IEEE 754 im Überblick Genauigkeit einfach 1 doppelt 1 #Exponenten-Bits 8 11 #Mantissen-Bits 23 52 #Bitstellen insgesamt 32 64 #Vorzeichen-Bits 156 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen IEEE 754 im Überblick Genauigkeit einfach 1 doppelt 1 #Exponenten-Bits 8 11 #Mantissen-Bits 23 52 #Vorzeichen-Bits #Bitstellen insgesamt 32 64 BIAS 127 1023 [−126, 127] ∩ Z [−1022, 1023] ∩ Z Exponentenbereich 157 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen IEEE 754 im Überblick Genauigkeit einfach 1 doppelt 1 #Exponenten-Bits 8 11 #Mantissen-Bits 23 52 #Vorzeichen-Bits #Bitstellen insgesamt 32 64 BIAS 127 1023 Exponentenbereich normalisierte Zahl mit max. Betrag normalisierte Zahl mit min. Betrag [−126, 127] ∩ Z [−1022, 1023] ∩ Z 2−24 ) (1 − 2−53 ) · 21024 (1 − 2−126 · 2128 2−1022 158 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen IEEE 754 im Überblick Genauigkeit einfach 1 doppelt 1 #Exponenten-Bits 8 11 #Mantissen-Bits 23 52 #Vorzeichen-Bits #Bitstellen insgesamt 32 64 BIAS 127 1023 Exponentenbereich normalisierte Zahl mit max. Betrag [−126, 127] ∩ Z [−1022, 1023] ∩ Z 2−24 ) (1 − 2−53 ) · 21024 (1 − 2−126 normalisierte Zahl mit min. Betrag denormalisierte Zahl mit max. Betrag denormalisierte Zahl mit min. Betrag · 2128 (1 − 2−23 ) · 2−149 2−1022 2−126 (1 − 2−52 ) · 2−1022 2−1074 159 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s + [d2 ]s mit [d1 ]s := ± (1 + M1 ) · 2E1 −127 , [d2 ]s := ± (1 + M2 ) · 2E2 −127 . 160 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s + [d2 ]s mit [d1 ]s := ± (1 + M1 ) · 2E1 −127 , [d2 ]s := ± (1 + M2 ) · 2E2 −127 . Fallunterscheidung Falls E1 = E2 : Falls E1 > E2 : 161 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s + [d2 ]s mit [d1 ]s := ± (1 + M1 ) · 2E1 −127 , [d2 ]s := ± (1 + M2 ) · 2E2 −127 . Fallunterscheidung Falls E1 = E2 : berechne ± (1 + M1 ) + ± (1 + M2 ) normalisiere die Darstellung (± (1 + M1 ) + ± (1 + M2 )) · 2E1 −127 Falls E1 > E2 : 162 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s + [d2 ]s mit [d1 ]s := ± (1 + M1 ) · 2E1 −127 , [d2 ]s := ± (1 + M2 ) · 2E2 −127 . Fallunterscheidung Falls E1 = E2 : berechne ± (1 + M1 ) + ± (1 + M2 ) normalisiere die Darstellung (± (1 + M1 ) + ± (1 + M2 )) · 2E1 −127 Falls E1 > E2 : Angleichung der Exponente — der kleinere wird angepasst [d2 ]s = ± (1 + M2 ) · 2E2 −E1 ·2E1 −127 | {z } neue Mantisse Addition der Mantissen Normalisierung des Ergebnisses 163 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Example Es sei [d1 ]s = 1, 101 · 2−3 und [d2 ]s = 1, 011 · 2−4 . Der Exponent von d2 ist anzupassen [d2 ]s := 1, 011 · 2−4 = (1, 011 · 2−1 ) · 2−3 = 0, 1011 · 2−3 Die Mantissen sind aufzuaddieren: [sum]s = (1, 101 + 0, 1011) · 2−3 = 10, 0101 · 2−3 Das Ergebnis ist zu normalisieren [sum]s = 10, 0101 · 2−3 = (1, 00101 · 21 ) · 2−3 = 1, 00101 · (21 · 2−3 ) = 1, 00101 · 2−2 164 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Example Es sei [d1 ]s = 1, 101 · 2−3 und [d2 ]s = 1, 011 · 2−4 . Der Exponent von d2 ist anzupassen [d2 ]s := 1, 011 · 2−4 = (1, 011 · 2−1 ) · 2−3 = 0, 1011 · 2−3 Die Mantissen sind aufzuaddieren: [sum]s = (1, 101 + 0, 1011) · 2−3 = 10, 0101 · 2−3 Das Ergebnis ist zu normalisieren [sum]s = 10, 0101 · 2−3 = (1, 00101 · 21 ) · 2−3 = 1, 00101 · (21 · 2−3 ) = 1, 00101 · 2−2 165 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Example Es sei [d1 ]s = 1, 101 · 2−3 und [d2 ]s = 1, 011 · 2−4 . Der Exponent von d2 ist anzupassen [d2 ]s := 1, 011 · 2−4 = (1, 011 · 2−1 ) · 2−3 = 0, 1011 · 2−3 Die Mantissen sind aufzuaddieren: [sum]s = (1, 101 + 0, 1011) · 2−3 = 10, 0101 · 2−3 Das Ergebnis ist zu normalisieren [sum]s = 10, 0101 · 2−3 = (1, 00101 · 21 ) · 2−3 = 1, 00101 · (21 · 2−3 ) = 1, 00101 · 2−2 166 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Addition von Gleitkommazahlen Example Es sei [d1 ]s = 1, 101 · 2−3 und [d2 ]s = 1, 011 · 2−4 . Der Exponent von d2 ist anzupassen [d2 ]s := 1, 011 · 2−4 = (1, 011 · 2−1 ) · 2−3 = 0, 1011 · 2−3 Die Mantissen sind aufzuaddieren: [sum]s = (1, 101 + 0, 1011) · 2−3 = 10, 0101 · 2−3 Das Ergebnis ist zu normalisieren [sum]s = 10, 0101 · 2−3 = (1, 00101 · 21 ) · 2−3 = 1, 00101 · (21 · 2−3 ) = 1, 00101 · 2−2 167 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s · [d2 ]s mit [d1 ]s := (−1)S1 · (1 + M1 ) · 2E1 −127 , [d2 ]s := (−1)S2 · (1 + M2 ) · 2E2 −127 . 168 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s · [d2 ]s mit [d1 ]s := (−1)S1 · (1 + M1 ) · 2E1 −127 , [d2 ]s := (−1)S2 · (1 + M2 ) · 2E2 −127 . Es gilt: [p]s = [d1 ]s · [d2 ]s 169 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s · [d2 ]s mit [d1 ]s := (−1)S1 · (1 + M1 ) · 2E1 −127 , [d2 ]s := (−1)S2 · (1 + M2 ) · 2E2 −127 . Es gilt: [p]s = = [d1 ]s · [d2 ]s (−1)S1 · (1 + M1 ) · 2E1 −127 · (−1)S2 · (1 + M2 ) · 2E2 −127 170 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s · [d2 ]s mit [d1 ]s := (−1)S1 · (1 + M1 ) · 2E1 −127 , [d2 ]s := (−1)S2 · (1 + M2 ) · 2E2 −127 . Es gilt: [p]s = = = [d1 ]s · [d2 ]s (−1)S1 · (1 + M1 ) · 2E1 −127 · (−1)S2 · (1 + M2 ) · 2E2 −127 (−1)S1 ⊕S2 · ((1 + M1 ) · (1 + M2 )) · 2(E1 −127)+(E2 −127) . 171 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Berechne die normalisierte Gleitkommadarstellung von [d1 ]s · [d2 ]s mit [d1 ]s := (−1)S1 · (1 + M1 ) · 2E1 −127 , [d2 ]s := (−1)S2 · (1 + M2 ) · 2E2 −127 . Es gilt: [p]s = = = [d1 ]s · [d2 ]s (−1)S1 · (1 + M1 ) · 2E1 −127 · (−1)S2 · (1 + M2 ) · 2E2 −127 (−1)S1 ⊕S2 · ((1 + M1 ) · (1 + M2 )) · 2(E1 −127)+(E2 −127) . Die drei Bestandteile der Gleitkommazahlen d1 und d2 können also, bis auf die abschließende Normalisierung des Ergebnisses, getrennt voneinander behandelt und verknüpft werden. 172 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Zwei Details sind also zu berücksichtigen: 1 Das Ergebnis muss in der Regel normalisiert werden! 2 Der Exponent ergibt sich nicht direkt aus der in der Darstellung abgespeicherten Bitfolge, sondern ergibt sich erst durch Subtraktion des BIAS von der dargestellten Binärzahl! 173 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Zwei Details sind also zu berücksichtigen: 1 Das Ergebnis muss in der Regel normalisiert werden! 2 Der Exponent ergibt sich nicht direkt aus der in der Darstellung abgespeicherten Bitfolge, sondern ergibt sich erst durch Subtraktion des BIAS von der dargestellten Binärzahl! 174 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Zwei Details sind also zu berücksichtigen: 1 Das Ergebnis muss in der Regel normalisiert werden! 2 Der Exponent ergibt sich nicht direkt aus der in der Darstellung abgespeicherten Bitfolge, sondern ergibt sich erst durch Subtraktion des BIAS von der dargestellten Binärzahl! 175 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Zwei Details sind also zu berücksichtigen: 1 Das Ergebnis muss in der Regel normalisiert werden! 2 Der Exponent ergibt sich nicht direkt aus der in der Darstellung abgespeicherten Bitfolge, sondern ergibt sich erst durch Subtraktion des BIAS von der dargestellten Binärzahl! Gesucht ist also die binäre Darstellung τ von (E1 − BIAS) + (E2 − BIAS) + BIAS: 176 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time Stellenwertsysteme Festkommadarstellungen Gleitkommadarstellungen Multiplikation von Gleitkommazahlen Zwei Details sind also zu berücksichtigen: 1 Das Ergebnis muss in der Regel normalisiert werden! 2 Der Exponent ergibt sich nicht direkt aus der in der Darstellung abgespeicherten Bitfolge, sondern ergibt sich erst durch Subtraktion des BIAS von der dargestellten Binärzahl! Gesucht ist also die binäre Darstellung τ von (E1 − BIAS) + (E2 − BIAS) + BIAS: (E1 − BIAS) + (E2 − BIAS) + BIAS = 7 X ! ed1 ,i · 2 i=0 = 7 X i=0 = ed1 ,i · 2i i ! − BIAS ! + 7 X 7 X + ! ed2 ,i · 2i ! ed2 ,i · 2 i ! − BIAS + BIAS i=0 − BIAS i=0 [ed1 ,7 . . . ed1 ,0 ] + [ed2 ,7 . . . ed2 ,0 ] − BIAS. 177 / 178 Was ist Information? Darstellung von Zeichen Darstellung von Zahlen Question Time ”Stad Letzebuerg” [http://www.ludgerusschule.de/] Wehrmauern erinnern an die Festung Luxemburgs. Luxemburg war eine der berühmtesten und am schwersten einnehmbaren Festungen Westeuropas und wurde zu Recht Gibraltar des Nordens genannt. In der französischen Zeit (1684-1697) wurde unter dem Hauptkommissar der Festungsanlagen und Festungsbaumeister Ludwigs XIV., Sébastien le Prestre de Vauban, die Feste Luxemburg besonders stark ausgebaut. Im Anschluss an den Neutralitätsvertrag vom 11. Mai 1867 musste Luxemburg seine Festung schleifen. 178 / 178