Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik
|
|
- Albert Burgstaller
- vor 6 Jahren
- Abrufe
Transkript
1 Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik
2 Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division Gleitkommazahlen Gleitkommaarithmetik Grundlagen der Rechnerarchitektur Logik und Arithmetik 2
3 Logische Operationen Grundlagen der Rechnerarchitektur Logik und Arithmetik 3
4 AND, OR und XOR A B AND A B OR A B XOR Notationen: Notationen: Notation: Beispiele: AND OR XOR Grundlagen der Rechnerarchitektur Logik und Arithmetik 4
5 NOT, NAND und NOR A NOT 0 1 Notationen: A B NAND A B NOR Beispiele: NOT NAND NOR Grundlagen der Rechnerarchitektur Logik und Arithmetik 5
6 Rechenregeln auf logischen Ausdrücken Kommutativgesetz Assoziativgesetz Distributivgesetz De Morgansche Regeln Grundlagen der Rechnerarchitektur Logik und Arithmetik 6
7 Rechenregeln auf logischen Ausdrücken Rechnen mit den Konstanten 0 und 1 Doppelte Negation Kürzungsregeln Grundlagen der Rechnerarchitektur Logik und Arithmetik 7
8 Logischer Links und Rechts Shift Logischer Links Shift b << x : Verschiebe Bits in b nach links, um den angegebenen Wert x. Die neuen leeren Stellen werden mit 0 aufgefüllt. Logischer Rechts Shift b >> x : Verschiebe Bits nach rechts, um den angegeben Wert x. Die neuen leeren Stellen werden mit 0 aufgefüllt. Links und Rechts Shift am Beispiel von 8 Bit Zahlen: << 1 = << 2 = >> 1 = >> 2 = Grundlagen der Rechnerarchitektur Logik und Arithmetik 8
9 Was bedeutet Shift um i? Links Shift: Rechts Shift: Grundlagen der Rechnerarchitektur Logik und Arithmetik 9
10 Links und Rechts Rotation Links Rotation von b um x Stellen: Verschiebe Bits in b nach links, um den angegebenen Wert x. Die leeren Stellen werden mit den herausgeschobenen aufgefüllt. Rechts Rotation von b um x Stellen: Verschiebe Bits nach rechts, um den angegeben Wert x. Die leeren Stellen werden mit den herausgeschobenen aufgefüllt. Links und Rechts Rotation am Beispiel von 8 Bit Zahlen: Links Rotation um 2 Stellen: > Rechts Rotation um 2 Stellen: > Grundlagen der Rechnerarchitektur Logik und Arithmetik 10
11 Addition, Subtraktion und negative Zahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 11
12 Addition und Subtraktion von binären Zahlen Beispiel C = A + B: (Carry) (A) (B) = (C) Beispiel C = A B: (A) (B) (Carry) = (C) Grundlagen der Rechnerarchitektur Logik und Arithmetik 12
13 Darstellung von negativen binären Zahlen Beobachtung für eine beliebige Binärzahl B, z.b. B=110010: B + NOT(B) = B + NOT(B) 1 + (Carry) Also gilt: Bezeichnung: B = Einerkomplement, B+1 = Zweierkomplement Grundlagen der Rechnerarchitektur Logik und Arithmetik 13
14 Quiz Zweierkomplement Binärzahl B= als Dezimalzahl? Was ist die Dezimalzahl 7 als Binärzahl B in Zweierkomplement? Grundlagen der Rechnerarchitektur Logik und Arithmetik 14
15 Subtraktion von binären Zahlen nochmal Beispiel C = A B: (A) (B) Bestimme Zweierkomplement zu B, also B: Also ist C: (Carry) (A) (-B) = (C) Grundlagen der Rechnerarchitektur Logik und Arithmetik 15
16 N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl = = -3 MSB bestimmt das Vorzeichen. MSB=0 bedeutet nicht negativ, MSB=1 bedeutet negativ. Beispiel vorzeichenbehaftete 8 Bit Binärzahlen: Beispiel: 16 Bit = = = = = = = = = = = = -1 Grundlagen der Rechnerarchitektur Logik und Arithmetik 16
17 Nicht vorzeichenbehaftete Zahlen (unsigned) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl = = MSB bestimmt das Vorzeichen nicht. Zahl ist immer nicht negativ. Beispiel nicht vorzeichenbehaftete 8 Bit Binärzahlen: Beispiel: 16 Bit = = = = = = = = = = = = 255 Grundlagen der Rechnerarchitektur Logik und Arithmetik 17
18 Signed N Bit Binär in Dezimal umrechnen Beispiel 8 Bit Binärzahl B: binär ist dezimal: Beobachtung für folgende 8 Bit Zahl C (Erinnerung: binär ist 128): Also für signed n Bit Binärzahl b = b n 1 b n 2... b 0 gilt: Grundlagen der Rechnerarchitektur Logik und Arithmetik 18
19 Sign Extension Gegeben 6 und 3 in 16 Bit Darstellung in 16 Bit Binärdarstellung Wie sieht die 32 Bit Binärdarstellung aus? in 16 Bit Binärdarstellung 6 in 32 Bit Binärdarstellung? 3 in 32 Bit Binärdarstellung? Erinnerung: n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl = = -3 Grundlagen der Rechnerarchitektur Logik und Arithmetik 19
20 Arithmetischer Rechts Shift Arithmetischer Rechts Shift von b um x Stellen: Verschiebe Bits nach rechts, um den angegeben Wert x. Die neuen leeren Stellen werden mit dem Sign Bit aufgefüllt. Arithmetischer Rechts Shift am Beispiel von 8 Bit Zahlen: Arithmetischer Rechts Shift um 2 Stellen: > Arithmetischer Rechts Shift um 2 Stellen: > Grundlagen der Rechnerarchitektur Logik und Arithmetik 20
21 Overflow Einschränkung auf n Bit kann einen Overflow bei Addition erzeugen: (Carry) (A) (B) = (C) Addition von negativer und nicht negativer Zahl. Overflow möglich? Overflow erfordert, dass mindestens gilt: Also Overflow in diesem Fall nicht möglich. Grundlagen der Rechnerarchitektur Logik und Arithmetik 21
22 Overflow Subtraktion von zwei negativen Zahlen x und y. Overflow möglich? Der Fall zwei nicht negativen Zahlen ist analog. Also: Overflow in diesem Fall nicht möglich. Zusammenfassung: Wann kann ein Overflow eintreten? Operation Operand A Operand B Ergebnis welches Overflow anzeigt A+B 0 0 < 0 A+B < 0 < 0 0 A B 0 < 0 < 0 A B < Grundlagen der Rechnerarchitektur Logik und Arithmetik 22
23 Randbemerkung Andere Darstellungsformen für negative Binärzahlen: Einerkomplement: Negativer Wert von B ist NOT(B) Sign and Magnitude: MSB ist das Vorzeichen. Rest ist der Wert. Biased Notation (Beispielsweise mit 0 auf ): = kleinster negativer Wert = kleinster negativer Wert = = = = größter positiver Wert = größter positiver Wert Grundlagen der Rechnerarchitektur Logik und Arithmetik 23
24 Logische Bausteine Grundlagen der Rechnerarchitektur Logik und Arithmetik 24
25 Logische Bausteine Kombinatorische Schaltungen Grundlagen der Rechnerarchitektur Logik und Arithmetik 25
26 Gatter Funktion Eingabe Symbol Ausgabe Verallgemeinerung auf n Eingänge AND A B A AND B A 1 A 2 A 1 AND A 2... AND A n Und Gatter A n OR A B Oder Gatter A OR B A 1 A 2 Und Gatter mit n Eingängen A 1 OR A 2... OR A n NOT A NOT A A n Inverter Oder Gatter mit n Eingängen Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 26
27 Kombinatorische Schaltungen Jede boolesche Funktion (gegeben als logischer Ausdruck) wie z.b. f(a,b) = NOT( NOT(A) OR B) Lässt sich als kombinatorische Schaltung realisieren. Das Beispiel: Inverter werden häufig abgekürzt dargestellt. Das Beispiel: Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 27
28 Wahrheitstabellen Jede boolesche Funktion lässt sich mit einer Wahrheitstabelle darstellen. Beispiel: f(a,b,c) = A AND NOT(B OR C) als Wahrheitstabelle A B C B OR C NOT(B OR C) f(a,b,c)=a AND NOT(B OR C) Grundlagen der Rechnerarchitektur Logik und Arithmetik 28
29 Wahrheitstabellen Jede Wahrheitstabelle kann man mit einem logischen Ausdruck darstellen. Beispiel: A B C f(a,b,c) Als Disjunktive Normalform (DNF); Oder Verknüpfung aller Minterme: Ziel ist aber nicht irgend einen Ausdruck zu finden, sondern einen möglichst kleinen (also eine möglichst kleine kombinatorische Schaltung). Mehr dazu gleich. Grundlagen der Rechnerarchitektur Logik und Arithmetik 29
30 Wahrheitstabellen A B C f(a,b,c) Neben der disjunktiven Normalform gibt es noch die Konjunktive Normalform (KNF); Und Verknüpfung aller Maxterme Allgemein: für den Entwurf von digitalen Schaltungen verwendet man in der Regel eine Darstellung von booleschen Funktionen mittels Normalformen. Grundlagen der Rechnerarchitektur Logik und Arithmetik 30
31 Wahrheitstabellen Bei der Suche nach möglichst kleinen kombinatorischen Schaltungen können auch sogenannte Don t Care Terme recht hilfreich sein. A B C f(a,b,c) X X X Don t Care Terme: In der kombinatorischen Schaltung, die diese Funktion implementiert, ist es egal welche Ausgabe die Schaltung für die Eingaben 011, 101 und 110 produziert. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31
32 Wahrheitstabellen In einer Wahrheitstabelle kann für die Eingaben auch mehrere Ausgabe Bits festgelegt werden. Beispiel: Eingabe Bit 0 Eingabe Bit 1 Eingabe Bit 2 Ausgabe Bit 0 Ausgabe Bit Grundlagen der Rechnerarchitektur Logik und Arithmetik 32
33 Beispiel: Addition zweier Bits mit Übertrag Wahrheitstabelle A B s(a,b)=a+b c(a,b)=carry Kombinatorische Schaltung Boolesche Ausdrücke Ist das eine gute Schaltung? Wie sieht n Bit Addition aus? Mehr dazu gleich. (Im Folgenden nehmen wir häufig logische Bauelemente als Blackbox mit Eingängen und Ausgängen an. Die Funktion des Bausteins wird nur textuell beschrieben.) Grundlagen der Rechnerarchitektur Logik und Arithmetik 33
34 Logische Bausteine Minimierung Grundlagen der Rechnerarchitektur Logik und Arithmetik 34
35 Minimierung mittels Rechenregeln Beispiel: Minimierung der folgenden DNF (!A *!B * C) + (!A * B *!C) + (A *!B *!C) + (A *!B * C) +(A * B *!C) Grundlagen der Rechnerarchitektur Logik und Arithmetik 35
36 Minimierung mittels KV Diagramm A B C D f(a,b,c,d) Ordne Variablen einer 2, 3 oder 4 Stelligen Funktion in Tabelle so an, dass sich benachbarte Felder nur in einer Variablen unterscheiden. Grundlagen der Rechnerarchitektur Logik und Arithmetik 36
37 Minimierung mittels KV Diagramm A B C D f(a,b,c,d) Trage für alle Minterme eine 1 in dem Diagramm ein. C C B A B A B D D D Grundlagen der Rechnerarchitektur Logik und Arithmetik 37
38 Minimierung mittels KV Diagramm A B C D f(a,b,c,d) Fasse benachbarte 1en zu den größtmöglichen Blöcken der Größe 2^n zusammen. C C B A 1 1 B 1 A B D D D Grundlagen der Rechnerarchitektur Logik und Arithmetik 38
39 KV Diagramm: Noch ein Beispiel A B C D f(a,b,c,d) X X X Bemerkung 1: Don t cares können beliebig für 0 oder 1 stehen. Bemerkung 2: Blöcke können auch über den KV Diagrammrand hinaus reichen. C C B A B A B D D D Grundlagen der Rechnerarchitektur Logik und Arithmetik 39
40 KV Diagramm: Noch ein Beispiel A B C D f(a,b,c,d) Bemerkung 3: anstatt der 1en können auch die 0en zusammengefasst werden (dann als KNF). C C B A B A B D D D Grundlagen der Rechnerarchitektur Logik und Arithmetik 40
41 Minimierung nach Quine Mc Cluskey F(A,B,C,D) =!A!B!C!D +!A!B!C D +!A B!C!D +!A B!C D +!A B C!D +!A B C D + A!B!C!D + A!B!C D + A!B C D + A B C D Notiere die Funktion als # A B C D Gruppe Binärelemente und fasse diese zu Gruppen zusammen Die Binärelemente werden nach den in ihnen vorkommenden Einsen in jeweilige Gruppen eingeteilt. Grundlagen der Rechnerarchitektur Logik und Arithmetik 41
42 Minimierung nach Quine Mc Cluskey Ermitteln der Primterme # A B C D OK # A B C D OK # A B C D OK Grundlagen der Rechnerarchitektur Logik und Arithmetik 42
43 Minimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle # A B C D OK m9 + m P1 m7 + m P2 m11 + m P3 m0 + m1 + m4 + m5 0 0 P4 m0 + m1 + m8 + m9 0 0 P5 m4 + m5 + m6 + m7 0 1 P6 P1 P2 P3 P4 P5 P6 m0 m1 m4 m5 m6 m7 m8 m9 m11 m15 Grundlagen der Rechnerarchitektur Logik und Arithmetik 43
44 Minimierung nach Quine Mc Cluskey Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung m0 m1 m4 m5 m6 m7 m8 m9 m11 m15 P1 X X P2 X X P3 X X P4 X X X X P5 X X X X P6 X X X X Grundlagen der Rechnerarchitektur Logik und Arithmetik 44
45 Minimierung nach Quine Mc Cluskey Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung m6 m8 m11 m15 P1 X P2 X P3 X X P4 P5 X P6 X Grundlagen der Rechnerarchitektur Logik und Arithmetik 45
46 Minimierung nach Quine Mc Cluskey Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung m6 m8 m11 m15 P3 X X P5 X P6 X Grundlagen der Rechnerarchitektur Logik und Arithmetik 46
47 Minimierung nach Quine Mc Cluskey Finden einer minimalen Überdeckung durch wiederholte Spalten und Zeilendominanzprüfung P3 P5 P6 m6 m8 m11 X X X Grundlagen der Rechnerarchitektur Logik und Arithmetik 47
48 Logische Bausteine Addierwerke Grundlagen der Rechnerarchitektur Logik und Arithmetik 48
49 Addition eines einzigen Bits Eingang Ausgang a b CarryIn CarryOut Sum CarryIn a b + Sum CarryOut Grundlagen der Rechnerarchitektur Logik und Arithmetik 49
50 CarryIn Ripple Carry Adder a0 b0 a1 b1 a2 b2 + CarryOut CarryIn + CarryOut CarryIn + CarryOut Sum Sum Sum Problem: Berechnung benötigt O(n) Gatterlaufzeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 50
51 Carry Lookahead Adder Beobachtung 1: wenn zwei Binärzahlen a(0)...a(n 1) und b(0)...b(n 1) addiert werden, dann findet ein Übertrag an der Stelle i statt, wenn Also können wir als Carry Generierer g(i) definieren: Beobachtung 2: ein Übertrag von der Stelle i 1 wird von der Stelle i an die nächste Stelle i+1 weiter geleitet, wenn Also können wir als Carry Propagierer p(i) definieren: Grundlagen der Rechnerarchitektur Logik und Arithmetik 51
52 Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit: Wie hilft uns das jetzt weiter? Grundlagen der Rechnerarchitektur Logik und Arithmetik 52
53 Wie hilft uns das jetzt weiter? Carry Lookahead Adder Expandieren durch Substitution: Laufzeit: O(1), aber die hohe Anzahl der benötigten Gatter limitiert die Größe eines solchen Bausteins. (Lösung: zusammenfassen mehrerer CLA zu einer Gruppe) Grundlagen der Rechnerarchitektur Logik und Arithmetik 53
54 Logische Bausteine Sequentielle Schaltungen Grundlagen der Rechnerarchitektur Logik und Arithmetik 54
55 Sequentielle Schaltungen n Eingänge m Ausgänge n Eingänge m Ausgänge Zustand Ausgänge hängen nur von den Eingängen ab. Wie schon gezeigt, ist dies durch eine Wahrheitstabelle beschreibbar. Ausgänge hängen von den Eingängen und dem aktuellen Zustand des Bausteins ab. Wie kann man dieses Verhalten beschreiben? Kombinatorische Schaltungen Sequentielle Schaltungen Grundlagen der Rechnerarchitektur Logik und Arithmetik 55
56 Zustandsautomat Ein Beispiel: Eingabe 01 / Ausgabe 00 Eingabe 00 / Ausgabe 11 Eingabe 10 / Ausgabe 01 Eingabe 11 / Ausgabe 10 Zustand 00 2 Bit Eingabe Eingabe 11 / Ausgabe 00 Zustand 01 2 Bit Ausgabe Zustand 10 Grundlagen der Rechnerarchitektur Logik und Arithmetik 56
57 Speichern von Zuständen Speichern eines Bits am Beispiel R S Latch (S=Set, R=Reset) Beobachtung: das Speichern von Zustand erfordert Rückkopplungen (d.h. Ausgang ist wieder Eingang) in der Schaltung. R S altes Q neues Q Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 57
58 Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q R S C D altes Q neues Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 58
59 Beispiel Wir wollen das Ergebnis einer kombinatorischen Schaltung in einem D Latch speichern. Q soll wohldefiniert entweder den Inhalt vor oder nach der Berechnung speichern. Kombinatorische Schaltung Q Eingang n Bit Ergebnis ist ein Bit C (Clock) D (Daten) D Latch NOT(Q) Problem: Wann liegt das Ergebnis Bit stabil an D an? Zeit Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 59
60 Lösung: Taktung Wir wollen das Ergebnis einer kombinatorischen Schaltung in einem D Latch speichern. Q soll wohldefiniert entweder den Inhalt vor oder nach der Berechnung speichern. Kombinatorische Schaltung Q Eingang n Bit Ergebnis ist ein Bit C (Clock) D (Daten) D Latch NOT(Q) Letztes Clock Signal Takt Zyklus Nächstes Clock Signal Bildquelle: Symbole kopiert aus David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 60 Zeit
61 D Latches sind Transparent bzgl. Taktsignal R S D C Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 61
62 D Flip Flop (ist nicht transparent) Ausgang ändert sich nur bei einer fallenden Taktflanke. D D C D Latch Q D C D Latch Q!Q C D C Q Grundlagen der Rechnerarchitektur Logik und Arithmetik 62
63 Logische Bausteine Blockschaltdiagramme Grundlagen der Rechnerarchitektur Logik und Arithmetik 63
64 Bausteine als Black Box Wir haben jetzt einige Basisbausteine kennen gelernt. In dieser Vorlesung sind wir mit Blockschaltbildern in der Regel eine Abstraktionsebene höher. Die betrachteten Bausteine sind Kästen mit Eingangsleitungen und Ausgangsleitungen. Die Leitungen können entweder Daten (Datenleitungen) oder Steuersignale (Steuerleitungen) transportieren. Wie die Bausteine der Blockschaltbilder intern mit Grundbausteinen aufgebaut sind und wie die Taktung der einzelnen Bausteine genau abläuft betrachten wir in dieser Vorlesung nicht weiter. Eingangsleitungen Bemerkung: In Blockschaltbildern wird das für sequentielle Bausteine erforderliche Clock Signal häufig der Übersicht halber weg gelassen. Baustein Beispiel eines abstrakten Bausteins Ausgangsleitungen Grundlagen der Rechnerarchitektur Logik und Arithmetik 64
65 Verschaltung von Bausteinen Verbinden von Bauelementen Bus (lassen häufig die Markierung n Bits weg) Einzelne Leitung n Bits Datenflussrichtung Ausgabe eines logischen Bausteins Eingabe eines logischen Bausteins Kreuzungen und Verbindungen Beispiel Baustein A Leitungen kreuzen sich, sind aber nicht verbunden Verbindungen außerhalb der Leitungsendpunkte sind durch einen Punkt gekennzeichnet. Baustein B Baustein C Grundlagen der Rechnerarchitektur Logik und Arithmetik 65
66 Arithmetische, logische Einheit (ALU) ALU Operation (k) Angabe in Klammern ist die Anzahl Bits. Beispiel Funktionen AND A (n) OR B (n) ALU CarryOut (1) Zero (1) Result (n) Overflow (1) Ggf. ist die ALU auf eine Operation festgelegt. Dann Entfällt der Eingang und ALU wird mit dem Namen der Operation ersetzt. NOT Addition Subtraktion Vergleich Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 66
67 Register und Shift Register Eingang (n) Speichert n Bits Reset (1) Load (1) Shift (1) Ausgang (n) Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 67
68 Control Eingänge sind Datenleitungen aus anderen Bausteinen Control Ausgänge sind Steuerleitungen in andere Bausteine Ein Baustein der das Zusammenarbeiten von anderen Bausteinen koordiniert. In Abhängigkeit der Eingänge werden die passenden Steuerleitungen geschaltet. Kombinatorisch? Sequentiell? Grundlagen der Rechnerarchitektur Logik und Arithmetik 68
69 Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe Store R1 Store R2 Zero Control Control soll folgenden Algorithmus implementieren: wenn R2 gerade und R1-R2=0, dann R1 = 0 wenn R2 ungerade und R1-R2!=0, dann R2 = R1-R2 sonst R1 = R1-R2 Anhand der Wahrheitstabelle wird dann die Schaltung gebaut. Rückgekoppelte Register haben immer einen wohldefinierten Zustand, da Register nur zur Clock Flanke aktualisiert werden. Grundlagen der Rechnerarchitektur Logik und Arithmetik 69
70 Darstellung von Algorithmen Grundlagen der Rechnerarchitektur Logik und Arithmetik 70
71 Pseudo Code Darstellungen Elementaranweisungen Variablenzuweisungen, z.b.: x = 42 Arithmetik, z.b.: y = 10 x = (42 + y) * 20 Das Symbol = beinhaltet implizit eine zeitliche Abfolge, damit ist z.b. sinnvoll: x = x + 1 Abkürzende Schreibweise für voriges Konstrukt: x++ Allgemein: als Elementaranweisung betrachten wir jede Anweisung, die auf der betrachteten Abstraktionsebene nicht weiter sinnvoll in eine Folge von einfacheren Anweisungen unterteilbar ist. Grundlagen der Rechnerarchitektur Logik und Arithmetik 71
72 Felder Felder für den Zugriff auf den Speicher, z.b.: A[] Zugriff auf ite Speicherstelle: A[i] Beispiel: 0x0f00 : 14 A[0] 0x0f01 : 15 A[1] 0x0f02 : 42 A[2] 0x0f03 : 43 A[3] x0f0f : 255 A[15] Grundlagen der Rechnerarchitektur Logik und Arithmetik 72
73 Sequenz von Elementaranweisungen Jedes Programm beginnt an einer Stelle und terminiert (hoffentlich) irgendwann. Start Im Flussdiagramm ist Beginn und Ende des Programms mit den ovalen Symbolen dargestellt. Im Beispiel also Start und Ende. Das einfachste Programm arbeitet einfach eine Sequenz von elementaren Anweisungen ab. Setze i auf i+1 Setze j auf 2*i usw. Im Flussdiagramm wird so eine Sequenz durch ein Rechteck dargestellt. Die Abarbeitungsrichtung des Programms wird durch die Pfeile gekennzeichnet. Ende Grundlagen der Rechnerarchitektur Logik und Arithmetik 73
74 If then else if then else am Beispiel: if(i<10) then <Code-Block 1> else <Code-Block 2> Ist i<10? ja nein Code Block 1 Code Block 2 Grundlagen der Rechnerarchitektur Logik und Arithmetik 74
75 Switch Statement Switch Statement am Beispiel: i=1? ja Code Block 1 switch(i) case 1: <Code-Block 1> case 2: <Code-Block 2>... defaut: <Code-Block n> nein i=2? nein... ja Code Block 2 Code Block n Grundlagen der Rechnerarchitektur Logik und Arithmetik 75
76 For Schleife For Schleife am Beispiel: for(i=0; i<10; i++) { <das innere der Schleife> } Bedeutet: Initialisiere i mit 0 Führe das innere der Schleife aus Erhöhe i um eins Wiederhole wenn immer noch i<10 Start Setze i auf 0 Ist i<10? ja Innere der Schleife nein Erhöhe i um 1 Ende Grundlagen der Rechnerarchitektur Logik und Arithmetik 76
77 While Schleife While Schleife am Beispiel: Start i=0 while(i<10) { <das innere der Schleife> i++ } Bedeutet: Initialisiere i mit 0 Führe das innere der Schleife aus Erhöhe i um eins Wiederhole wenn immer noch i<10 Setze i auf 0 Ist i<10? ja Innere der Schleife Erhöhe i um 1 nein Ende Grundlagen der Rechnerarchitektur Logik und Arithmetik 77
78 Beispiel Gegeben seien die ganzzahligen Variablen n und m. Bestimme größtes k welches n k < m erfüllt: Grundlagen der Rechnerarchitektur Logik und Arithmetik 78
79 Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
80 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: Multiplikator B: * Produkt: Grundlagen der Rechnerarchitektur Logik und Arithmetik 80
81 Maximale Länge des Ergebnisses Beobachtung: Multiplikand der Länge n Bits und Multiplikator der Länge m Bits ergibt Produkt einer Länge mit maximal n+m Bits. Grundlagen der Rechnerarchitektur Logik und Arithmetik 81
82 Das Verfahren als Algorithmus 1 Addiere Multiplikand zum Produkt Beispiel für 4 Bit Zahlen Start Teste erstes Multiplikator Bit Shifte Multiplikand ein Bit nach Links Shifte Multiplikator ein Bit nach Rechts 5ter Durchlauf? ja Ende nein 0 Beispiel 1001*0101: * Grundlagen der Rechnerarchitektur Logik und Arithmetik 82
83 Das Verfahren in Hardware Links Shift 8 Bit Multiplikand Demonstration mit 1001 * 0110 = Links Shift 8 Bit ALU Rechts Shift 4 Bit Multiplikator 3.Rechts Shift 8 Bit Produkt 1. Produkt = Produkt + Multiplikand, wenn Bit 0 des Multiplikators = 1 Control Test 4. Anzahl Durchläufe = 5 Ende Beispiel für 4 Bit Zahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 83
84 Vorzeichenbehaftete Multiplikation Betrachte Multiplikand x und Multiplikator y. Sei x = x wenn x nicht negativ bzw. x = x sonst. Sei y = y wenn y nicht negativ bzw. y = y sonst. Berechne z = x * y. Ergebnis z = z wenn x und y nicht negativ oder x und y negativ, ansonsten ist z = z. Möglichkeit 2: Tausche im Verfahren der vorigen Folie das Produktregister mit einem vorzeichenbehafteten Rechts Shift Register aus. Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 84
85 Weitere Beschleunigungen Eine ALU für jede Summation x 3 *y x 2 *y 4 Bit ALU c s 3 s 2 s 1 s 0 x 1 *y 4 Bit ALU c s 3 s 2 s 1 s 0 x 0 *y 3 y 2 y 1 4 Bit ALU c s 3 s 2 s 1 s 0 x 0 *y 0 Beobachtung: (Y) * (X) = = = (Z) z 7 z 6 z 5 z 4 z 3 z 2 z 1 z 0 Beispiel für 4 Bit Zahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 85
86 Weitere Beschleunigungen Parallele Organisation der ALUs in einen Binärbaum (keine weiteren Details hier) Jede ALU Operation verbrauche einen Taktzyklus. Wie viele Taktzyklen dauert die Multiplikation von 32 Bit Zahlen? Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Logik und Arithmetik 86
87 Division Grundlagen der Rechnerarchitektur Logik und Arithmetik 87
88 Division nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a : b? Beispiel: Dividend Divisor Quotient : = Rest: Grundlagen der Rechnerarchitektur Logik und Arithmetik 88
89 Shifte Quotient nach Links und setze dessen LSB=1. Beispiel für 4 Bit Zahlen Das Verfahren als Algorithmus 0 Start Subtrahiere Divisor vom Rest Teste Rest Shifte Divisor ein Bit nach Rechts 6ter Durchlauf? ja Ende <0 Restauriere den alten Rest. Shifte Quotient nach Links und setze dessen LSB=0. nein Beispiel 1001 : 10: Dvdt :Dvsr= Qtnt : 10 = Rest Grundlagen der Rechnerarchitektur Logik und Arithmetik 89
90 Das Verfahren in Hardware Rechts Shift 8 Bit Divisor Demonstration mit 1001 : 0010 = 100 Rest 1 3. Rechts Shift Links Shift 4 Bit Quotient 8 Bit ALU 2. Links Shift; LSB=Rest wurde verändert 1. Rest=Rest Divisor, wenn Divisor < Rest 4. Anzahl Durchläufe = 6 Ende 8 Bit Rest Control Test Beispiel für 4 Bit Zahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 90
91 Vorzeichenbehaftete Division Umgang mit dem Quotienten (analog wie für Multiplikation): Betrachte Divisor x und Dividend y (also: Quotient z von y:x). Sei x = x wenn x nicht negativ bzw. x = x sonst. Sei y = y wenn y nicht negativ bzw. y = y sonst. Berechne Quotient z von y : x. Ergebnis z = z wenn x und y nicht negativ oder x und y negativ, ansonsten ist z = z. Und was ist das Vorzeichen des Rests? Beispiel: Dividend : Divisor Quotient Rest Quotient * Divisor + Rest = Dividend 7 : * = 7-7 : * 2 1 = -7 7 : * = 7-7 : * -2 1 = -7 Also: Vorzeichen des Rests ist Vorzeichen des Dividend. Grundlagen der Rechnerarchitektur Logik und Arithmetik 91
92 Gleitkommazahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 92
93 Reelle Gleitkommazahlen Beispiel Kleine Zahl Große Zahl Wissenschaftliche Darstellung (eine Ziffer links des Kommas) Normalisierte Darstellung (keine führende Null) Grundlagen der Rechnerarchitektur Logik und Arithmetik 93
94 Binäre Gleitkommazahlen Was ist der Dezimalwert der binären Gleitkommazahl 101,1001? Was bedeutet 11,011 * 2 2? Also: mit 2 i multiplizieren verschiebt das Komma um i Stellen nach rechts. Analog: mit 2 i multiplizieren verschiebt das Komma um i Stellen nach links. Grundlagen der Rechnerarchitektur Logik und Arithmetik 94
95 Binäre Gleitkommazahlen Was ist die wissenschaftliche, normalisierte Darstellung der binären Gleitkommazahl zur dezimalen Gleitkommazahl 0,625? Grundlagen der Rechnerarchitektur Logik und Arithmetik 95
96 Nebenbemerkung Betrachte die recht harmlose Dezimalzahl 0,8. Für die folgende unendliche Reihe rechnet man leicht nach: ( ) + ( ) + ( ) + ( ) +... = 4/5 = 0.8 Folglich ist die Binärdarstellung von 0.8 unendlich lang, nämlich: 0, Annahme wir speichern nur die ersten 32 Bits. Rechnet man in den Dezimalwert x zurück, dann ergibt sich: x = ( ) + ( ) + ( ) ( ) = / = 0, ,8 Oha, 0,8 ist scheinbar doch nicht so harmlos. Es gibt folglich Zahlen mit endlicher dezimaler Gleitkommadarstellung, die binär nicht mit endlicher Anzahl Bits darstellbar sind. Grundlagen der Rechnerarchitektur Logik und Arithmetik 96
97 N Bit Darstellung von Gleitkommazahlen Normalisierte, wissenschaftliche Darstellung zur Basis 2. Beispiel: Allgemein: Sign and Magnitude Darstellung für beispielsweise 32 Bits: (s=0 für + und s=1 für ) s exponent fraction 1 Bit 8 Bits 23 Bits Tradeoff: Viele Fraction Bits: hohe Genauigkeit der Fraction Viele Exponent Bits: großer darstellbarer Zahlenbereich Grundlagen der Rechnerarchitektur Logik und Arithmetik 97
98 Beispiel s exponent fraction 1 Bit 8 Bits 23 Bits Was ist der Dezimalwert x des folgenden Bit Strings? Grundlagen der Rechnerarchitektur Logik und Arithmetik 98
99 Wertebereiche, Overflow und Underflow s exponent fraction 1 Bit 8 Bits 23 Bits Kleinste darstellbare nicht negative Zahl annähernd 2,0 * Größte darstellbare Zahl annähernd 2,0 * Was, wenn die darzustellende Zahl außerhalb dieses Bereichs ist? Overflow: Zahl zu groß (Exponent ist zu groß um im Exponent Feld darstellbar zu sein) Underflow: Zahl zu klein (Negativer Exponent ist zu groß um im Exponent Feld darstellbar zu sein) Grundlagen der Rechnerarchitektur Logik und Arithmetik 99
100 Beispiel: Single Precision Double Precision Double und Single Precision Insgesamt 32 Bits s exponent fraction 1 Bit 8 Bits 23 Bits Insgesamt 64 Bits s exponent fraction 1 Bit 11 Bits 52 Bits Double Precision hat höhere Genauigkeit der Fraction und mit größerem Exponent auch einen größeren darstellbaren Zahlenbereich. Double Precision in diesem Beispiel: Kleinste darstellbare nicht negative Zahl annähernd 2,0 * Größte darstellbare Zahl annähernd 2,0 * Grundlagen der Rechnerarchitektur Logik und Arithmetik 100
101 Der Zahlenformatstandard IEEE 754 Single Precision Double Precision Insgesamt 32 Bits s exponent fraction 1 Bit 8 Bits 23 Bits Insgesamt 64 Bits s exponent fraction 1 Bit 11 Bits 52 Bits Bit Aufteilungen in dieser Form sind in IEEE 754 spezifiziert. Betrachte die wissenschaftliche, normalisierte Darstellung: [+ oder ] 1,xxxxxxxx * 2 yyyy Beobachtung: die 1 vor dem Komma ist redundant. Somit: Bei IEEE 754 wird die 1 implizit angenommen und in fraction nicht codiert. fraction speichert nur Nachkommastellen. Grundlagen der Rechnerarchitektur Logik und Arithmetik 101
102 Beispiel s exponent fraction 1 Bit 8 Bits 23 Bits Es sei die 1 vor dem Komma implizit angenommen. Fraction speichere damit nur die Nachkommastellen. Was ist der Dezimalwert x des folgenden Bit Strings? Grundlagen der Rechnerarchitektur Logik und Arithmetik 102
103 Weitere Eigenschaften von IEEE 754 Unterscheidung von Fraction und 1+Fraction in der Darstellung ( 1) S * (1 + Fraction) * 2 Exponent 1+Fraction wird als Significant (deutsch: Mantisse) bezeichnet. Grundlagen der Rechnerarchitektur Logik und Arithmetik 103
104 Motivation für eine geeignete Exponent Darstellung Annahme: Exponent wäre mit Zweierkomplement dargestellt. Wie macht man einen Größer Kleiner Vergleich der folgenden beiden Zahlen? Zahl 1: Zahl 2: Vergleiche erst mal die Vorzeichenbits. Bei unterschiedlichen Vorzeichenbits ist der Vergleich beendet. 2. Vergleiche die Exponenten. Ist einer größer als der andere, ist der Vergleich beendet. (Signed Vergleich) 3. Vergleiche die Fractions. (Unsigned Vergleich) Kann man Schritt 2 und 3 in einem durchführen? Kleinster Exponent müsste und größter Exponent müsste sein, dann könnte man Exponent und Fraction für einen Vergleich einfach konkatenieren. Grundlagen der Rechnerarchitektur Logik und Arithmetik 104
105 Darstellung des Exponenten in Biased Notation Erinnerung: Biased Notation (hier mit 8 Bit und Bias 127): = -127 (0-Bias = -127) = -126 (1-Bias = -126) = -1 (126-Bias = -1) = 0 (127-Bias = 0) = 1 (128-Bias = 1) = 127 (254-Bias = 127) = 128 (255-Bias = 128) Zusammengefasst: Der Wert x einer Zahl in IEEE 754 Darstellung ist (Single Precision (8 Bit Exponent) Bias=127, Double Precision (11 Bit Exponent) Bias=1023) Grundlagen der Rechnerarchitektur Logik und Arithmetik 105
106 IEEE 754 Encoding Wie stellt man im IEEE 754 Format eigentlich die 0 dar!? ( 1) S * (1 + Fraction) * 2 (Exponent Bias) Single Precision (Bias=127) Double Precision (Bias=1023) Dargestelltes Objekt Exponent Fraction Exponent Fraction Nicht Null 0 Nicht Null (+/ Denormalised Number) 1bis 254 Beliebig 1 bis 2046 Beliebig +/ Gleitkommazahl / Unendlich 255 Nicht Null 2047 Nicht Null NaN (Not a Number) Grundlagen der Rechnerarchitektur Logik und Arithmetik 106
107 Quiz Betrachte IEEE 754 Single Precision, also Bias = 127. Was ist der Dezimalwert der folgenden Binärzahl? ( 1) S * (1 + Fraction) * 2 (Exponent Bias) Grundlagen der Rechnerarchitektur Logik und Arithmetik 107
108 Quiiiiz Bestimme S, Fraction und Exponent der IEEE 754 Single Precision Repräsentation (also Bias = 127) der Dezimalzahl ( 1) S * (1 + Fraction) * 2 (Exponent Bias) Grundlagen der Rechnerarchitektur Logik und Arithmetik 108
109 Gleitkommaarithmetik Grundlagen der Rechnerarchitektur Logik und Arithmetik 109
110 Gleitkommaarithmetik Addition von binären n Bit Gleitkommazahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 110
111 Vorüberlegung Addition mit gleichem Exponent (Nachkomma mit 4 Bits kodiert): Addition mit unterschiedlichen Exponenten (Nachkomma 4 Bits): Grundlagen der Rechnerarchitektur Logik und Arithmetik 111
112 Vorüberlegung Ergebnis muss unter Umständen wieder normalisiert werden: Bei Einschränkung auf n Bit (z.b. Nachkomma auf 4 Bit eingeschränkt) kann dies anschließendes Auf bzw. Abrunden erfordern. Beispiel: Runden nach der Schulmethode Grundlagen der Rechnerarchitektur Logik und Arithmetik 112
113 Vorüberlegung Das Runden kann ggf. neues Normalisieren erforderlich machen: Normalisierungen können Overflows und Underflows hervorrufen. Beispiel: IEEE 754 Single Precision erlaubt Exponenten von 126 bis 127. Somit ist zum Beispiel: Grundlagen der Rechnerarchitektur Logik und Arithmetik 113
114 Additionsalgorithmus 2 Beispiele: 4 Bit für die Mantisse und 8 Bit für den Exponenten. Start (1) (2) Beispiel 1 Beispiel 2 1,000 * 2 1 1,001 * ,110 * ,101 * 2 11 (1) Vergleiche Exponenten der beiden Zahlen. Shifte die kleinere Zahl nach rechts, so dass der Exponent mit dem Exponent der größeren Zahl übereinstimmt. (Mantissen Alignment) (2) Addiere die Mantissen. Grundlagen der Rechnerarchitektur Logik und Arithmetik 114
115 Additionsalgorithmus 2 Beispiele: 4 Bit für die Mantisse und 8 Bit für den Exponenten. Beispiel 1 Beispiel 2 (2) 0,001 * ,001 * 2 11 (3) (3) Normalisiere die Summe, entweder durch Rechts Shift und hoch setzen oder durch Links Shift und runter setzen des Exponenten. Im Beispiel 8 Bit für den Exponenten. Overflow oder Underflow? ja nein Exception Grundlagen der Rechnerarchitektur Logik und Arithmetik 115
116 Additionsalgorithmus 2 Beispiele: 4 Bit für die Mantisse und 8 Bit für den Exponenten. zurück nach (3) Beispiel 1 Beispiel 2 (3) 1,000 * 2 4 1,0001 * 2 12 (4) (4) Runde die Mantisse auf die verfügbare Anzahl Bits. Immer noch normalisiert? nein ja Fertig Grundlagen der Rechnerarchitektur Logik und Arithmetik 116
117 Noch eine Bemerkung Betrachte die folgenden binären Floats mit 8 Bit Mantisse: x = 1, * 2 100, y = 1, * 2 100, z = 1, Was ist x + (y + z)? Was ist (x + y) + z? Somit ist x + (y + z) (x + y) + z, d.h. die Gleitkommaaddition ist nicht assoziativ! Quiz: Was ist die Konsequenz, wenn man x 1 + x x n parallel berechnen möchte? Grundlagen der Rechnerarchitektur Logik und Arithmetik 117
118 Gleitkommaarithmetik Multiplikation von binären n Bit Gleitkommazahlen Grundlagen der Rechnerarchitektur Logik und Arithmetik 118
119 Vorüberlegung Multiplikation von zwei beliebigen binären Floats in normalisierter Darstellung. Was ist der Exponent des Ergebnisses? Multiplikation der Mantissen. Wo kommt das Komma hin? Was ist das Vorzeichen v von x * y? Grundlagen der Rechnerarchitektur Logik und Arithmetik 119
120 Algorithmus Beispiel: 4 Bit für die Mantisse und 8 Bit für den Exponenten. (1) 1,101 * 2 1 * 1,100 * 2 2 Start (1) Addiere die Exponenten. (Subtrahiere Bias im Falle von Biased Notation ) Grundlagen der Rechnerarchitektur Logik und Arithmetik 120
121 Algorithmus Beispiel: 4 Bit für die Mantisse und 8 Bit für den Exponenten. (1) Der Exponent ist 3 Die Mantissen sind: 1,101 und 1,100 (2) (2) Multipliziere die Mantissen. Grundlagen der Rechnerarchitektur Logik und Arithmetik 121
122 Algorithmus Beispiel: 4 Bit für die Mantisse und 8 Bit für den Exponenten. (2) 10, * 2 3 (3) (3) Normalisiere das Produkt Falls notwendig. Normalisierung erfolgt durch Rechts Shift und erhöhen des Exponenten. Im Beispiel 8 Bit für den Exponenten. Overflow oder Underflow? ja nein Exception Grundlagen der Rechnerarchitektur Logik und Arithmetik 122
123 Beispiel: 4 Bit für die Mantisse und 8 Bit für den Exponenten. (Eingabe: 1,101 * 2 1 * 1,100 * 2 2 ) Algorithmus (4) Runde die Mantisse auf die verfügbare Anzahl Bits. zurück nach (3) (3) 1, * 2 2 (4) Immer noch normalisiert? nein (5) ja (5) Setze Vorzeichen auf + wenn die Vorzeichen der Eingaben gleich waren. Sonst setze Vorzeichen auf. Fertig Grundlagen der Rechnerarchitektur Logik und Arithmetik 123
124 Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124
125 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir vereinfacht die beim Mantissen Alignment rechst heraus geschobenen Bits einfach abgeschnitten. Zum Beispiel: Mantissen Alignment um 5 Stellen Mantisse In Wirklichkeit (z.b. IEEE 754 Spezifikation) wird zur Steigerung der Genauigkeit etwas geschickter vorgegangen. Obiges Beispiel: Mantisse Rechenoperationen finden auf dieser erweiterten Mantisse statt. Grundlagen der Rechnerarchitektur Logik und Arithmetik 125
126 Quiz Wir betrachten 8 Bit Mantissen. Es seien die folgenden beiden binären Zahlen zu addieren. 1, * , * 2 2 Wie sehen Mantisse, Guard Bit, Round Bit und Sticky Bit nach dem Mantissen Alignment aus? 1, * 2 6 1, * Bit Mantisse 8 Bit Mantisse Grundlagen der Rechnerarchitektur Logik und Arithmetik 126
127 IEEE 754 Rounding Modes + / Round toward + Round toward Round toward 0 Round to nearest Synonym Ergebnis Beispiel 21,7 Beispiel 21,7 Ceil Floor Truncate Mantisse M G R S Kleinster Wert nicht kleiner als M Größter Wert nicht größer als M Genau M Wert, der am nächsten zu M liegt Grundlagen der Rechnerarchitektur Logik und Arithmetik 127
128 IEEE Rounding Modes: Round to Nearest Mantisse G R S Eingabe Form bei Tie Rundung Ergebnis M Mantisse 000 Same M = Mantisse Mantisse 001 Down M = Mantisse Mantisse 010 Down M = Mantisse Mantisse 011 Down M = Mantisse Mantisse Down M = Mantisse (Tie) Up M = Mantisse + 1 Mantisse 101 Up M = Mantisse + 1 Mantisse 110 Up M = Mantisse + 1 Mantisse 111 Up M = Mantisse + 1 Grundlagen der Rechnerarchitektur Logik und Arithmetik 128
129 Quiz Was ist das Rundungsergebnis bei Round to Nearest für folgende Instanzen von 8 Bit Mantisse Guard Round Sticky? A.) B.) C.) GRS Mantisse Richtung 001 Down 010 Down 011 Down Down...1 Up 101 Up 110 Up 111 Up Übersicht zu Round to Nearest Grundlagen der Rechnerarchitektur Logik und Arithmetik 129
130 Beispiel für die Genauigkeitssteigerung Wir betrachten 8 Bit Mantissen. Zu addieren sei: 1, * 2 6 (dezimal = 99,0000) + 1, * 2 2 (dezimal = 5,8125) (Summe dezimal = 104,8125) Das Mantissen Alignment und GRS Bits kennen wir schon, also: Rechnung: Mantisse GRS Mantisse Rundung: ohne Ergebnis: 1, * 2 6 1, * 2 6 Dezimal : 105,0 104,5 Also hat man mit GRS Bits und Rundung einen Abstand von 105,0 104,8125 = 0,1875. Ohne GRS Bits und Rundung ist der Abstand 104, ,5 = 0,3125. Grundlagen der Rechnerarchitektur Logik und Arithmetik 130
131 Denormalized Numbers Kleinste mit IEEE754 Single Precision darstellbare normalized Zahl > 0: 1, * Der Exponent 127 ist für die 0 reserviert; die Fraction ist dabei 0:., * Warum die Fraction für Exponent 127 nicht sinnvoll nutzen? Eine Denormalized Number der Form., * bedeutet: 0, * Somit, kleinste mit IEEE754 Single Precision darstellbare Zahl > 0: 0, * = 1,0 * Grundlagen der Rechnerarchitektur Logik und Arithmetik 131
132 Quiz Was ist mit denormalized Numbers bei IEEE 754 Double Precision die kleinste darstellbare Zahl > 0? Erinnerung: IEEE 754 Double Precision: Fraction: 52 Bits Exponent Bias: 1023 Grundlagen der Rechnerarchitektur Logik und Arithmetik 132
133 Webseiten Tipp zum Üben users tima.imag.fr/cis/guyot/cours/oparithm/english/flottan.htm Floating point numbers format Rounding to the nearest Addition and subtraction Grundlagen der Rechnerarchitektur Logik und Arithmetik 133
134 Zusammenfassung und Literatur Grundlagen der Rechnerarchitektur Logik und Arithmetik 134
135 Zusammenfassung Rechnerarithmetik endlich und stimmt damit nicht exakt mit Arithmetik über reellen Zahlen überein Häufig Approximation realer Zahlen Assoziativgesetz gilt z.b. nicht Hat z.b. Konsequenz auf paralleles Rechnen Beschränkter Zahlenbereich Overflow, Underflow Wichtigste Entwicklung über die Jahre Zweierkomplement und IEEE 754 Ist in jedem modernen Computer so Grundlagen der Rechnerarchitektur Logik und Arithmetik 135
136 Quiz Annahme es gäbe ein 16 Bit IEEE 754 Floating Point Format mit 5 Bits für den Exponenten. Welcher Zahlenbereich wird durch dieses Format abgedeckt? A: * 2 0 bis * 2 31, 0 B: +/ * 2 14 bis +/ * / 0, +/, NaN C: +/ * 2 14 bis +/ * 2 15, +/ 0, +/, NaN D: +/ * 2 15 bis +/ * 2 14, +/ 0, +/, NaN Grundlagen der Rechnerarchitektur Logik und Arithmetik 136
137 Literatur [PattersonHennessy2012] David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, Signed and Unsigned Numbers 2.6 Logical Operations 3.1 Introduction 3.2 Addition and Subtraction 3.3 Multiplication 3.4 Division 3.5 Floating Point 3.6 Parallelism and Computer Arithmetic: Associativity Grundlagen der Rechnerarchitektur Logik und Arithmetik 137
Control Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control
Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
MehrDarstellung von negativen binären Zahlen
Darstellung von negativen binären Zahlen Beobachtung für eine beliebige Binärzahl B, z.b. B=110010: B + NOT(B) ---------------------------------------------- = B + NOT(B) 1 + (Carry) ----------------------------------------------
MehrN Bit binäre Zahlen (signed)
N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101
MehrGleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124
Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir
MehrLogische Bausteine. Addierwerke. Grundlagen der Rechnerarchitektur Logik und Arithmetik 48
Logische Bausteine Addierwerke Grundlagen der Rechnerarchitektur Logik und Arithmetik 48 Addition eines einzigen Bits Eingang Ausgang a b CarryIn CarryOut Sum 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1
MehrWertebereiche, Overflow und Underflow
Wertebereiche, Overflow und Underflow s exponent fraction 1 Bit 8 Bits 23 Bits Kleinste darstellbare nicht negative Zahl annähernd 2,0 * 10 38 Größte darstellbare Zahl annähernd 2,0 * 10 38 Was, wenn die
MehrLogische Bausteine. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31
Logische Bausteine Sequentielle Schaltungen Shlt Grundlagen der Rechnerarchitektur Logik und Arithmetik 31 Sequentielle Schaltungen n Eingänge m Ausgänge n Eingänge m Ausgänge Zustand Ausgänge hängen nur
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
MehrN Bit binäre Zahlen (signed)
N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101
MehrBinäre Gleitkommazahlen
Binäre Gleitkommazahlen Was ist die wissenschaftliche, normalisierte Darstellung der binären Gleitkommazahl zur dezimalen Gleitkommazahl 0,625? Grundlagen der Rechnerarchitektur Logik und Arithmetik 72
MehrGrundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik
Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division
MehrRechnernetze und Organisation
Arithmetic Logic Unit ALU Professor Dr. Johannes Horst Wolkerstorfer Cerjak, 9.2.25 RNO VO4_alu Übersicht Motivation ALU Addition Subtraktion De Morgan Shift Multiplikation Gleitkommazahlen Professor Dr.
Mehr2.1.2 Gleitkommazahlen
.1. Gleitkommazahlen Überblick: Gleitkommazahlen Gleitkommadarstellung Arithmetische Operationen auf Gleitkommazahlen mit fester Anzahl von Mantissen- und Exponentenbits Insbesondere Rundungsproblematik:
MehrEinführung in die Informatik I
Einführung in die Informatik I Arithmetische und bitweise Operatoren im Binärsystem Prof. Dr. Nikolaus Wulff Operationen mit Binärzahlen Beim Rechnen mit Binärzahlen gibt es die ganz normalen arithmetischen
Mehr2 Darstellung von Zahlen und Zeichen
2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 8. Vorlesung Inhalt Gleitkomma-Darstellung Normalisierte Darstellung Denormalisierte Darstellung Rechnerarchitekturen Von Neumann-Architektur Harvard-Architektur Rechenwerk (ALU)
MehrMotivation 31. Mai 2005
Motivation 31. Mai 25 Zuletzt behandelt: Zahlendarstellung und Rechnerarithmetik Festkommazahlen: Vorzeichen/Betrag-Darstellung Einerkomplement, Zweierkomplement Rückführung der Subtraktion auf die Addition
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrII. Grundlagen der Programmierung
II. Grundlagen der Programmierung II.1. Zahlenssteme und elementare Logik 1.1. Zahlenssteme 1.1.1. Ganze Zahlen Ganze Zahlen werden im Dezimalsstem als Folge von Ziffern 0, 1,..., 9 dargestellt, z.b. 123
Mehrbei Unterlauf wird stattdessen Hälfte des Divisors addiert Ersparnisse einer Addition bzw. Subtraktion
6.2 Non-Restoring Division Restoring Division Divisor wird subtrahiert falls Unterlauf (Ergebnis negativ) Divisor wird wieder addiert im nächsten Durchlauf wird die Hälfte des Divisor subtrahiert (Linksshift
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
MehrDie Zahl ist: (z 2, z 1, z 0 ) (z ) : 7 = 0 Rest z 2
Übungen zur Vorlesung Technische Informatik I, SS Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 4 Rechnerarithmetik Aufgabe : a) Bestimmen Sie die Darstellung der Zahl 3 zur Basis 7. 3 = 7 (Sehen Sie
MehrInformationsmenge. Maßeinheit: 1 Bit. 1 Byte. Umrechnungen: Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit
Informationsmenge Maßeinheit: 1 Bit Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit 1 Byte Zusammenfassung von 8 Bit, kleinste Speichereinheit im Computer, liefert
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Prozessor Übersicht Datenpfad Control Pipelining Data Hazards Control Hazards Multiple Issue Grundlagen der Rechnerarchitektur Prozessor 2 Datenpfad einer einfachen MIPS
Mehr6. Zahlendarstellungen und Rechnerarithmetik
6. Zahlendarstellungen und Rechnerarithmetik... x n y n x n-1 y n-1 x 1 y 1 x 0 y 0 CO Σ Σ... Σ Σ CI z n z n-1 z 1 z 0 Negative Zahlen, Zweierkomplement Rationale Zahlen, Gleitkommazahlen Halbaddierer,
MehrInhalt. Zahlendarstellungen
Inhalt 1 Motivation 2 Integer- und Festkomma-Arithmetik Zahlendarstellungen Algorithmen für Integer-Operationen Integer-Rechenwerke Rechnen bei eingeschränkter Präzision 3 Gleitkomma-Arithmetik Zahlendarstellungen
Mehr3 Verarbeitung und Speicherung elementarer Daten
3 Verarbeitung und Speicherung elementarer Daten 3.1 Boolsche Algebra Definition: Eine Boolsche Algebra ist eine Menge B mit den darauf definierten zweistelligen Verknüpfungen (+,*) sowie der einstelligen
MehrAufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4
Aufgabe 1 Eine Zahl a ist mit 8 Bits vorzeichenlos (8 bit unsigned) dargestellt. Die Zahl y soll die Zahl a multipliziert mit 4 sein (y = a 4 D ). a) Wie viele Bits benötigen Sie für die Darstellung von
MehrTeil II. Schaltfunktionen
Teil II Schaltfunktionen 1 Teil II.1 Zahlendarstellung 2 b-adische Systeme Sei b IN mit b > 1 und E b = {0, 1,..., b 1} (Alphabet). Dann ist jede Fixpunktzahl z (mit n Vorkomma und k Nachkommastellen)
MehrInhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen
3 Zahlendarstellung - Zahlensysteme - b-adische Darstellung natürlicher Zahlen - Komplementbildung - Darstellung ganzer und reeller Zahlen Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen......
MehrVorlesung Programmieren
Vorlesung Programmieren Zahlendarstellung Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Agenda Zahlendarstellung Oder: wie rechnen
MehrBinäre Division. Binäre Division (Forts.)
Binäre Division Umkehrung der Multiplikation: Berechnung von q = a/b durch wiederholte bedingte Subtraktionen und Schiebeoperationen in jedem Schritt wird Divisor b testweise vom Dividenden a subtrahiert:
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik Mikroprogrammierung schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik Mikroprogrammierung schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation
Mehr4. Zahlendarstellungen
121 4. Zahlendarstellungen Wertebereich der Typen int, float und double Gemischte Ausdrücke und Konversionen; Löcher im Wertebereich; Fliesskommazahlensysteme; IEEE Standard; Grenzen der Fliesskommaarithmetik;
MehrGrundlagen der Technischen Informatik. 4. Übung
Grundlagen der Technischen Informatik 4. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 4. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Aufgabe 6: +/-/*
MehrEinführung in die Informatik I
Einführung in die Informatik I Das Rechnen in Zahlensystemen zur Basis b=2, 8, 10 und 16 Prof. Dr. Nikolaus Wulff Zahlensysteme Neben dem üblichen dezimalen Zahlensystem zur Basis 10 sind in der Informatik
MehrGrundlagen der Technischen Informatik. 4. Übung
Grundlagen der Technischen Informatik 4. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 4. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: IEEE Format Zahlenumwandlung
Mehr5 Zahlenformate und deren Grenzen
1 5 Zahlenformate und deren Grenzen 5.1 Erinnerung B-adische Zahlendarstellung Stellenwertsystem: Jede Ziffer hat ihren Wert, und die Stelle der Ziffer in der Zahl modifiziert den Wert. 745 = 7 100 + 4
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 06.03.09 2-1 Heutige große Übung Allgemeines
MehrMultiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation
Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete
Mehrin vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen
Inhalt Motivation 2 Integer- und Festkomma-Arithmetik Zahlendarstellungen Algorithmen für Integer-Operationen Integer-Rechenwerke Rechnen bei eingeschränkter Präzision 3 Gleitkomma-Arithmetik Zahlendarstellungen
MehrDuE-Tutorien 16 und 17
Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Tutorienwoche 2 am 12.11.2010 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der
MehrComputerarithmetik (1)
Computerarithmetik () Fragen: Wie werden Zahlen repräsentiert und konvertiert? Wie werden negative Zahlen und Brüche repräsentiert? Wie werden die Grundrechenarten ausgeführt? Was ist, wenn das Ergebnis
MehrRechnerstrukturen WS 2012/13
Rechnerstrukturen WS 2012/13 Boolesche Funktionen und Schaltnetze Rechner-Arithmetik Addition (Wiederholung) Multiplikation Wallace-Tree Subtraktion Addition negativer Zahlen Gleitkommazahlen-Arithmetik
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Analoge und digitale Hardware bei
MehrRechnerstrukturen. Michael Engel und Peter Marwedel SS TU Dortmund, Fakultät für Informatik
Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik SS 2013 Hinweis: Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 25. April 2013 1 Boolesche
MehrRechnerstrukturen. Michael Engel und Peter Marwedel WS 2013/14. TU Dortmund, Fakultät für Informatik
Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik WS 2013/14 Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 30. Oktober 2013 1/35 1 Boolesche
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrDas Rechnermodell - Funktion
Darstellung von Zahlen und Zeichen im Rechner Darstellung von Zeichen ASCII-Kodierung Zahlensysteme Dezimalsystem, Dualsystem, Hexadezimalsystem Darstellung von Zahlen im Rechner Natürliche Zahlen Ganze
Mehr2 Darstellung von Zahlen und Zeichen
2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f
Mehr183.580, WS2012 Übungsgruppen: Mo., 22.10.
VU Grundlagen digitaler Systeme Übung 2: Numerik, Boolesche Algebra 183.580, WS2012 Übungsgruppen: Mo., 22.10. Aufgabe 1: Binäre Gleitpunkt-Arithmetik Addition & Subtraktion Gegeben sind die Zahlen: A
MehrGrundstrukturen: Speicherorganisation und Zahlenmengen
Zahlendarstellung Zahlen und ihre Darstellung in Digitalrechnern Grundstrukturen: Speicherorganisation und Zahlenmengen Linear organisierter Speicher zu einer Adresse gehört ein Speicher mit 3 Bit-Zellen
Mehr6.2 Kodierung von Zahlen
6.2 Kodierung von Zahlen Neue Begriffe é Festkommadarstellungen é Zahlendarstellung durch Betrag und Vorzeichen é Einer-/Zweierkomplement-Darstellung é Gleitkommadarstellung é IEEE-754 Format BB TI I 6.2/1
Mehr4. Zahlendarstellungen
Bin are Zahlendarstellungen Binäre Darstellung ("Bits" aus {0, 1) 4. Zahlendarstellungen bn bn 1... b1 b0 entspricht der Zahl bn 2n + + b1 2 + b0 Wertebereich der Typen int, float und double Gemischte
MehrZwischenklausur Informatik, WS 2016/17. Lösungen zu den Aufgaben
Zwischenklausur Informatik, WS 206/7 4.2.206 Lösungen zu den Aufgaben. Gegeben sind folgende Dualzahlen in Zweierkomplementdarstellung. Geben Sie den jeweils zugehörigen Dezimalwert an! a) entspricht der
MehrZahlen in Binärdarstellung
Zahlen in Binärdarstellung 1 Zahlensysteme Das Dezimalsystem Das Dezimalsystem ist ein Stellenwertsystem (Posititionssystem) zur Basis 10. Das bedeutet, dass eine Ziffer neben ihrem eigenen Wert noch einen
MehrGTI ÜBUNG 4 BINÄR-, HEX- UND GLEITKOMMAZAHLEN-ARITHMETIK
1 GTI ÜBUNG 4 BINÄR-, HEX- UND GLEITKOMMAZAHLEN-ARITHMETIK Aufgabe 1 Bin- und Hex Arithmetik 2 Führen Sie die folgenden Berechnungen im angegebenen Zahlensystem aus, ohne die Zahlen ins Dezimalsystem umzuwandeln:
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 3 AM 13./14.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrWandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen. Teilen durch die Basis des Zahlensystems. Der jeweilige Rest ergibt die Ziffer.
Digitaltechnik Aufgaben + Lösungen 2: Zahlen und Arithmetik Aufgabe 1 Wandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen a) 4 D b) 13 D c) 118 D d) 67 D Teilen durch die Basis des Zahlensystems.
MehrZahlen im Computer (Klasse 7 Aufbaukurs Informatik)
Zahlen im Computer (Klasse 7 Aufbaukurs Informatik) Die Bildauswahl erfolgte in Anlehnung an das Alter der Kinder Prof. J. Walter Bitte römische Zahlen im Geschichtsunterricht! Messsystem mit Mikrocontroller
MehrZwischenklausur Informatik, WS 2014/15
Zwischenklausur Informatik, WS /5.. Zugelassene Hilfsmittel: außer Stift und Papier keine Hinweis: Geben Sie bei allen Berechnungen den vollständigen Rechenweg mit an! Alle Aufgaben/Fragen sind unmittelbar
MehrWH: Arithmetik: Floating Point
WH: Arithmetik: Floating Point Elmar Langetepe University of Bonn Robuste Implementierungen Floating Point Arithmetik Bonn 06 1 Real RAM Robuste Implementierungen Floating Point Arithmetik Bonn 06 2 Real
MehrÜbungsklausur - Beispiellösung
Digitale Systeme Übungsklausur - Beispiellösung Aufgabe 1 (a) Benutzt man n Bit für die Darstellung im 2-Komplement, so deckt man den Wertebereich von 2 n 1 bis 2 n 1 1 ab. Also ergibt sich der abgedeckte
MehrGrundlagen der Technischen Informatik Wintersemester 12/13 J. Kaiser, IVS-EOS
Gleit komma zahlen Gleitkommazahlen in vielen technischen und wissenschaftlichen Anwendungen wird eine große Dynamik benötigt: sowohl sehr kleine als auch sehr große Zahlen sollen einheitlich dargestellt
Mehr1. Tutorium Digitaltechnik und Entwurfsverfahren
1. Tutorium Digitaltechnik und Entwurfsverfahren Tutorium Nr. 25 Alexis Tobias Bernhard Fakultät für Informatik, KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrDas Maschinenmodell Datenrepräsentation
Das Maschinenmodell Datenrepräsentation Darstellung von Zahlen/Zeichen in der Maschine Bit (0/1) ist die kleinste Informationseinheit Größere Einheiten durch Zusammenfassen mehrerer Bits, z.b. 8 Bit =
MehrComputer Arithmetik. Computer Arithmetik Allgemein
Vortrag von René Grohmann und Mirwais Turjalei, 22.11.2000 Computer Arithmetik Computer Arithmetik Allgemein Die ALU: Die Alu ist die Einheit im Computer, die dazu bestimmt ist arithmetische und logische
MehrRechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 14/15 Prof. Dr Jian-Jia Chen Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-.de http://ls1-www.cs.tu-.de Übersicht
MehrVorzeichenbehaftete Festkommazahlen
106 2 Darstellung von Zahlen und Zeichen Vorzeichenbehaftete Festkommazahlen Es gibt verschiedene Möglichkeiten, binäre vorzeichenbehaftete Festkommazahlen darzustellen: Vorzeichen und Betrag EinerKomplement
MehrEinführung in die Programmiertechnik
Einführung in die Programmiertechnik Darstellung von Zahlen Natürliche Zahlen: Darstellungsvarianten Darstellung als Text Üblich, wenn keine Berechnung stattfinden soll z.b. Die Regionalbahn 28023 fährt
Mehrin vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen
Gleitkommazahlen in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen allgemeine Gleitkommazahl zur Basis r
MehrGrundlagen der Technischen Informatik. 4. Übung
Grundlagen der Technischen Informatik 4. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 4. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: IEEE Format Zahlenumwandlung
Mehr21.10.2013. Vorlesung Programmieren. Agenda. Dezimalsystem. Zahlendarstellung. Zahlendarstellung. Oder: wie rechnen Computer?
Vorlesung Programmieren Zahlendarstellung Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Agenda Zahlendarstellung Oder: wie rechnen
MehrKapitel 5: Darstellung von Daten im Rechner
Kapitel 5: Darstellung von Daten im Rechner Kapitel 5 Darstellung von Daten im Rechner und Rechnerarithmetik Literatur: Oberschelp/Vossen, Kapitel 5 Kapitel 5: Darstellung von Daten im Rechner Seite Kapitel
MehrHaDePrak WS 05/ Versuch
HaDePrak WS 05/06 10. Versuch 1 Das IEEE-Format Das Ziel dieser letzten Übung ist es, ein Fließkommapaket für die DLXzu implementieren. Der Einfachheit halber vernachlässigen wir hier im Praktikum jeglichen
MehrLösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 4.1: Zahlensysteme a) Bitte füllen Sie die leeren Zellen
MehrMathematische Werkzeuge für Computergrafik 2016/17. Gleitkommzahlen
Mathematische Werkzeuge für Computergrafik 2016/17 Gleitkommzahlen 1 Grundlagen 1 Da im Computer nur endliche Ressourcen zur Verfügung stehen, können reelle Zahlen in vielen Fällen nicht exakt dargestellt
Mehr3 Rechnen und Schaltnetze
3 Rechnen und Schaltnetze Arithmetik, Logik, Register Taschenrechner rste Prozessoren (z.b. Intel 4004) waren für reine Rechenaufgaben ausgelegt 4 4-Bit Register 4-Bit Datenbus 4 Kbyte Speicher 60000 Befehle/s
MehrZum Nachdenken. Wenn die Zahl (123) hat, was könnte dann (123,45) 10
TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Zum Nachdenken Wenn die Zahl (123) 10 den Wert 1. 10 2 +2. 10 1 +3. 10 0 hat, was könnte dann (123,45) 10 bedeuten? Wenn Sie beliebige reelle Zahlenwerte
MehrZahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär
Zahlensysteme Menschen nutzen zur Angabe von Werten und zum Rechnen vorzugsweise das Dezimalsystem Beispiel 435 Fische aus dem Teich gefischt, d.h. 4 10 2 + 3 10 1 +5 10 0 Digitale Rechner speichern Daten
MehrInformatik I Übung, Woche 41
Giuseppe Accaputo 8. Oktober, 2015 Plan für heute 1. Fragen & Nachbesprechung Übung 3 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 4 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrEingebettete Systeme
Einführung in Eingebettete Systeme Vorlesung 7 Bernd Finkbeiner 03/12/2014 finkbeiner@cs.uni-saarland.de Prof. Bernd Finkbeiner, Ph.D. finkbeiner@cs.uni-saarland.de 1 Schaltfunktionen! Schaltfunktion:
MehrBinäre Darstellung ganzer Zahlen
Vorlesung Objektorientierte Softwareentwicklung Exkurse use Binäre Darstellung ganzer Zahlen Binärdarstellung natürlicher Zahlen Ganze Zahlen im Einerkomplement Ganze Zahlen im Zweierkomplement Elementare
MehrDas negative Zweierkomplementzahlensystem. Ines Junold 23. Februar 2010
Das negative Zweierkomplementzahlensystem Ines Junold 23. Februar 2010 1 Inhaltsverzeichnis 1 Einleitung 3 2 Das konventionelle Zweierkomplement 4 2.1 Definition.......................................
MehrArithmetik. Zahlendarstellung, Addition und Subtraktion Multiplikation, Division, Fest- und Gleitkommazahlen
Computer and Communication Systems (Lehrstuhl für Technische Informatik) Arithmetik Zahlendarstellung, Addition und Subtraktion Multiplikation, Division, Fest- und Gleitkommazahlen [TI] Winter 2013/2014
MehrEinführung in die Informatik I
Einführung in die Informatik I Das Rechnen in Zahlensystemen zur Basis b=2, 8, 10 und 16 Prof. Dr. Nikolaus Wulff Zahlensysteme Neben dem üblichen dezimalen Zahlensystem zur Basis 10 sind in der Informatik
MehrKapitel 5: Daten und Operationen
Kapitel 5: Daten und Operationen Felix Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung Praktische Informatik I im Herbstsemester 2007 Folien nach einer Vorlage von H.-Peter
Mehr2 Darstellung von Zahlen und Zeichen
21 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, dh Y = f (X
MehrAssembler am Beispiel der MIPS Architektur
Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke
Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke Aufgabe 1: a) Bestimmen Sie die Darstellung der Zahl 113
MehrMusterlösung 1. Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016
Musterlösung 1 Mikroprozessortechnik und Eingebettete Systeme 1 WS2015/2016 Hinweis: Die folgenden Aufgaben erheben nicht den Anspruch, eine tiefergehende Kenntnis zu vermitteln; sie sollen lediglich den
MehrE Zahlendarstellungen und Rechnerarithmetik
E Zahlendarstellungen und Rechnerarithmetik Einordnung in das Schichtenmodell: 1. Darstellung positiver ganzer Zahlen 2. binäre Addition 3. Darstellung negativer ganzer Zahlen 4. binäre Subtraktion 5.
MehrDipl.-Ing. Halit Ünver Datenbanken/Künstliche Intelligenz FAW/n. Zahlensysteme
Dipl.-Ing. Halit Ünver 7.. Datenbanken/Künstliche Intelligenz FAW/n Zahlensysteme Seite Zahlensysteme Dipl.-Ing. Halit Ünver 7.. Inhalt I. Informatik und Zahlen für Wirtschaftswissenschaftler? II. III.
MehrSchriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Technische Grundlagen der Informatik Studiengang: Bachelor (CV / CSE / IF / WIF) am: 19. Juli 2008 Bearbeitungszeit:
MehrLösungsvorschlag 6. Übung Technische Grundlagen der Informatik II Sommersemester Aufgabe 6.1: Multiplikation von positiven Dualzahlen
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 6. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 6.1: Multiplikation von positiven Dualzahlen Berechnen
MehrInformationsverarbeitung auf Bitebene
Informationsverarbeitung auf Bitebene Dr. Christian Herta 5. November 2005 Einführung in die Informatik - Informationsverarbeitung auf Bitebene Dr. Christian Herta Grundlagen der Informationverarbeitung
MehrProgrammieren. Kapitel 3: Wie funktioniert ein moderner Computer? Wintersemester 2008/2009. Prof. Dr. Christian Werner
Institut für Telematik Universität zu Lübeck Programmieren Kapitel 3: Wie funktioniert ein moderner Computer? Wintersemester 8/9 Prof. Dr. Christian Werner 3- Überblick Typische Merkmale moderner Computer
Mehr