Gleitkommazahlen, heute mit »Gleitpunktzahlen«, »Float« oder »Real« bezeichnet, werden in der externen Schreibweise des Freiburger Codes mit Dezimalkomma und nicht, wie heute im technischen Bereich üblich, mit Dezimalpunkt geschrieben werden.
Gleitkommazahlen werden in der Z22, wie es auch heute noch üblich ist, durch 2 Teile dargestellt: einem Mantissenteil (hier M genannt) und einem Exponententeil (hier E genannt).
Rechnerisch ist M eine Zahl zwischen ½ (einschließlich) und 1 (ausschließlich) also
½ ≤ M < 1.
E ist eine ganze Zahl von 0 bis 127, also 0 ≤ E ≤ 127.
In einem Maschinenwort mit 38 Bits wird eine Gleitkommazahl mit diesen beiden Teilen abgelegt
entweder für positive Gleitkommazahlen:
Inhalt | 0 | 0 | 1... | Mantisse (M) | Exponent (E) |
Bit Nr. | 1 | 2 | 3–31 | 32–38 |
oder für negative Gleitkommazahlen:
Inhalt | 1 | 1 | 0... | Mantissenkomplement (1 - M) | Exponent (E) |
Bit Nr. | 1 | 2 | 3–31 | 32–38 |
Dabei hat von den Bits 3 bis 31 das n-te Bit den Stellenwert 2-n+2, also das 3. Bit den Stellenwert ½, das 4. den Stellenwert ¼, usw.
Der tatsächliche Wert der Zahl ist
bei positiven Gleitkommazahlen +M•2E-64
bei negativen Gleitkommazahlen −M•2E-64
Aus der Darstellung ergibt sich, dass der größtmögliche Betrag einer Gleitkommazahl (dezimal) 0,858993459•1019 sein kann. Größere Gleitkommazahlen führen zu einem Bereichsüberschreitungs-Fehler (»BUEB«).
Als betragsmäßig kleinste Gleitkommazahl ist (dezimal) 0,343597384•10-19 darstellbar. Betragsmäßig kleinere Zahlen werden als Null interpretiert und dargestellt.
Die Genauigkeit, 29 Dualstellen für die Mantisse, entspricht etwa 9 Dezimalstellen.
Es ist nahezu zwangsläufig, dass das 3. Bit immer das Gegenteil der Bits 1 und 2 ist. Lediglich die Zahlen - ½ • 2E-64 (für beliebige E) ergeben die Darstellung:
Inhalt | 1 | 1 | 1 | 0...0 | E |
Bit Nr. | 1 | 2 | 3 | 4–31 | 32–38 |
Deshalb ist diese Information trotz der 3 Eins-Bits am Anfang keine Strichzahl.