• Keine Ergebnisse gefunden

Guard‐Bit, Round‐Bit und Sticky‐Bit

N/A
N/A
Protected

Academic year: 2022

Aktie "Guard‐Bit, Round‐Bit und Sticky‐Bit"

Copied!
14
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Gleitkommaarithmetik

E höh d G i k it Erhöhen der Genauigkeit

(2)

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:

geschobenen Bits einfach abgeschnitten. Zum Beispiel:

Mantissen‐Alignment um 5 Stellen

10111001000111011010110 Mantisse

In Wirklichkeit (z.B. IEEE 754 Spezifikation) wird zur Steigerung der  Genauigkeit etwas geschickter vorgegangen. Obiges Beispiel:

Mantisse Mantisse

Rechenoperationen finden auf dieser erweiterten Mantisse statt.

(3)

Quiz

Wir betrachten 8‐Bit Mantissen. Es seien die folgenden beiden  binären Zahlen zu addieren.

1 , 100 0110 · 2

6

+       1 , 011 1010 · 2

2

Wie sehen Mantisse, Guard‐Bit, Round‐Bit und Sticky‐Bit nach dem  Mantissen‐Alignment aus?

6 2

1 , 100 0110 · 2

6

1 , 011 1010 · 2

2

8‐Bit‐Mantisse 8‐Bit‐Mantisse

(4)

IEEE 754 Rounding‐Modes

+ / −

S E b i B i i l 21 7 B i i l 21 7

Mantisse M G R S

Synonym Ergebnis Beispiel 21,7 Beispiel ‐21,7 Round

toward

Ceil Kleinster  Wert nicht 

+∞ kleiner als M 

Round

t d

Floor Größter Wert  i ht öß toward

−∞

nicht größer  als M

Round Truncate Genau M toward

0

R d W t d

Round to

nearest

Wert, der am  nächsten zu  M liegt

(5)

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|100 ...0|100 Down M = Mantisse Mantisse|100

(Tie)

...0|100 Down M   Mantisse

...1|100 Up M = Mantisse + 1

Mantisse|101 Up M = Mantisse + 1

Mantisse|101 Up M = Mantisse + 1

Mantisse|110 Up M = Mantisse + 1

M ti |111 U M M ti 1

Mantisse|111 Up M = Mantisse + 1

(6)

Quiz

Was ist das Rundungsergebnis bei Round‐to‐Nearest für folgende  Instanzen von „8‐Bit‐Mantisse | Guard‐Round‐Sticky“?

A.) 0000 1101 | 110

GRS Mantisse Richtung

001 Down

B.) 0011 0011 | 100 010 Down

011 Down

0 Down

C.) 0101 0101 | 010

100 ...0 Down

...1 Up

101 Up

C.) 0101 0101 | 010 p

110 Up

111 Up

Übersicht zu Round‐to‐Nearest

(7)

Beispiel für die Genauigkeitssteigerung

Wir betrachten 8‐Bit Mantissen. Zu addieren sei:

1,100 0110 · 26 (dezimal = 99,0000) + 1,011 1010 ·, 22 (dezimal = 5,8125)( , ) (Summe dezimal = 104,8125) Das Mantissen‐Alignment und GRS‐Bits kennen wir schon, also:

Rechnung: Mantisse|GRS Mantisse 11000110|000 11000110 + 00001011|101 + 00001011 + 00001011|101 + 00001011 --- --- 11010001|101 11010001 Rundung: 11010010 ohne 11010001

Ergebnis: 1,1010010 · 26 1,1010001 · 26

Dezimal : 105,0 104,5

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,8125 g , – 104,5 = 0,3125.

(8)

Denormalized‐Numbers

Kleinste mit IEEE754 Single‐Precision darstellbare normalized Zahl > 0:

1,000 0000 0000 0000 0000 0000 · 2−126

Der Exponent −127 ist für die 0 reserviert; die Fraction ist dabei 0:

.,000 0000 0000 0000 0000 0000 ·, 2−127

Warum die Fraction für Exponent −127 nicht sinnvoll nutzen?

Eine Denormalized‐Number der Form

000 1010 1110 1000 1111 0011 · 2−127 .,000 1010 1110 1000 1111 0011 · 2

bedeutet:

0,000 1010 1110 1000 1111 0011 · 2−126

Somit, kleinste mit IEEE754 Single‐Precision darstellbare Zahl > 0:

0 000 0000 0000 0000 0000 0001 2 126 1 0 2 149 0,000 0000 0000 0000 0000 0001 · 2−1261,0 · 2−149

(9)

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

(10)

Webseiten‐Tipp zum Üben

users tima imag fr/cis/guyot/Cours/Oparithm/english/Flottan htm users‐tima.imag.fr/cis/guyot/Cours/Oparithm/english/Flottan.htm

Floating point numbers format Rounding to the nearest

Additi d bt ti Addition and subtraction

(11)

Zusammenfassung und Literatur

(12)

Zusammenfassung

• Rechnerarithmetik endlich und stimmt damit  nicht exakt mit Arithmetik über reellen Zahlen  überein

– Häufig Approximation realer Zahlen g pp – Assoziativgesetzt gilt z.B. nicht

– Hat Konsequenz auf paralleles rechnen Hat Konsequenz auf paralleles rechnen

• Beschränkter Zahlenbereich

O fl U d fl

– Overflow, Underflow

• Wichtigste Entwicklung über die Jahre

– Zweierkomplement und IEEE 754

– In jedem modernen Computer so j p

(13)

Quiz

Annahme es gäbe ein 16 Bit IEEE 754 Annahme es gäbe ein 16‐Bit IEEE 754  Floating‐Point‐Format mit 5 Bits für den 

Exponenten. Welcher Zahlenbereich p wird durch dieses Format abgedeckt?

A: 1.0000 0000 00 · 20 B: +/‐ 1.0000 0000 0 · 2‐14 bis 1.1111 1111 11 · 231, 0 bis +/‐ 1.1111 1111 1 · 215

+/‐ 0, +/‐ ∞, NaN

C: +/‐ 1.0000 0000 00 · 2‐14 bis +/‐ 1.1111 1111 11 · 215, +/ 0 +/ N N

D: +/‐ 1.0000 0000 0 · 2‐15 bis +/‐ 1.1111 1111 1 · 214, +/ 0 +/ NaN

+/‐ 0, +/‐ ∞, NaN +/‐ 0, +/‐ ∞, NaN

(14)

Literatur

[PattersonHennessy2012] David A. Patterson und  John L. Hennessy, „Computer Organization and y, „ p g Design“, Fourth Edition, 2012

2 4 Signed and Unsigned Numbers 2.4 Signed and Unsigned Numbers 2.6 Logical Operations

3.1 Introduction

3.2 Addition and Subtraction 3.3 Multiplication

3 4 Division 3.4 Division

3.5 Floating Point

3.6 Parallelism and Computer Arithmetic: Associativity

Referenzen

ÄHNLICHE DOKUMENTE

a) Die Register: Sie dienen als Zwischenspeicher für Daten und Befehle. b) Das Steuerwerk: Jeder einlangende Befehl wird hier decodiert und aktiviert ein entsprechen-

1) Reset. This has highest priority. This has second highest priority. This has third highest priority. This has lowest priority. you execute XOP instructions to

Intuitively: The predicting algorithm produces an l-tuple according to q i−1 , given that z i−1 is generated by the PRBG. If dst answers 0, then it thinks that the l-tuple was

Ein Betriebssystem verwendet Paging, um für die vershiedenen Prozesse jeweils einen vir-.. tuellen Hauptspeiher

für das Stak-Segment oder kann der Stak über die vorhandenen Seitentabellen zweiter.. Stufe adressiert

Ein Betriebssystem verwendet Paging, um für die vershiedenen Prozesse jeweils einen vir-.. tuellen Hauptspeiher

mentiert werden, dass es niht in einen Deadlok geraten kann; wenn ja, wie; wenn nein,.

mentiert werden, dass es niht in einen Deadlok geraten kann; wenn ja, wie; wenn nein,.. Aufgabe