• Keine Ergebnisse gefunden

IEEE 754 Encoding

N/A
N/A
Protected

Academic year: 2022

Aktie "IEEE 754 Encoding"

Copied!
25
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

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

0 0 0 0 0

0 Nicht‐Null 0 Nicht‐Null (+/‐ Denormalised Number) 1 bis 254 Beliebig 1 bis 2046 Beliebig +/‐ Gleitkommazahl

255 0 2047 0 +/‐ Unendlich

(2)

Quiz

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 107

Betrachte IEEE 754 Single‐Precision, also Bias = 127. Was ist der  Dezimalwert der folgenden Binärzahl?

010000000110000000000000000000000

(‐1)

S

* (1 + Fraction)  * 2

(Exponent—Bias)

(3)

Quiiiiz

Bestimme S, Fraction und Exponent der IEEE 754 Single‐Precision  Repräsentation (also Bias = 127) der Dezimalzahl ‐0.75.

(4)

Gleitkommaarithmetik

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 109

(5)

Gleitkommaarithmetik

Addition von binären n‐Bit Gleitkommazahlen

(6)

Vorüberlegung

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 111

Addition mit gleichem Exponent (Nachkomma mit 4 Bits kodiert):

Addition mit unterschiedlichen Exponenten (Nachkomma 4 Bits):

(7)

Vorüberlegung

Ergebnis muss unter Umständen wieder normalisiert werden:

Bei Einschränkung auf n Bit (z.B. Nachkomma auf 4 Bit einge‐

schränkt) kann dies anschließendes Auf‐ bzw. Abrunden erfordern.

Beispiel: Runden nach der „Schulmethode“

(8)

Vorüberlegung

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 113

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:

(9)

Additionsalgorithmus

2 Beispiele: 4 Bit für die Mantisse 

und 8 Bit für den Exponenten. Start

(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.

Beispiel 1 Beispiel 2 1,000 * 2‐1

1,110 * 2‐2

1,001 * 210 + 1,101 * 211 (1)

(2)

(10)

Additionsalgorithmus

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 115

2 Beispiele: 4 Bit für die Mantisse 

und 8 Bit für den Exponenten. (3) Normalisiere die Summe,  entweder durch Rechts‐Shift

und hoch setzen oder durch  Links‐Shift und runter setzen 

des Exponenten.

„Exception“

Overflow oder 

Underflow? ja nein

Im Beispiel 8‐Bit für den Exponenten.

Beispiel 1 Beispiel 2

(2) 0,001 * 2‐1 10,001 * 211 (3)

(11)

Additionsalgorithmus

2 Beispiele: 4 Bit für die Mantisse  und 8 Bit für den Exponenten.

Immer noch  normalisiert?

(4) Runde die Mantisse auf  die verfügbare Anzahl Bits.

ja

nein zurück nach (3)

Beispiel 1 Beispiel 2

(3) 1,000 * 2‐4 1,0001 * 212 (4)

(12)

Noch eine Bemerkung

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 117

Betrachte die folgenden binären Floats mit 8‐Bit Mantisse: 

x = −1,100 000 * 2100,     y = 1,100 000 * 2100 , z = 1,000 0000 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 x1 + x2 + ... + xn parallel  berechnen möchte?

(13)

Gleitkommaarithmetik

Multiplikation von binären n‐Bit Gleitkommazahlen

(14)

Vorüberlegung

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 119

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?

(15)

Algorithmus

Beispiel: 4 Bit für die Mantisse und  8 Bit für den Exponenten.

Start

(1) Addiere die Exponenten. 

(Subtrahiere Bias im Falle  von Biased‐Notation ) 1,101 * 2‐1 * ‐1,100 * 2‐2

(1)

(16)

Algorithmus

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 121

Beispiel: 4 Bit für die Mantisse und  8 Bit für den Exponenten.

(2) Multipliziere die  Mantissen.

(1) Der Exponent ist ‐3 Die Mantissen sind:

1,101 und 1,100 (2)

(17)

Algorithmus

Beispiel: 4 Bit für die Mantisse 

und 8 Bit für den Exponenten. (3) Normalisiere das Produkt  Falls notwendig. 

Normalisierung erfolgt durch  Rechts‐Shift und erhöhen 

des Exponenten.

Overflow oder 

Underflow? ja nein

Im Beispiel 8‐Bit für den Exponenten.

(2) 10,011100 * 2‐3 (3)

(18)

Algorithmus

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 123

Beispiel: 4 Bit für die Mantisse  und 8 Bit für den Exponenten.

(Eingabe: 1,101 * 2‐1 * ‐1,100 * 2‐2)

Fertig

Immer noch  normalisiert?

(4) Runde die Mantisse auf  die verfügbare Anzahl Bits.

ja

nein zurück nach (3)

(3) 1,0011100 * 2‐2 (4)

(5)

(5) Setze Vorzeichen auf „+“ 

wenn die Vorzeichen der  Eingaben gleich waren. Sonst 

setze Vorzeichen auf „‐“.

(19)

Gleitkommaarithmetik

Erhöhen der Genauigkeit

(20)

Guard‐Bit, Round‐Bit und Sticky‐Bit

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 125

Bei der Darstellung der Addition und Multiplikation haben wir  vereinfacht die beim Mantissen‐Alignment rechst heraus 

geschobenen Bits einfach abgeschnitten. Zum Beispiel:

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

Rechenoperationen finden auf dieser erweiterten Mantisse statt.

Mantisse

10111001000111011010110 Mantisse

Mantissen‐Alignment um 5 Stellen

(21)

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?

Quiz

8‐Bit‐Mantisse 8‐Bit‐Mantisse

1 , 100 0110  * 2

6

1 , 011 1010  * 2

2

(22)

+ / −

IEEE 754 Rounding‐Modes

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 127

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

toward +∞

Ceil Kleinster  Wert nicht  kleiner als M  Round

toward

−∞

Floor Größter Wert  nicht größer  als M

Round toward 0

Truncate Genau M

Round to

nearest

Wert, der am  nächsten zu  M liegt

Mantisse M G R S

(23)

IEEE Rounding‐Modes: Round to Nearest

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 (Tie)

...0|100 Down M = Mantisse

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

Mantisse|101 Up M = Mantisse + 1

Mantisse|110 Up M = Mantisse + 1

Mantisse G R S

(24)

Quiz

Grundlagen der Rechnerarchitektur ‐Logik und Arithmetik 129

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

A.) 0000 1101 | 110

B.) 0011 0011 | 100

C.) 0101 0101 | 010

GRS Mantisse Richtung

001 Down

010 Down

011 Down

100 ...0 Down

...1 Up

101 Up

110 Up

111 Up

Übersicht zu Round‐to‐Nearest

(25)

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 --- --- 11010001|101 11010001 Rundung: 11010010 ohne 11010001

Ergebnis: 1,1010010 * 26 1,1010001 * 26 Dezimal : 105,0 104,5

Also hat man mit GRS‐Bits und Rundung einen Abstand von 105,0 –

Referenzen

ÄHNLICHE DOKUMENTE

Schwingungsrichtung der Lichtbewegung kleinster Geschwindigkeit ist; ( : /c : «{; optis ch negativ, wenn die Richtung der Achse C Schwingungsrichtung der Lichtbewegung

Sind in meiner Police als niedergelassener Arzt die Angestellten mitversichert.. Um im Schadensfall kein „böses Erwachen“ zu erleben, sollten Sie Ihren Versicherungsschutz

Furthermore, we measured the salinity of TSG samples from earlier cruises, starting with samples from 16 th September 2014. Those samples were taken with helpful support of the

Furthermore, we measured the salinity of TSG samples from earlier cruises, starting with samples from the previous cruise M134. Those samples were taken with

In wenigen Tagen wird sich dieser Gleiter mit einem französischen Gleiter treffen, der von Dakar gestartet wurde.. Am Sonnabend begann das Tracer-Vermessungsprogramm mit einem

[r]

[r]

STA = Station BSS = Basic Service Set DS = Distribution System  AP = Access Point IBSS = Independent BSS  ESS = Extended Service Set..