Wirtschaftsinformatik (Bachelor-Studiengang): Rechnerarchitketur & Betriebssysteme (1. Semester)

Sie sind hier: StartseiteWirtschaftsinformatikRechnerarchitektur/Betriebssysteme: Allgemeine Einführung, Repräsentation von Daten

BM / CM, Kurs vom 01.04.2002 - 30.09.2002

Rechnerarchitektur/Betriebssysteme: Allgemeine Einführung, Repräsentation von Daten: Einführung (Ziele der Veranstaltung, Begriffe - Die Basis des Wissens, Geschichte), Aussagenlogik (Einführung und Kombinationstabelle, Umformen in logische Ausdrücke, Bedeutung der logischen Operatoren, Sätze der Aussagenlogik), Schaltnetze und Schaltwerke (Schaltnetze (Moore-Automat), Vorgehensweise, Denken in Schichten, Schaltwerk (Mealy-Automat)), Variablen können viele Zustände haben, Rechnen mit Natürlichen Zahlen (Darstellung von Natürlichen Zahlen, Umrechnung nach Binär, Umrechnung von Binär, Negative Zahlen (Komplement), 1-Bit-Addierer, Zahlenbereiche, Byte-Reihenfolge (byte sex)), Rechnen mit Rationalen Zahlen (Festpunktzahlen, Gleitpunktzahlen).

  1. Einführung
  2. Aussagenlogik
  3. Schaltnetze und Schaltwerke
  4. Variablen können viele Zustände haben
  5. Rechnen mit Natürlichen Zahlen
  6. Rechnen mit Rationalen Zahlen

Einführung

Folgendes soll gelernt sein:

Ziele der Veranstaltung

Was soll von dem Stoff gelernt werden?

Warum die Orientierung an Konzepten?

Wissen in Form von Modellen:

Globale Vorgehensweise:

  1. Darstellung des (technischen) Problems
  2. Darstellung einer (speziellen) Lösung
  3. Abstraktion von der Lösung zum (allgemeinen) Konzept
  4. Konzept anhand der Beispiellösung wieder erkennen
  5. Konzept auf andere Probleme anwenden und damit verstehen

Das Konzept wird in Form eines Modells beschrieben, so dass dieses Modell das Konzept ausdrückt.

Hinweis: Das Modell ist damit die sprachliche Form für das Konzept.

Begriffe - Die Basis des Wissens

Wichtig zum Verstehen sind Begriffe, die daher möglichst genau festgelegt (definiert) und damit übereinstimmend benutzt werden (sollten).

Aber: Begriffe können nicht immer präzise definiert werden, und: manchmal ist dies auch nicht sinnvoll.
z.B. Schmerz, "zu teuer", schicker Rechner

Begriffe werden festgelegt (Definition) oder erläutert (Explikation), der Aufbau ist derselbe:

Hinweis: Auf der rechten Seite darf nichts von der linken stehen, falsch ist: "System = Menge von Subsystemen".

Begriffe und eine Erklärung:

Rechnerarchitektur:

Rechnerarchitektur = Baukunst, Rechner (Computer) als physikalische Geräte so zu entwerfen und zu realisieren, dass sie den gewollten Zweck zu den gewollten Kosten erfüllen.

Rechnerarchitektur befasst sich also mit

Rechnerarchitektur = Struktur bestehend aus vernetzten physikalischen Komponenten eines Rechners. Hierbei wird der Aufbau eines bestimmten Rechners betrachtet, während bei der vorherigen Definition die Ingenieurskunst zum Konstruieren von Computern thematisiert wird.

Geschichte

Ältere Geschichte:

ältere Geschichte

Bildbeschreibung "ältere Geschichte": Im Bereich der mechanischen Rechner: 1623 - Schickard (Addition / Subtraktion), 1645 - Pascal (Addition / Subtraktion), 1674 - Leibniz (Grundrechenarten). Im Bereich Programmierung: 1805 - Jaquard (Webstuhlprogrammierung; Lochkarten). Dann Zusammenführung: 1822 - Babbage (mit Lochkarten programmgesteuerte Rechenmaschine; Konzept), 1937 - Zuse (mechanisch programmierbare Maschine; Z1), 1941 - Zuse (mechanisch programmierbare Maschine; Z2), 1945 - von Neumann (programmgesteuerte Maschine, deren Vehalten vom internen Zustand abhängt; Konzept), 1946 - von Eckert, Mauchly und Goldstine (ENIAC vollelektronischer Rechner; Röhren).

Neuere Geschichte:

Zitate:

Thomas Watson (IBM), 1943:
I think there is a world market for maybe five computers.

Popular Mechanics (Zeitschrift, 40er Jahre):
Computers in the future may weigh no more than 1.5 tons.

Bill Gates, 1981:
640 Kbytes ought to be enough for anybody.

Ken Ohlson (Gründer von DEC):
There is no reason anyone would want a computer in their home.

Zum Menü Wirtschaftsinformatik | Zum Seitenanfang

Aussagenlogik

Einführung und Kombinationstabelle

Einführung / Erklärung:

Was darf der Butler dem Grafen auftischen?

Lösung:

  1. Elemente der Aussagen identifizieren
    Hühnchen (H), Fisch (F), Soße (S), Pudding (P)
  2. Zustände der Elemente bestimmen
    Gereicht (J) oder nicht-gereicht (N)
  3. Tabelle mit allen Kombinationen aufstellen
  4. Aussagen A1 bis A6 in die Tabelle einarbeiten
Kombinationstabelle
Hühnchen Fisch Soße Pudding Okay? Aussagen
N N N N N A2, A3, A4, A5
N N N J N A2, A3, A4, A6
N N J N N A2, A3, A4, A6
N N J J N A3, A4, A5, A6
N J N N N A2, A3, A4, A6
N J N J N A2, A3, A5, A6
N J J N J A2, A3, A4, A5, A6
N J J J N A3, A5, A6
J N N N N A2, A3, A4, A6
J N N J J A2, A3, A4, A5, A6
J N J N J A1, A2, A3, A4, A5, A6
J N J J N A1, A3, A4, A5, A6
J J N N N A2, A4, A5, A6
J J N J N A2, A5, A6
J J J N N A1, A2, A4, A5, A6
J J J J N A1, A5, A6

Umformen in logische Ausdrücke

Bedeutung der logischen Operatoren

F steht für Falsch, W steht für Wahr.

Bedeutung der logischen Operatoren in einer Kreuztabelle
A B ¬A A ⊥ B A ⊦ B A | B A ∇ B
F F W F F W W
F W W F W W F
W F F F W W F
W W F W W F F

Sätze der Aussagenlogik

⇔ bedeutet Äquivalenz, » bedeutet Implikation.

Zum Menü Wirtschaftsinformatik | Zum Seitenanfang

Schaltnetze und Schaltwerke

Schaltnetze (Moore-Automat)

Beispiel (Spezialfall):

Schaltnetz 1

Bildbeschreibung "Schaltnetz 1": Vier Schalter [Hühnchen (H), Fisch (F), Soße (S), Pudding (P)] stellen die Eingangsvariablen dar. Abgefragt wird, ob das Essen in Ordnung ist. Ausgangsvariablen werden über eine Lampe dargestellt.

Interpretation der Variablen (Prädikate)
Variablen, die gesetzt werden müssen:
Eingangsvariablen
Nein = Falsch = Schalter auf,
Ja = Wahr = Schalter zu

Variablen, die "berechnet" werden:
Ausgangsvariablen
Nein = Falsch = Lampe aus,
Ja = Wahr = Lampe brennt

Allgemeines Modell:

Schaltnetz 2

Bildbeschreibung "Schaltnetz 2": Links: Eingänge x1 bis xn; Mitte: Schaltnetz; Rechts: Ausgänge y1 bis yn.

Funktion:

Zuordnung von Werten von Variablen zu einem Wert.
Für bestimmte Werte der Variablen liefert die Funktion einen Wert.
Statt Zuordnung kann auch Abbildung gesagt werden.

Schaltnetz:

Komponente, die Werte entsprechend den Funktionen aus einer oder mehreren Variablen bestimmt, ohne dabei vorherigen Werte zu benutzen.
Jeder Funktionswert wird sofort, ohne die Vorgeschichte zu beachten - also ohne einen "Speicher" -, aus den Variablen nach einem unveränderbaren Schema bestimmt.

Vorgehensweise

Vorgehensweise

Bildbeschreibung "Vorgehensweise": Unterteilung in Phasen, Tätigkeiten und Ergebnisse. Phase 1 = Analyse des Problems. Phase 2 = Konstruieren/Aussuchen einer Sprache/Theorie. Tätigkeit = Analysieren, verstehen, interpretieren. Ergebnis = Aussagenlogik, Bildung von Prädikaten, Sätze/Regeln. Phase 3 = Formulieren des Problems samt Lösung in Sprache. Tätigkeiten = Interpretieren. Ergebnis = Wertetabelle, Boole'sche Ausdrücke. Phase 4 = Realisierung des Modells auf Computer-Ebene. Tätigkeiten = Umformen, abbilden. Ergebnis = Schaltnetz. Phase 5 = Realisierung des Computers. Tätigkeiten = Löten. Ergebnis = And/Or/Not-Gatter, nand-Gatter.

Denken in Schichten

Jede Ebene (Schicht) hat eine eigene "Denkwelt".

In dieser Welt kann eigenständig unabhängig von der Umwelt gedacht werden,
nur die Schnittstelle nach "oben" und "unten" muss beachtet werden.

Nach "oben" werden Leistungen erbracht,
von "unten" werden Leistungen benutzt.

Jede Ebene hat eine eigene "Sprache",
in der die Modelle dieser Ebene formuliert werden.

Schichten

Bildbeschreibung "Schichten": Fünf Ebenen (Schichten): Arbeitssituation (oberste Ebene), Lösungsbeschreibung, Gatter, Bauelemente, Physik (unterste Ebene).

Schicht (Ebene, Layer):

Eigenständige Denkwelt mit spezieller Sprache.
Schichten werden mit der gerichteten benutzt-Beziehung (Relation) mit anderen Schichten verbunden.
In strengen Schichtensystemen ("Torten") benutzt eine Schicht max. eine andere und wird von max. einer anderen selbst benutzt.
Sprache wird hier als allgemeines Ausdrucksmittel zur Formulierung von Sachverhalten verstanden.

Benutzt-Beziehung:

"A benutzt B" bedeutet, dass die von B erbrachte Leistung bei der Leistungserbringung von A erforderlich ist.
Die Korrektheit von A hängt damit von der Korrektheit von B ab.

Zu Ehren von George Boole werden Daten mit zwei Zuständen als von der Art "Boolean" oder "Bool" bezeichnet.
Ausdrücke damit sind daher "Boole'sche Ausdrücke" - sie kennen nur zwei Werte: Wahr (true) und Falsch (false).
Bool'sche Algebra = Aussagenlogik (Teilmenge der Prädikatenlogik, 1. Stufe).

Typ = Art von Ausdrücken oder Daten. Im zweiten Fall wird auch von Datentyp gesprochen.

Schaltwerk (Mealy-Automat)

Darstellung von Information:

Flip Flop:

Flip Flop

Bildbeschreibung "Flip Flop": Diese Grafik enthält die technische Zeichnung von verschiedenen Schaltvorgängen in einem Flip Flop.

Ein Flip Flop mit einem Takteingang erhält den Zustand unabhängig von den Zuständen an dem Data-Eingang bei.

Nur wenn der Takt auf 1 ist, wird der Wert am Data-Eingang übernommen.

Hinweis: Ein rückgekoppeltes Schaltnetz mit einem inneren Zustand wird Mealy-Automat genannt.

Schaltwerk:

Rückgekoppeltes Schaltnetz mit Speicher, dessen Zustände in die Funktion eingehen; d.h. der Funktionswert hängt von den Eingangsvariablen und vom inneren Zustand ab.

Zustand:

Wert einer Funktion, der länger als ein (technisch bedingter) festgelegter Zeitraum anhält.

Speicher:

Schaltwerk, dessen Zustände nur unter festgelegten Bedingungen sich ändern, ansonsten erhalten bleiben.

Alle Speicher des "Rechnerkerns" arbeiten nach dem vorgestellten Prinzip, auch wenn vollkommen andere Technologien als DTL benutzt werden. Außerhalb des Rechnerkerns - an der Peripherie - werden zum Speichern andere Techniken verwendet.

Maschine für unseren vergesslichen Butler:

Für unseren Butler werden 4 Flip Flops benötigt, die jeweils den letzten servierten Zustand der Variablen H, F, S und P speichern und deren Zustände (Werte) in das Schaltnetz zur Bestimmung, ob das Servierte in Ordnung ist, eingehen.

Dies wird in einer viel größeren - hier nicht abgebildeten - Zustandstabelle berücksichtigt, in der als Spalten auch die Speicher-Flip Flops mit ihren alten und neuen Werten eingehen.

Zum Menü Wirtschaftsinformatik | Zum Seitenanfang

Variablen können viele Zustände haben

  1. Jede Variable hatte bisher nur 2 Zustände/Werte;
    deshalb reichte pro Variable ein Flip Flop.
  2. Was ist, wenn eine Variable mehr als 2 Werte annehmen kann?
  3. Verfahren zur Bestimmung der Flip Flop-Anzahl:
    • Feststellen der Anzahl der Zustände
    • Ld(Anzahl) (Logarithmus Dualis = Log zur Basis 2)
    • Zur nächsten ganzen Zahl aufrunden
    • Dies ist die Anzahl der Flip Flops
  4. Eine bestimmte Kombination von Flip Flop-Werten entspricht einem bestimmten Zustand der Variablen.
    Die Zuordnung der Flip Flop-Wertkombination zu den Werten der Variablen wird Codierung oder Code genannt.

Codierung

Repräsentation:

Rechnerinterne Darstellung eines Werts bzw. Zustands eines Symbols.

Symbole werden durch ihren augenblicklichen Wert/Zustand im Computer repräsentiert.

Code:

Zuordnung zwischen Repräsentationen (Bitkombinationen) und Werten eines Symbols.

Zeichencodes:

Zeichencodes

Bildbeschreibung "Zeichencodes": Das schriftliche Alphabet in den USA besteht aus 26 Kleinbuchstaben, 26 Großbuchstaben, 10 Ziffern, 33 Sonderzeichen und 33 Steuerzeichen. Somit sind für die Darstellung 7 Bits erforderlich, 8 bit (1 Byte) stehen zur Verfügung. Nach dem ASCII-Code (American Standard Code for Information Exchange) wird der Buchstabe "a" beispielsweise dargestellt durch 0110.1000, der Buchstabe "b" durch 0110.0100, der Buchstabe "c" durch 0110.1100. Neben dem ASCII-Code gibt es noch EBCDI (Extended Binary Coded Decimal Interchange Code), Unicode (16 bit) und UCS (Universal Multiple Octett Coded Character, 32 bit)

Zeichenbearbeitung

Bildbeschreibung "Zeichenbearbeitung": Eine Zeichenvariable kann bei 8 Flip Flops 256 Zustände annehmen. Die Grafik zeigt 8 Flip Flops, die zur Darstellung eines Zeichens benötigt weden. Diese werden an ein Schaltnetz zum Decodieren weitergegeben. Zur Darstellung einer "8" werden somit 16 Eingänge (2 pro Flip Flop) und 7 Ausgänge benötigt.

Das Bit:

Ein Symbol mit den zwei Boole'schen Zuständen benötigt ein Flip Flop, das abstrakt Bit genannt wird.

Umgekehrt formuliert: Ein Bit kann durch ein Flip Flop realisiert werden, ist jedoch keines.

Bit = Abstrakte Begriff von einen Speicher, der nur zwei Zustände bzw. Werte annehmen kann.

Bit = Binary digit.

Für Variablen mit beliebig vielen Zuständen ist dementsprechend eine bestimmte Anzahl von Bits erforderlich.

Informationsmenge:

Das bit in diesem Sinne wurde von Claude Shannon definiert.

Hinweis: Beachte: 3 Bits aber 3 bit, "das Bit 4" und nicht "das bit 4".

Organisation von Speichern:

Speicher wird organisiert in Einheiten von

Dass ein Byte 8 Bits hat, hat rein praktische Gründe: Es lassen sich leichter Schaltungen damit aufbauen. Die CDC 6000er Serie (CDC = Control Data Corporation, Großrechner aus den 60er Jahren) hatte 12 bit-Bytes und 60 bit-Worte.

Aufbau von Speichern:

Speicher werden als

RAM = Speicher zur Ablage von Daten, die mit einer Adresse angesprochen werden.
RAM = Random Access Memory = Speicher mit wahlfreiem Zugriff.

Zwischenspeicher werden immer benutzt, um für eine gewisse Zeit Daten zu vermerken oder um einen komplexen Zustand zu realisieren.

Realisierung von RAM:

Da sehr viele Bits in möglichst kleinen Ausmaßen benötigt werden, werden keine Flip Flops, sondern spezielle Transistor-Schaltungen benutzt.

Realisierung von RAM

Bildbeschreibung "Realisierung von RAM": 8-mal-8-Matrix zur Darstellung einer 6 bit Adresse. 3 bit-Teil-Adresse wird senkrecht abgebildet, 3 bit-Teil-Adresse waagerecht. Derartige Matrizen werden mehrfach parallel verwendet.

Statische RAM behalten nach dem Auslesen ihren Zustand, während dynamische dadurch ihren verlieren und daher neu aufgefrischt werden müssen.

Es gibt viele Arten von RAM, die aber vom Prinzip her gleich sind:

Hinweis: Alle RAM gehören zu den flüchtigen Speichern, die ihren Inhalt bei Verlust der Spannungsversorgung verlieren.

Nicht-flüchtige Speicher

Nicht-flüchtige Speicher behalten ihren Inhalt auch nach Spannungsverlust.

Für die Verwendung im Inneren gibt es u.a. folgende Arten:

Zum Menü Wirtschaftsinformatik | Zum Seitenanfang

Rechnen mit Natürlichen Zahlen

Darstellung von Natürlichen Zahlen

Eine Kette von Bits wird zur Darstellung der natürlichen Zahlen verwendet analog zur Codierung von Zeichen.

Die Bits werden als Koeffizienten eines Polynoms zur Berechnung des Zahlenwert interpretiert. Das Polynom entspricht einer Codierungsvorschrift.

Zahl= an × Bn + an-1 × Bn-1 + ... + a1 × B1+a0 × B0

Beispiel mit B=10:

1984 = 1 × 103 + 9 × 102 + 8 × 101 + 4 × 100

Beispiel mit B=2:

13 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 = 1101

Hinweis: Zusammenfassung von 4 Bits zu einer Zahl.

Umrechnung nach Binär

Umrechnung nach Binär

Bildbeschreibung "Umrechnung nach Binär": Schritt 1 = Initialisierung (Zahl 13). Schritt 2 = 1. Durchlauf (13 ÷ 2 = 6 Rest 1; also: Zahl 6, Ziffer 1, gemerkt 1). Schritt 3 = 2. Durchlauf (6 ÷ 2 = 3 Rest 0; also: Zahl 3, Ziffer 0, gemerkt 10). Schritt 4 = 3. Durchlauf (3 ÷ 2 = 1 Rest 1; also: Zahl 1, Ziffer 1, gemerkt 101). Schritt 5 = 4. Durchlauf (Zahl 0, Ziffer 1, gemerkt 1011). Schritt 6 = Umdrehen (1011 wird zu 1101). Die Dezimalzahl "13" wird somit binär dargestellt durch die "1101".

Ziffernvorrat, Basis und Ziffern:

  1. Binärsystem
    Basis: 2, Ziffern: 0, 1
  2. Oktalsystem
    Basis: 8, Ziffern: 0, 1, 2, 3, 4, 5, 6, 7
  3. Dezimalsystem
    Basis: 10, Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
  4. Hexadezimalsystem
    Basis: 16, Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Aus dem Binärsystem lassen sich sehr leicht die Ziffern des Oktalen (jeweils 3 Bits) und des Hexadezimalen (jeweils 4 Bits) System herleiten.

Umrechnung von Binär

Umrechnung von Binär

Bildbeschreibung "Umrechnung von Binär": Die Binärzahl 1101 wird wieder zurückgrechnet in die Dezimalzahl 13. Berechnung: 1.Schritt = Initialisierung der Binärzahl 1101; 2.Schritt = Umdrehen (aus 1101 wird 1011); 3.Schritt = 1.Durchlauf (1 × 20 = 1); 4.Schritt = 2.Durchlauf (0 × 21 = 0); 5.Schritt = 3.Durchlauf (1 × 22 = 4); 6.Schritt = 4.Durchlauf (1 × 23 = 8). Die Addition der in Schritt 3 bis Schritt 6 errechneten Ergebnisse ergibt die gesuchte Dezimalzahl 13 (1 + 0 + 4 + 8).

Negative Zahlen (Komplement)

Die Subtraktion wird auf die Addition des negativen Werts zurückgeführt: a − b ⇔ a+(−b).
Das Komplement einer Zahl ist dessen negativer Wert.

1er- und 2er-Komplement:

Komplement

Bildbeschreibung "Komplement": Die größte positive Zahl wird dargestellt durch 0111111. Die 0 ist dabei zuständig für das Vorzeichen. Die größte negative Zahl ist somit die 10000000.

In der Praxis kommen nur Maschinen mit 2er-Komplement vor.

Addition/Subtraktion mit 2er-Komplement:

Addition/Subtraktion mit 2er-Komplement

Bildbeschreibung "Addition/Subtraktion mit 2er-Komplement": In dem Beispiel werden die Dezimalzahlen 7 und 8 binär addiert (0111 + 0110). Durch bitweise Addition ist das Ergebnis 1101, was der Dezimalzahl 13 entspricht.

Bilden des 2er-Komplements:
(1) 1er-Komplement durch Negation
(2) Addition von 1

1-Bit-Addierer

1-Bit-Addierer: Input / Output
Input Output
A B Überlauf Summe Überlauf
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

N bit Addierer

Bildbeschreibung "N bit Addierer": Das Bild zeigt den Schaltplan eines N bit Addierers.

Zahlenbereiche

Die Bezeichnungen der Typen (byte, short, int) entstammen Java.

Byte-Reihenfolge (byte sex)

Big endian computer:

(von links nach rechts)

Big endian

Bildbeschreibung "Big endian": Von links nach rechts: 0 = E, 1 = B, 2 = E, 3 = R.

Little endian computer:

(von rechts nach links)

Little endian

Bildbeschreibung "Little endian": von rechts nach links: 0 = E, 1 = B, 2 = E, 3 = R.

Nachtrag:

Zusammenfassen von 2 × 8 bit => ein 18 bit
Kann in zwei Bereiche geteilt werden
215 - 20
höstwertig / niedrigster oder höchster / niedrigster mit:
ADR+1 / ADR oder ADR / ADT+1
bzw. Little Endian (Intel x86) oder Big Endian (Motorola, IBM)

Dieses Problem betrifft nur Daten, die über mehrere hintereinander liegende Bytes gehen.

Zum Menü Wirtschaftsinformatik | Zum Seitenanfang

Rechnen mit Rationalen Zahlen

Festpunktzahlen

Es wird eine bestimmte Bitanzahl für den Wert vor und dem nach dem Komma festgelegt.

Festpunktzahlen

Bildbeschreibung "Festpunktzahlen": Von links nach rechts: Erstes Bit = Vorzeichenbit; zweites bis neuntes Bit = Binärzahl vor dem Komma; zehntes bis vierzehntes Bit = Binärzahl nach dem Komma.

Zahl = an × Bn + an−1 × Bn−1 + ... + a1 × B1 + a0 × B0 + a−1 × B−1 + a−2 × B−2 + ... + a-m × B−m

Gleitpunktzahlen

Neben einem Vorzeichenbit und der Mantisse wird ein Exponent samt eigenem Vorzeichen benutzt.

Gleitpunktzahlen

Bildbeschreibung "Gleitpunktzahlen": Von links nach rechts: Erstes Bit = Vorzeichenbit; zweites bis neuntes Bit = Binärzahl der Mantiesse; zehntes bis vierzehntes Bit = Binärzahl des Exponenten, wobei das zehnte Bit für das Vorzeichen reserviert ist.

Zahl = Mantisse × BExponent
Mantisse = 0,xxxxxxx...
Wobei 1/B ⇐ Mantisse < 1 gelten sollte (normalisiert)

Hinweis: Normalisieren = Umformen durch Umrechnung des Exponenten, so dass Mantisse zwischen 1/B und 1 liegt.
» Der Exponent kann als Zahlenwert noch eine Basis (Offset) haben, zu der er relativ gemeint ist.

Heutige Prozessoren realisieren Gleitpunktarithmetik (Gleitkommaarithmetik, Floating Point) nach der Norm IEEE 754.

Addition von Gleitkommazahlen:

  1. Angleichung des kleineren an den größeren Exponenten
  2. Addition der Mantissen
  3. Normalisierung (falls erforderlich)

Beispiel:

1.000 × 2−1 − 1.110 × 2−2 [Mantisse in Binär]

  1. 1.000 × 2−1 − 0.111 × 2−1
  2. 0.001 × 2−1
  3. 1.000 × 2−4 [Normalisieren]

Multiplikation von Gleitkommazahlen:

  1. Multipliziere die Vorzeichen
  2. Multipliziere die beiden Mantissen
  3. Addiere die beiden Exponenten und subtrahiere den Offset-Wert
  4. Normalisierung (falls erforderlich)

Beispiel:

+ 1.000 × 2−1 X − 1.110 × 2−2 [Mantisse in Binär]

  1. Multiplikation der Vorzeichen: 0 × 1 = 1
  2. Multiplikation der Mantissen: 1.000 × 1.110 = 1.110
  3. Addition der Exponenten und Subtraktion des Offset:
    (−1+offset)+(−2+offset)−offset = (−3+offset)
    [Offset ist hier 0]
  4. Ergebnis: −1.110 × 2−3