Zahlendarstellungen und Rechnerarithmetik

Größe: px
Ab Seite anzeigen:

Download "Zahlendarstellungen und Rechnerarithmetik"

Transkript

1

2 Kapitel 12 Zahlendarstellungen und Rechnerarithmetik 12.1 Zahlensysteme Die Darstellung von Zahlen (ganz allgemein von Daten) basieren auf sogenannten Zahlensystemen. Diese wiederum nutzen Zeichen eines sogenannten Alphabets zu ihrer Darstellung. Ist b > 1 eine beliebige natürliche Zahl, so heißt die Menge Σ b := {0,1,...,b 1} das Alphabet des b-adischen Zahlensystems. Beispiel Dem Dezimalsystem liegt das Alphabet Σ 10 = {0,1,2,...,9} zugrunde. Worte über diesem Alphabet sind etwa 123, 734, Feste Wortlänge, etwa n = 4, erreicht man durch führende Nullen : 0123, 0734, Σ 2 = {0,1}: Dual- oder Binäralphabet Σ 8 = {0,1,2,3,4,5,6,7}: Oktalalphabet Σ 16 = {0,...,9,A,...,F}: Hexadezimalalphabet Man beachte, dass Σ 16 streng genommen das Alphabet {0,...,15} bezeichnet; anstelle der Ziffern 10, 11 usw. werden jedoch generell, d. h. in allen Alphabeten Σ b mit b > 9, neue Symbole A,B usw. (hier also A,...,F) verwendet. Diese Basen b = 2,8 bzw. 16 spielen in der Informatik eine besondere Rolle. 3. Alte Basen sind b = 12 (Dutzend) und b = 60 (Zeitrechnung). Natürliche Zahlen können in jedem b-adischen Zahlensystem dargestellt werden: Version vom 30. Dezember

3 298 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Satz 12.1 (b-adische Darstellung natürlicher Zahlen) Sei b N mit b > 1. Dann ist jede natürliche Zahl z mit 0 z b n 1 (und n N) eindeutig als Wort der Länge n über Σ b darstellbar durch n 1 z = i=0 mit z i Σ b für i = 0,...,n 1. Als vereinfachende Schreibweise ist dabei auch folgendes üblich ( Ziffernschreibweise ) z = (z n 1 z n 2...z 1 z 0 ) b. z i b i Beweis: Der Beweis erfolgt durch Induktion nach z. Induktionsanfang: z < b hat eine eindeutige Darstellung mit z 0 = z und z i = 0 sonst. Induktionsvoraussetzung: Die Behauptung sei richtig für alle Zahlen 0,1,...,z 1. Schluss auf z b: Es ist z = (z div b) b + (z mod b). Da z := z div b < z ist, hat z nach Induktionsvoraussetzung die (eindeutige) Darstellung z = (z n 1z n 2...z 1z 0) mit z n 1 = 0, da z b z b n 1. Also ist (z n 1,...,z 0 ) mit z n 1 := z n 2, z n 2 := z n 3,...,z 1 := z 0 und z 0 := z mod b eine n-stellige Darstellung von z in Σ b. Angenommen, es gibt zwei verschiedene solche Darstellungen von z, etwa z = (z 1 n 1,...,z 1 0) b = (z 2 n 1,...,z 2 0) b. Sei dann l der größte Index mit z 1 l z2 l, o. B. d. A. z1 l > z2 l. Dann müssen die niedrigwertigen Stellen z 2 l 1,...,z2 0 eine Einheit der höherwertigen Stelle l wettmachen. Nun hat aber der größte durch niedrigwertige Stellen erreichbare Wert die Form (b 1)b 0 + (b 1)b (b 1)b l 1 = (b 1)(b 0 + b b l 1 ) = (b 1) bl 1 b 1 = bl 1 < b l. Da 1 b l gerade eine Einheit der höherwertigen Stelle l ist, kann diese Einheit nicht wettgemacht werden. Also ergibt sich ein Widerspruch, d. h. beide Darstellungen müssen gleich sein. Aus dem Beweis erhält man direkt einen Algorithmus zur Umwandlung in die b-adische Darstellung: Algorithmus 12.1 for i := 0 to n 1 do z i := 0; i := 0; while z > 0 do

4 12.1. ZAHLENSYSTEME 299 begin z i := z mod b; z := z div b; i := i + 1; end Als Beispiel betrachten wir die Umwandlung von z = (364) 10 in eine Oktalzahl: 364 = = = z = (554) 8 Voraussetzung dieser Umwandlung ist also, dass die mod und div Operation im Ausgangszahlensystem implementiert ist. Die Umkehrung b-adisch nach dezimal ist einfach und folgt dem Horner-Schema für die Multiplikation von Polynomen: Algorithmus 12.2 z := 0 for i := n 1 downto 0 do z := z b + z i So ergibt (0554) 8 den Dezimalwert (( ) 8 + 5) = 364. Korollar 12.1 (Dualdarstellung natürlicher Zahlen) Sei n N. Dann ist jede natürliche Zahl z mit 0 z 2 n 1 eindeutig darstellbar in der Form mit z i Σ 2 = {0,1} (i = 0,...,n 1). n 1 z = i=0 z i 2 i So ist zum Beispiel (364) 10 = ( ) 2. Zwischen Σ 2,Σ 8 und Σ 16 bestehen besonders einfache Umwandlungsalgorithmen. Dies liegt daran, dass eine Ziffer z i Σ 8 bzw. Σ 16 gerade in Σ 2 durch Wörter der Länge 3 bzw. 4 dargestellt werden kann. Man kann daher die Umwandlungen Σ 2 Σ 8 und Σ 2 Σ 16 ziffernweise vornehmen. Ein Beispiel ist: (364) 10 = ( ) 2 = ( }{{} 101 }{{} 101 }{{} 100 ) 2 = (554) 8 = (0001 }{{} 0110 }{{} 1100 }{{} ) 2 = (16C) 16 (5) 8 (5) 8 (4) 8 (1) 16 (6) 16 (12) 16 b-adische Zahlensysteme sind jedoch nicht die einzige Möglichkeit zur Zahlendarstellung, wie folgender Satz zeigt.

5 300 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Satz 12.2 (Polyadische Darstellung natürlicher Zahlen) Es sei (b n ) n N eine Folge natürlicher Zahlen mit b n > 1 für alle n N. Dann gibt es für jede natürliche Zahl z genau eine Darstellung der Form z = N i 1 z i i=0 j=0 mit 0 z i < b i für i = 0,...,N. b j = z 0 + z 1 b 0 + z 2 b 1 b z N b N 1... b 0 Beweis: Übung. Nimmt man als Folge der Zahlen (b n ) n N etwa die Primzahlen 2,3,5,..., so hat 364 die Darstellung (1,5,0,2,0), da 364 = 0 (1) + 2 (2) + 0 (2 3) + 5 (2 3 5) + 1 ( ) Darstellung ganzer Zahlen im Rechner Die Vorzeichen-Betrag Darstellung Dies ist die im Alltag verwendete Darstellung. Hat man Wörter der Länge n (n Bit) zur Darstellung zur Verfügung, wird das linkeste Bit für das Vorzeichen verwendet (0 = +, 1 = ), und die restlichen Bits für den Betrag der Zahl. Bei n = 3 lassen sich also die in Tabelle 12.1 angegebenen Zahlen darstellen. Da die 0 zwei Darstellungen hat, können so 2 n 1 Zahlen dargestellt werden. Tabelle 12.1: 3-stellige Dualzahlen in Vorzeichen-Betrag Darstellung. Bitmuster Dezimalwert Diese natürliche Darstellung ist auf Rechnern völlig unüblich. Der Grund liegt darin, dass hardwaremäßig nur Addierwerke (plus Zusatzlogik) verwendet werden. Daher verwendet man Darstellungen, in denen die Subtraktion sehr einfach auf die Addition zurückgeführt werden kann. Dies ist bei der Vorzeichen-Betrag Darstellung nicht der Fall. Wir haben daher in der Schule alle für die Addition und Subtraktion verschiedene Algorithmen gelernt.

6 12.2. DARSTELLUNG GANZER ZAHLEN IM RECHNER Komplement-Darstellungen Komplement-Darstellungen erlauben eine einfache Rückführung der Subtraktion auf die Addition. Sei x = (x n 1,...,x 0 ) b eine n-stellige b-adische Zahl. Das (b 1)-Komplement K b 1 (x) von x erhält man, indem man stellenweise das Komplement (b 1) x i zu x i bildet. Beispiel: K 9 ((325) 10 ) = (674) 10 K 1 ((10110) 2 ) = (01001) 2 Das b-komplement von x erhält man, indem man das K b 1 -Komplement bildet und 1 dazu addiert, d. h. K b (x) = K b 1 (x) + 1. Beispiel: K 10 ((325) 10 ) = (674) 10 + (1) 10 = (675) 10 K 2 ((10110) 2 ) = (01001) 2 + (1) 2 = (01010) 2 Speziell im Dualsystem nennt man K b 1 = K 1 das Einerkomplement und K b = K 2 das Zweierkomplement, im Dezimalsystem spricht man bei K b 1 = K 9 vom Neunerkomplement und bei K b = K 10 vom Zehnerkomplement. Offenbar gilt: Lemma 12.1 Für jede n-stellige b-adische Zahl x gilt: a) x + K b (x) = b n, b) x + K b 1 (x) = b n 1 = (b 1,b 1,...,b 1) b, c) K b 1 (K b 1 (x)) = x, K b (K b (x)) = x. Beweis: Nach Definition des (b 1)-Komplements ist x + K b 1 (x) = (b 1,b 1,...,b 1) b = n 1 i=0 (b 1)b i = (b 1) = (b 1) bn 1 b 1 = bn 1. Also gilt b). a) folgt aus K b (x) = K b 1 (x) + 1. c) folgt aus a) und b). n 1 i=0 b i Aussage a) bedeutet anschaulich, dass sich das b-komplement von x bei n Stellen stets als Differenz von x zu b n ergibt. Im Dezimalsystem mit n = 3 Stellen ergibt sich so für x = 374 K 10 (x) = = 626.

7 302 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Komplemente lassen sich nun wie folgt zur Darstellung ganzer Zahlen verwenden. Wir betrachten zunächst das meistens verwendete Zweierkomplement (bzw. allgemein das b-komplement). Sei n die zur Verfügung stehende Wortlänge. Im b-komplement werden die b n Zahlen x mit bn 2 x bn 2 1 dargestellt. Dieser Bereich heißt der darstellbare Bereich. Zahlen aus diesem Bereich werden wie folgt dargestellt: nicht-negative Zahlen durch ihre b-adische Darstellung, negative Zahlen x durch das b-komplement ihres Betrages x. Bezeichnen wir mit (x) Kb = (x n 1,...,x 0 ) Kb = die Ziffern von x in der b-komplement-darstellung, so gilt also: { (x)b falls x 0, (x) Kb = (12.1) (K b ( x )) b falls x < 0. Man beachte, dass man das Vorzeichen der in b-komplement-darstellung gegebenen Zahl x an der Ziffer x n 1 ablesen kann. Wir betrachten einige Beispiele: 1. Dezimalsystem, n = 2. Der darstellbare Bereich ist 50 x 49. Konkrete Darstellungen sind: Zahl Darstellung Dualsystem, n = 3. Der darstellbare Bereich ist in Tabelle 12.2 angegeben. Tabelle 12.2: 3-stellige Dualzahlen in Zweier-Komplement-Darstellung. Bitmuster Dezimalwert Man beachte die Darstellung von x = 4. x hat das Bitmuster (100) 2. Daraus ergibt sich K 2 ((100) 2 ) = K 1 ((100) 2 ) + (1) 2 = (011) 2 + (1) 2 = (100) 2.

8 12.2. DARSTELLUNG GANZER ZAHLEN IM RECHNER 303 Wir betrachten jetzt die Addition von Zahlen in dieser Darstellung. Dazu bezeichne (x) Kb (y) Kb die ziffernweise Addition der Darstellungen von x und y, wobei ein eventueller Übertrag auf die n + 1-Stelle zwar zur Interpretation des Ergebnisses genutzt werden kann, aber in der Darstellung des Ergebnisses verloren geht. Man rechnet also modulo b n. Satz 12.3 Seien x, y n-stellige Zahlen in b-komplement-darstellung, und sei x + y im darstellbaren Bereich. Dann gilt: x + y = (x) Kb (y) Kb. Beweis: Sind x,y 0, so ist (x) Kb (y) Kb = (x) b + (y) b mod b n = x + y mod b n. Ein Übertrag an der höchsten Stelle entspricht im Binärsystem einem Verlassen des darstellbaren Bereiches (Überlauf ). Sind x,y < 0 so ist nach Definition und Lemma 12.1 (x) Kb (y) Kb = (K b ( x )) b + (K b ( y )) b mod b n = K b ( x ) + K b ( y ) mod b n = b n x + b n y mod b n = ( x + y ) mod b n = x + y. Ist x 0 und y < 0, so ist entsprechend (x) Kb (y) Kb = (x) b + (K b ( y )) b mod b n = x + K b ( y ) mod b n = x + b n y mod b n = x y = x + y. Betrachten wir einige Beispiele im 2-stelligen Dezimalsystem. Dann ist n = 2 und 50 x 49 der Bereich der darstellbaren Zahlen. Es folgt: = (27) K10 (12) K10 = (39) K10 = ( 15) = (27) K10 (85) K10 = (12) K10 = ( 34) = (27) K10 (66) K10 = (93) K10 = 7 ( 27) + ( 21) = (73) K10 (79) K10 = (52) K10 = 48 Die Rückführung der Subtraktion auf die Addition beruht dann einfach auf der Gleichung x y = x + ( y): Satz 12.4 Seien x, y n-stellige Zahlen in b-komplement-darstellung, und sei x y im darstellbaren Bereich. Dann gilt: x y = (x) Kb (K b (y)) Kb.

9 304 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Beweis: Nach Lemma 12.1 ist y + K b (y) = b n. Also ist y = K b (y) b n. Daraus folgt wegen der modulo b n Rechnung: ( y) Kb = (K b (y)) Kb. Also ist x y = x + ( y) = (x) Kb ( y) Kb = (x) Kb (K b (y)) Kb. Betrachten wir wieder einige Beispiele im 2-stelligen Dezimalsystem = (37) K10 (K 10 (28)) K10 = (37) K10 (72) K10 = (9) K10 = = (37) K10 (K 10 (48)) K10 = (37) K10 (52) K10 = (89) K10 = = (88) K10 (K 10 (24)) K10 = (88) K10 (76) K10 = (64) K10 = 36 Dies beweist die Rückführung der Subtraktion auf die Addition. Natürlich muss dabei (wie bereits bei der Addition) ein eventueller Überlauf bzw. Unterlauf (Verlassen des dargestellten Bereiches) durch den Rechner oder durch den Programmierer abgefangen werden. Geschieht dies nicht, so werden die entstehenden Bitmuster als Zahlen aus dem dargestellten Bereich interpretiert, was zu völlig falschen Ergebnissen führt. So ist z. B. bei n-stelliger Dualzahlarithmetik die größte darstellbare Zahl x max = ( ) 2, und x max + 1 erzeugt das Bitmuster ( ), was als 2 n interpretiert wird. Die darstellbaren Zahlen kann man sich beim b-komplement ringförmig angeordnet vorstellen, wobei die größte positive und kleinste negative Zahl benachbart sind. Für b = 2 und n = 3 ergibt sich der in Abbildung 12.1 dargestellte Ring. 1 Durchläuft man den Ring im Uhrzeigersinn, so ergibt sich die jeweils nächste Zahl durch Addition von 1 (und Weglassen des Übertrags beim Übergang von 111 zu 000), umgekehrt entspricht die Subtraktion von jeweils 1 dem Durchlauf entgegen dem Uhrzeigersinn. In dieser Interpretation sind die Überlauffehler ganz natürlich erklärbar. Sie werden auch durch die gängigen Java Laufzeitumgebungen nicht abgefangen Darstellung reeller Zahlen Bei der Darstellung von reellen Zahlen unterscheidet man zwei Möglichkeiten, Festkommadarstellung (fixed point representation) und Gleitkommadarstellung (floating point representation). 1 Der genaue mathematische Hintergrund hierfür wird in der Algebra geliefert. Der Bereich 2 n 1 x 2 n 1 1 bildet einen sogenannten Restklassenring modulo 2 n 1.

10 12.3. DARSTELLUNG REELLER ZAHLEN DARSTELLUNG REELLER ZAHLEN Abbildung 12.1: Ringdarstellung der Binärzahlen im Zweierkomplement. Abbildung 12.1: Ringdarstellung der Binärzahlen im Zweierkomplement Darstellung reeller Zahlen Festkommazahlen Bei der Darstellung von reellen Zahlen unterscheidet man zwei Möglichkeiten, Festkommadarstellung der Festkommadarstellung (fixed point representation) wird bei vorgegebener und Gleitkommadarstellung Stellenzahl n eine (floating feste Stelle pointals represen- erste Nach- Bei kommastelle tation). vereinbart. Festkommazahlen im b-adischen System haben also die Darstellung x = (x k 1 x k 2 x 0.y 1 y 2 y n k ) b Festkommazahlen mit k Vorkomma- und n k Nachkommastellen. Der Zahlenwert von x ergibt sich zu Bei der Festkommadarstellung wird bei vorgegebener Stellenzahl n eine feste Stelle als erste k 1 Nachkommastelle vereinbart. Festkommazahlen x = im b-adischen System haben also die Darstellung x i b i n k + y j b j. i=0 j=1 x = (x k 1 x k 2 x 0.y 1 y 2 y n k ) b Beispiele sind: mit k Vorkomma- und n k Nachkommastellen. Der Zahlenwert von x ergibt sich zu Beispiele sind: ( ) 10 = 271,314 k 1 n k ( ) x = x i y j b j 2 = i=0 j=1 = = 5,375 Für manche Anwendungen ( ) 10 reicht = 271, es völlig 314 aus, mit Festkommazahlen zu rechnen, z. B. bei ökonomischen Anwendungen (EURO ( ) Beträge). 2 = In 1 diesen Bereichen eingesetzte Programmiersprachen wie COBOL stellen daher reelle Zahlen als Festkommazahlen = dar. = 5, Im Gegensatz zur Darstellung von ganzen Zahlen können bereits bei der Konvertierung von Dezimalzahlen Für manche in b-adische Anwendungen Zahlensysteme reichtmit es völlig b 10aus, Probleme mit Festkommazahlen auftreten. So istzu etwa rechnen, die Dezimalzahl z. B. bei 0,8 alsökonomischen binäre Festkommazahl Anwendungen nur unendlich-periodisch (DM Beträge). In diesen als Bereichen eingesetzte Programmiersprachen wie COBOL stellen daher reelle Zahlen als Festkommazahlen dar = darstellbar.

11 306 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Der große Nachteil der Festkommazahlen besteht jedoch darin, dass (wie auch bei ganzen Zahlen) der Bereich der darstellbaren Zahlen nach oben und unten stark beschränkt ist, und die Genauigkeit (der Abstand zwischen zwei benachbarten Zahlen) überall gleich ist. Dies führt zu großen Ungenauigkeiten bei wissenschaftlichen Rechnungen. Liegt etwa ein Rechenergebnis x zwischen der kleinsten (z 1 ) und der zweitkleinsten (z 2 ) positiven darstellbaren Zahl (etwa x = z 2 z 1 2 ), so muss x zur internen Darstellung auf eine der beiden Zahlen z 1,z 2 gerundet werden. Der dabei entstehende relative Fehler ist (bei Rundung auf z 1 ) x z 1 x = 1 2 z z = 1 1 3, also ungefähr 33%. Dies ist für wissenschaftlich-numerische Rechnungen völlig inakzeptabel. Aus diesem Grunde verwendet man für solche Rechnungen die Gleitkommadarstellung Gleitkommazahlen Gleitkommazahlen haben die Form z = ±m b ±e. Dabei heißt m Mantisse und e Exponent, b ist die Basis für den Exponenten. Die Basis der Mantisse kann dabei von der Basis b des Exponenten verschieden sein. 2 Wir werden hier jedoch die gleiche Basis b voraussetzen. Beispiele sind: 213,78 = , = = ( ) 2 = Die Beispiele zeigen, dass die Gleitkommadarstellung nicht eindeutig ist, da ein Austausch zwischen Vorkommastellen und Exponent möglich ist. Um Eindeutigkeit für die rechnerinterne Darstellung zu bekommen, verwendet man die normalisierte Gleitkommadarstellung. Diese verlangt eine Mantisse der Form m = 0.m 1 m 2 m t mit m 1 0, oder, äquivalent dazu 1 m 1 < b. Bei der rechnerinternen Darstellung muss festgelegt werden, wieviele Stellen für die Mantisse, und wieviele für den Exponenten zur Verfügung stehen. Dies resultiert in die Menge F der auf dem Rechner darstellbaren Maschinenzahlen. Wir kennzeichnen F durch F = F(b,t,e min,e max ), 2 Oft wird für die Mantisse die Basis 2 und für b eine Potenz von 2 gewählt, z. B. 2 6 = 64.

12 12.3. DARSTELLUNG REELLER ZAHLEN 307 wobei b die Basis (von Mantisse und Exponent), t die Anzahl der Stellen der Nachkommastellen der Mantisse und e min e e max der Bereich des Exponenten ist. Es sind dann alle Zahlen x der Form darstellbar. x = ±.m 1...m t b e mit e min e e max Beispiel 12.2 Für F = F(2, 3, 1, 1) ergeben sich folgende nichtnegative Zahlen, der Größe nach geordnet = 0 = = (1/2) 1/2 = 4/ = (1/2 + 1/8) 1/2 = 5/ = (1/2 + 1/4) 1/2 = 6/ = (1/2 + 1/4 + 1/8) 1/2 = 7/ = (1/2) 1 = 8/ = (1/2 + 1/8) 1 = 10/ = (1/2 + 1/4) 1 = 12/ = (1/2 + 1/4 + 1/8) 1 = 14/ = (1/2) 2 = 16/ = (1/2 + 1/8) 2 = 20/ = (1/2 + 1/4) 2 = 24/ = (1/2 + 1/4 + 1/8) 2 = 28/16 Auf der Zahlengeraden ergibt sich die in Abbildung 12.2 dargestellte Verteilung Abbildung 12.2: Nichtnegative Gleitkommazahlen aus F(2,3, 1,1). Man sieht, dass der Abstand zwischen benachbarten Zahlen mit der Größe der Zahlen wächst. Ferner erkennt man eine relativ große Lücke zwischen der 0 und der kleinsten positiven Zahl p min. Sie ergibt sich aus der Normalisierungsbedingung und ist deutlich größer als der Abstand zur zweitgrößten positiven Zahl. Der Grund dafür ist die erwünschte Kontrolle des Rundungsfehlers, der dadurch entsteht, dass Nicht- Maschinenzahlen durch Maschinenzahlen dargestellt werden müssen. Solche Fehler entstehen durch Konvertierung (Eingabe einer Nicht-Maschinenzahl, z. B. x = (1.2) = 5/4) oder durch Rundung von Zwischenergebnissen auf eine Maschinenzahl (z. B = 1+3/8 3/2 = ). Der dabei entstehende Fehler wird im nächsten Abschnitt analysiert. Da bei der Basis b = 2 das erste Bit der Mantisse wegen der Normalisierungsbedingung eindeutig festliegt (m 1 = 1), wird es oft nicht explizit dargestellt (hidden bit). In diesem Fall werden die t Mantissenbits zur Darstellung von m 2...m t+1 genutzt, d. h. man erreicht eine höhere Genauigkeit. Allerdings muss dann die Null besonders dargestellt werden, z. B. als Mantisse 0 mit Exponent e min 1.

13 308 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Zur Darstellung der Exponenten verwendet man oft die Exzess- oder Bias-Darstellung. Die Exponenten werden dabei durch Addition des Exzesses e min + 1 in den Bereich 1...e min + e max + 1 transformiert. Dies erleichtert den Vergleich von Exponenten. Als konkretes Beispiel betrachten wir die Darstellung von double Zahlen in Java. Sie folgt dem sogenannten IEEE 754 Standard 3, der sich als de facto Standard für numerische Rechnungen durchgesetzt hat. Für die gesamte Zahl stehen 64 Bit zur Verfügung, davon 52 für die Mantisse (in hidden bit Darstellung), 11 für den Exponenten und 1 für das Vorzeichen. Die Basis für Mantisse und Exponent ist 2. Mantissen werden in der Form m 1.m 2...m t+1 (dem sogenannten significand) dargestellt, wobei m 1 als hidden bit den Wert 1 hat. Der Bereich für die Exponenten ergibt sich durch e min = 1022 und e max = Auf den 11 Bit für den Exponenten e wird gemäß der Exzess-Darstellung der Wert e = e + e min + 1 dargestellt, so dass sich der wirkliche Exponent als e = e 1023 ergibt. Die Zahl 0 wird dann durch das Bitmuster repräsentiert, also durch die Zahl e min 1. Ein positiver Überlauf (POSITIVE INFINITY) erzeugt beim Exponenten das Bitmuster , entspricht also Entsprechend stellt das Bitmuster im Exponenten mit einem positiven Signifikanden einen Underflow dar (kleiner als die kleinste darstellbare normalisierte Zahl) 4. Als maximale darstellbare Zahl ergibt sich somit , und als kleinste (normalisierte) darstellbare positive Zahl Die Bitmuster von double Zahlen lassen sich mit der Methode public static native long doubletolongbits( double value ) der Klasse Double erzeugen und (bis auf führende Nullen) mit der Methode String tobinarystring( long y ) darstellen. Als konkretes Beispiel ergibt sich die genaue Belegung der Bits für die Zahl 10 zu Significand 1.25 {}}{ { }} { } {{ } Exponent 3= Vorzeichen + Entsprechend ergibt sich für die Zahl 0.8 das (gerundete) Bitmuster Significand {}}{ { }} { 1 } {{ } Exponent 1= Vorzeichen 3 IEEE (vgl. steht für The Institute of Electrical and Electronic Engineers, das als überkuppelndes Organ für viele Vereine für unterschiedliche Ingenieurwissenschaften fungiert. 4 Hier werden im IEEE Standard noch weitere Unterscheidungen getroffen (denormalized), die in Java jedoch alle zum Wert NaN (not a number) führen. Dadurch sind die Möglichkeiten für adäquate numerische Abhilfen in Java beschränkt, so dass bei hohen Anforderungen an die numerische Genauigkeit besser andere Programmiersprachen (C, C++, Fortran) verwendet werden sollten.

14 12.3. DARSTELLUNG REELLER ZAHLEN Genauigkeit von Gleitkommadarstellungen Wie bereits erläutert, erzwingt der begrenzte Vorrat von Maschinenzahlen bei der Konvertierung oder Darstellung von Zwischenergebnissen die Rundung auf Maschinenzahlen und dadurch Rundungsfehler. Den maximalen relativen Rundungsfehler nennt man die (relative) Rechnergenauigkeit. Die Stellen der Mantisse nennt man die signifikanten Stellen, eine t-stellige Mantisse bezeichnet man auch als t-stellige Arithmetik. Wir berechnen jetzt die Rechnergenauigkeit für F = F(b,t,e min,e max ). Dabei betrachten wir zunächst den relativen Rundungsfehler µ C, der durch Abschneiden (Chopping) nicht signifikanter Stellen entsteht. Dies entspricht dem Runden zur betragskleineren Maschinenzahl. Sei x > p min und x c M die durch Abschneiden entstehende Zahl. Dann ist µ C = x x c x = 0.x 1x 2...x t x t+1 x t+2... b e 0.x 1...x t b e x = x t+1x t+2... b e x < b t b e = 0.x t+1x t+2... b t b e x x da 0.x t+1 x t+2... < b 0 = 1 b t b e da x > 0.x 1 b e 1 b be wegen der Normalisierung 1 b be = b t b = 1 b t 1. Der relative Rundungsfehler µ R ist offenbar höchstens halb so groß wie der relative Abschneidefehler. Also ergibt sich die relative Rechnergenauigkeit µ R als µ R = 1 2 µ C = b t 1. Diese Zahl ist die wichtigste Größe bei Genauigkeitsbetrachtungen für ein Gleitkommasystem und Grundlage aller Fehlerabschätzungen in der Numerischen Mathematik. Die Genauigkeit bezieht sich auf die Zahl t von signifikanten Stellen zur Basis b. Die entsprechende Zahl s von signifikanten Stellen im Dezimalsystem erhält man durch Auflösung der Gleichung nach s. Dies ergibt µ R = b t 1 = s 1 s = 1 + (t 1)log 10 b. Umgekehrt berechnet man t aus einer gewünschten Anzahl s von dezimalen Stellen gemäß t = 1 + (s 1)log 10 b. Bzgl. des in Java verwendeten IEEE Standards mit b = 2 und t = 53 (hidden bit!) ergeben sich s = 16 signifikante Dezimalstellen.

15 310 KAPITEL 12. ZAHLENDARSTELLUNGEN UND RECHNERARITHMETIK Der Einfluss von Algorithmen auf die numerische Genauigkeit In Kapitel haben wir bereits ein Beispiel für die Auswirkung von Rundungsfehlern bei der Lösung linearer Gleichungssysteme mit dem Gauß-Algorithmus kennen gelernt. Hier folgt ein weiteres Beispiel für die Lösung quadratischer Gleichungen. Die quadratische Gleichung ax 2 + bx + c = 0 hat die Lösungen x 1,2 = b ± b 2 4ac. 2a Diese lassen sich nach dieser Formel berechnen durch d := sqrt(sqr(b) 4ac); x 1 := (d b)/(2a); x 2 := (b + d)/(2a); wobei sqrt(x) = x und sqr(b) = b 2 als verfügbare Funktionen vorausgesetzt werden. Ein numerisches Beispiel mit den Werten a = 1, b = 200 und c = 1, ausgeführt mit einer 4-stelligen dezimalen Arithmetik (d. h. 4 Stellen für die Mantisse) ergibt folgende Resultate. Hieraus folgt d = sqrt(sqr( ) 4) = sqrt( } 10 5 {{ } 1 ) in 4-stelliger Arithmetik = x 1 = ( ( ))/( ) = ( )/( ) = = 200, x 2 = ( ( ))/( ) = 0/( ) = 0. Die exakten Werte mit 4-stelliger Arithmetik lauten jedoch x 1 = 200 und x 2 = Die 4-stellige Rechnerarithmetik hat die relative Rechnergenauigkeit µ R = = 0,0005. Die Abweichung des errechneten Ergebnisses (0 anstelle des exakten Wertes 0,005) muss daher als völlig inakzeptabel betrachtet werden. Das Ergebnis x 2 = 0 ist schlicht falsch.

16 12.4. LITERATURHINWEISE 311 Eine Lösungsmethode, die die Gefahren der Gleitkomma-Arithmetik berücksichtigt, beruht auf der Beziehung x 1 x 2 = c (Vieta). a Es wird jetzt lediglich eine Lösung mit der üblichen Formel berechnet, und zwar die mit dem größten Absolutwert. Die zweite Lösung errechnet man dann aus der Formel von Vieta. Dies ergibt das Programmstück: d := sqrt(sqr(b) 4ac); if b 0 then x 1 := (b + d)/(2a) else x 1 := (d b)/(2a); x 2 := c/(x 1 a); Im Beispiel führt dies zu den Werten d = (wie oben), x 1 = (d b)/(2a) = 200 (wie oben), x 2 = 1/200 = Dies ist ein Beispiel für den häufigen Fall, dass die üblichen mathematischen Lösungsmethoden nicht unbesehen übernommen werden können, wenn mit wirklichen Rechnern gearbeitet werden soll. Die Numerik ist der Zweig der Mathematik, der sich mit der Entwicklung von Lösungsmethoden befasst, die die Tücken der Gleitkommaarithmetik berücksichtigen Literaturhinweise Kapitel 12.1 und 12.2 folgen [OV98]. Das Beispiel der Lösung quadratischer Gleichungen in Kapitel stammt aus [Wir78]. Als Einstieg in die Methoden der numerischen Mathematik sei auf [Ric93, Van85] verwiesen.

6.2 Kodierung von Zahlen

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

Mehr

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen

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

Mehr

Kapitel 5: Darstellung von Daten im Rechner

Kapitel 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

Mehr

Informationsmenge. Maßeinheit: 1 Bit. 1 Byte. Umrechnungen: Informationsmenge zur Beantwortung einer Binärfrage kleinstmögliche Informationseinheit

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

Mehr

Zahlendarstellungen und Rechnerarithmetik*

Zahlendarstellungen und Rechnerarithmetik* Zahlendarstellungen und Rechnerarithmetik* 1. Darstellung positiver ganzer Zahlen 2. Darstellung negativer ganzer Zahlen 3. Brüche und Festkommazahlen 4. binäre Addition 5. binäre Subtraktion *Die Folien

Mehr

Einführung in die Informatik I

Einfü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

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Klaus Knopper 26.10.2004 Repräsentation von Zahlen Zahlen können auf unterschiedliche Arten dargestellt werden Aufgabe: Zahlen aus der realen Welt müssen im Computer abgebildet

Mehr

, 2017S Übungstermin: Di.,

, 2017S Übungstermin: Di., VU Technische Grundlagen der Informatik Übung 1: Zahlendarstellungen, Numerik 183.579, 2017S Übungstermin: Di., 14.03.2017 Allgemeine Hinweise: Versuchen Sie beim Lösen der Beispiele keine elektronischen

Mehr

Vorlesung Programmieren

Vorlesung 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

Mehr

BB/CS- SS00 Rechner im Überblick 1/1. Ein Stellenwertsystem (Zahlensystem) ist ein Tripel S = (b, Z, δ) mit den folgenden Eigenschaften:

BB/CS- SS00 Rechner im Überblick 1/1. Ein Stellenwertsystem (Zahlensystem) ist ein Tripel S = (b, Z, δ) mit den folgenden Eigenschaften: Neue Begriffe Festkommadarstellungen Zahlendarstellung durch Betrag und Vorzeichen Einer-/Zweierkomplement-Darstellung Gleitkommadarstellung IEEE-754 Format BB/CS- SS00 Rechner im Überblick 1/1! Definition

Mehr

Computergrundlagen Zahlensysteme

Computergrundlagen Zahlensysteme Computergrundlagen Zahlensysteme Institut für Computerphysik Universität Stuttgart Wintersemester 2012/13 Wie rechnet ein Computer? Ein Mikroprozessor ist ein Netz von Transistoren, Widerständen und Kondensatoren

Mehr

Rechnerarithmetik Ganzzahlen und Gleitkommazahlen Ac 2013

Rechnerarithmetik Ganzzahlen und Gleitkommazahlen Ac 2013 Rechnerarithmetik Ganzzahlen und Gleitkommazahlen Ac 2013 Im folgenden soll ein Überblick über die in Computersystemen bzw. Programmiersprachen verwendeten Zahlen inklusive ausgewählter Algorithmen (in

Mehr

Einführung in die Computerorientierte Mathematik

Einführung in die Computerorientierte Mathematik Einführung in die Computerorientierte Mathematik Wintersemester 2014/15 Thomas Gerstner Institut für Mathematik Goethe-Universität Frankfurt 17. Oktober 2014 Inhaltsverzeichnis Inhaltsverzeichnis ii 1

Mehr

Motivation 31. Mai 2005

Motivation 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

Mehr

Computergestützte Mathematik zur Linearen Algebra

Computergestützte Mathematik zur Linearen Algebra Computergestützte Mathematik zur Linearen Algebra Pivotwahl und Gleitkommaarithmetik Achim Schädle 3. und 20. Dezember 208 Achim Schaedle (HHU) CompLinA 3. und 20. Dezember 208 Instabilitäten bei Gauß-Elimination

Mehr

2.1.2 Gleitkommazahlen

2.1.2 Gleitkommazahlen .1. Gleitkommazahlen Überblick: Gleitkommazahlen Gleitkommadarstellung Arithmetische Operationen auf Gleitkommazahlen mit fester Anzahl von Mantissen- und Exponentenbits Insbesondere Rundungsproblematik:

Mehr

II. Grundlagen der Programmierung

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

Mehr

Algorithmen & Programmierung. Reelle Zahlen in C (1) Darstellung reeller Zahlen

Algorithmen & Programmierung. Reelle Zahlen in C (1) Darstellung reeller Zahlen Algorithmen & Programmierung Reelle Zahlen in C (1) Darstellung reeller Zahlen Reelle Zahlen in C Datentyp für reelle Zahlen Eine Möglichkeit, Berechnungen mit reellen Zahlen in C durchzuführen, ist die

Mehr

mit 0 z 0 b 1 und 0 ẑ b n 1 1. Nach Induktionsannahme besitzt ẑ eine Darstellung der Länge n 1 zur Basis b. Damit ist

mit 0 z 0 b 1 und 0 ẑ b n 1 1. Nach Induktionsannahme besitzt ẑ eine Darstellung der Länge n 1 zur Basis b. Damit ist mit 0 z 0 b 1 und 0 ẑ b n 1 1. Nach Induktionsannahme besitzt ẑ eine Darstellung ẑ = ẑ n 2 b n 2 + + ẑ 1 b 1 + ẑ 0 b 0 der Länge n 1 zur Basis b. Damit ist z = (ẑ n 2 b n 2 + + ẑ 1 b 1 + ẑ 0 b 0 ) b +

Mehr

Numerische Lineare Algebra

Numerische Lineare Algebra Numerische Lineare Algebra Vorlesung 1 Prof. Dr. Klaus Höllig Institut für Mathematischen Methoden in den Ingenieurwissenschaften, Numerik und Geometrische Modellierung SS 2010 Prof. Dr. Klaus Höllig (IMNG)

Mehr

1 Zahlen im Dezimalsystem

1 Zahlen im Dezimalsystem 1 Zahlen im Dezimalsystem Es gibt verschiedene Arten Zahlen aufzuschreiben. Zunächst gibt es verschiedene Zahlzeichen wie chinesische, römische oder arabische. Im deutschsprachigen Raum ist die Verwendung

Mehr

Zahlensysteme und Kodes. Prof. Metzler

Zahlensysteme und Kodes. Prof. Metzler Zahlensysteme und Kodes 1 Zahlensysteme und Kodes Alle üblichen Zahlensysteme sind sogenannte Stellenwert-Systeme, bei denen jede Stelle innerhalb einer Zahl ein besonderer Vervielfachungsfaktor in Form

Mehr

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 3. Übung Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Aufgabe 6: Zahlendarstellungen

Mehr

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 3. Übung Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Zahlendarstellungen

Mehr

Zwischenklausur Informatik, WS 2016/17. Lösungen zu den Aufgaben

Zwischenklausur 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

Mehr

= 60 16 + B7 16 100 16 = B7 16 100 16 = 117 16 100 16 = 17 16 = 23 10

= 60 16 + B7 16 100 16 = B7 16 100 16 = 117 16 100 16 = 17 16 = 23 10 Hinweise zur Rückführung der Subtraktion auf eine Addition unter Verwendung des B-Komplements (Version vom 02.07.2010) siehe auch Vorlesungsskript Prof. H.-P. Bauer, Kapitel 6.3.2 bzw. Übersicht Digitaltechnik,

Mehr

, 2014W Übungstermin: Fr.,

, 2014W Übungstermin: Fr., VU Technische Grundlagen der Informatik Übung 1: Zahlendarstellungen, Numerik 183.579, 2014W Übungstermin: Fr., 17.10.2014 Allgemeine Hinweise: Versuchen Sie beim Lösen der Beispiele keine elektronischen

Mehr

, 2015S Übungstermin: Mi.,

, 2015S Übungstermin: Mi., VU Grundlagen digitaler Systeme Übung 1: Zahlendarstellungen, Numerik 183.580, 2015S Übungstermin: Mi., 18.03.2015 Allgemeine Hinweise: Versuchen Sie beim Lösen der Beispiele keine elektronischen Hilfsmittel

Mehr

Zum Nachdenken. Wenn die Zahl (123) hat, was könnte dann (123,45) 10

Zum 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

Mehr

B: Basis des Zahlensystems 0 a i < B a i є N 0 B є (N > 1) Z = a 0 B 0 + a 1 B 1 + a 2 B a n-1 B n-1

B: Basis des Zahlensystems 0 a i < B a i є N 0 B є (N > 1) Z = a 0 B 0 + a 1 B 1 + a 2 B a n-1 B n-1 Polyadisches Zahlensystem B: Basis des Zahlensystems 0 a i < B a i є N 0 B є (N > 1) Ganze Zahlen: n-1 Z= a i B i i=0 Z = a 0 B 0 + a 1 B 1 + a 2 B 2 +... + a n-1 B n-1 Rationale Zahlen: n-1 Z= a i B i

Mehr

Grundzüge der Informatik Tutorium Gruppe 6

Grundzüge der Informatik Tutorium Gruppe 6 Grundzüge der Informatik Tutorium Gruppe 6 Inhalt Einführung Numerik Fest- und Termin 5 07.2.2006 Apfelthaler Kathrin Test-Beispiel e0225369@student.tuwien.ac.at Numerik Festpunkt-Darstellung Berechnung

Mehr

2 Repräsentation von elementaren Daten

2 Repräsentation von elementaren Daten 2 Repräsentation von elementaren Daten Alle (elemtaren) Daten wie Zeichen und Zahlen werden im Dualsystem repräsentiert. Das Dualsystem ist ein spezielles B-adisches Zahlensystem, nämlich mit der Basis

Mehr

Einführung in die Computerorientierte Mathematik

Einführung in die Computerorientierte Mathematik Einführung in die Computerorientierte Mathematik Wintersemester 2014/15 Thomas Gerstner Institut für Mathematik Goethe-Universität Frankfurt 28. Oktober 2014 Inhaltsverzeichnis Inhaltsverzeichnis ii 1

Mehr

1.5.A Einführung und Zahlensysteme/Darstellung gebrochener Zahlen Arbeitsblatt

1.5.A Einführung und Zahlensysteme/Darstellung gebrochener Zahlen Arbeitsblatt 1.5.A Einführung und Zahlensysteme/Darstellung gebrochener Zahlen Arbeitsblatt Bearbeitungsdauer: 45 min Ergebnissicherung: Auf dem Blatt Hilfsmittel: Lerntext Aufgabe 1: Zerlegen von Kommazahlen im Dezimalsystem

Mehr

Vorzeichenbehaftete Festkommazahlen

Vorzeichenbehaftete Festkommazahlen 106 2 Darstellung von Zahlen und Zeichen Vorzeichenbehaftete Festkommazahlen Es gibt verschiedene Möglichkeiten, binäre vorzeichenbehaftete Festkommazahlen darzustellen: Vorzeichen und Betrag EinerKomplement

Mehr

5 Zahlenformate und deren Grenzen

5 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

Grundlagen der Technischen Informatik. 3. Übung

Grundlagen der Technischen Informatik. 3. Übung Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Aufgabe 6: Zahlendarstellungen

Mehr

3 Numerisches Rechnen

3 Numerisches Rechnen E Luik: Numerisches Rechnen 65 3 Numerisches Rechnen 31 Zahlen und ihre Darstellung Grundlage der Analysis bilden die reellen Zahlen Wir sind heute daran gewöhnt, eine reelle Zahl im Dezimalsystem als

Mehr

Zahlen in Binärdarstellung

Zahlen 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

Mehr

Die Zahl ist: (z 2, z 1, z 0 ) (z ) : 7 = 0 Rest z 2

Die 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

Mehr

2 Darstellung von Zahlen und Zeichen

2 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

Mehr

Informatik I Modul 2: Rechnerarithmetik (1)

Informatik I Modul 2: Rechnerarithmetik (1) Fall Term 2010, Department of Informatics, IFI, UZH, Switzerland Informatik I Modul 2: Rechnerarithmetik (1) 2010 Burkhard Stiller M2 1 Modul 2: Rechnerarithmetik (1) Zahlensysteme Zahlendarstellung 2010

Mehr

Modul 2: Rechnerarithmetik (1) Informatik I. Modul 2: Rechnerarithmetik (1) Rechnerarithmetik. Formale Grundlagen. Zahlensysteme (1) Zahlensysteme (2)

Modul 2: Rechnerarithmetik (1) Informatik I. Modul 2: Rechnerarithmetik (1) Rechnerarithmetik. Formale Grundlagen. Zahlensysteme (1) Zahlensysteme (2) Fall Term 1, Department of Informatics, IFI, UZH, Switzerland Modul : Rechnerarithmetik (1) Informatik I Modul : Rechnerarithmetik (1) Zahlensysteme Zahlendarstellung 1 Burkhard Stiller M 1 1 Burkhard

Mehr

1. Grundlegende Konzepte der Informatik

1. Grundlegende Konzepte der Informatik 1. Grundlegende Konzepte der Informatik Inhalt Algorithmen Darstellung von Algorithmen mit Programmablaufplänen Beispiele für Algorithmen Aussagenlogik Zahlensysteme Kodierung Peter Sobe 1 Zahlensysteme

Mehr

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14 Zahlensysteme Inhalt: 1 Dualsystem 1 1.1 Dualzahlen mit Vorzeichen 4 2 Hexadezimalsystem 8 2.1 Hexadezimalzahlen mit Vorzeichen 10 3 Oktalsystem 13 4 Zahlenring 14 Definition: Ein polyadisches Zahlensystem

Mehr

Digitaltechnik FHDW 1.Q 2007

Digitaltechnik FHDW 1.Q 2007 Digitaltechnik FHDW 1.Q 2007 1 Übersicht 1-3 1 Einführung 1.1 Begriffsdefinition: Analog / Digital 2 Zahlensysteme 2.1 Grundlagen 2.2 Darstellung und Umwandlung 3 Logische Verknüpfungen 3.1 Grundfunktionen

Mehr

Grundlagen der Technischen Informatik. 4. Übung

Grundlagen 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: +/-/*

Mehr

1.5 Einführung und Zahlensysteme/Darstellung gebrochener Zahlen

1.5 Einführung und Zahlensysteme/Darstellung gebrochener Zahlen 1.5 Einführung und Zahlensysteme/Darstellung gebrochener Zahlen 1.5.1 Situation Manchmal möchte man in Programmen mit Kommazahlen rechnen. In der Mathematik Im der Wirtschaft, im kaufmännischen Bereich

Mehr

Grundlagen der Technischen Informatik. 4. Übung

Grundlagen 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: +/-/*

Mehr

Computer-orientierte Mathematik

Computer-orientierte Mathematik Computer-orientierte Mathematik 3. Vorlesung - Christof Schuette 11.11.16 Memo: Rationale und reelle Zahlen Rationale Zahlen: Rationale Zahlen als Brüche ganzer Zahlen. q-adische Brüche, periodische q-adische

Mehr

Grundlagen der Technischen Informatik. 3. Übung. Christian Knell Keine Garantie für Korrekt-/Vollständigkeit

Grundlagen der Technischen Informatik. 3. Übung. Christian Knell Keine Garantie für Korrekt-/Vollständigkeit Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Zahlendarstellungen

Mehr

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8 Rückblick Zahlendarstellung zu einer beliebigen Basis b (214) 5 = Umwandlung zwischen Zahlendarstellung (278) 10 =(?) 8 25 Rückblick Schnellere Umwandlung zwischen Binärdarstellung und Hexadezimaldarstellung

Mehr

Numerik. Festpunkt-Darstellung

Numerik. Festpunkt-Darstellung Numerik Ablauf: Festpunkt-Darstellung Gleitpunkt-Darstellung Runden Addition/Subtraktion Multiplikation Ausblick und Zusammenfassung Wolfgang Kastner, Institut für Rechnergestützte Automation, TU Wien

Mehr

Einführung in die elektronische Datenverarbeitung. Zahlensysteme

Einführung in die elektronische Datenverarbeitung. Zahlensysteme Zahlensysteme Zahlensysteme Vereinbarung (Abbildungsfunktion) zur Interpretation einer Zeichenfolge. Ein Zeichen eines Zahlensystems wird als Ziffer bezeichnet. Darstellung von natürlichen Zahlen im Dezimal-,

Mehr

Datendarstellung Teil 2

Datendarstellung Teil 2 Informatik 1 für Nebenfachstudierende Grundmodul Datendarstellung Teil 2 Kai-Steffen Hielscher Folienversion: 24. Oktober 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht Kapitel

Mehr

Datendarstellung Teil 2

Datendarstellung Teil 2 Informatik 1 für Nebenfachstudierende Grundmodul Datendarstellung Teil 2 Kai-Steffen Hielscher Folienversion: 08. November 2016 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht Kapitel

Mehr

Skript Zahlensysteme

Skript Zahlensysteme Skript Zahlensysteme Dieses Skript enthält die Themen meiner Unterrichtseinheit Zahlensysteme. Hier sollen die Grundlagen für das Verständnis der darauf folgenden Inhalte zu den Abläufen innerhalb des

Mehr

TI II: Computer Architecture Data Representation and Computer Arithmetic

TI II: Computer Architecture Data Representation and Computer Arithmetic Prof. Dr.-Ing. Jochen Schiller Computer Systems & Telematics 31 30 23 22 0 Sg Characteristic Mantissa TI II: Computer Architecture Data Representation and Computer Arithmetic Systems Representations Basic

Mehr

Darstellung ganzer Zahlen als Bitvektoren

Darstellung ganzer Zahlen als Bitvektoren Darstellung ganzer Zahlen als Bitvektoren Jan Peleska Jan Bredereke Universität Bremen, Fachbereich Informatik Vers. 1.2 1 Darstellung natürlicher Zahlen z N 0 und Addition 1.1 Dualzahlen dargestellt durch

Mehr

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik)

Zahlen 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

Mehr

4. Zahlendarstellungen

4. 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;

Mehr

Grundstrukturen: Speicherorganisation und Zahlenmengen

Grundstrukturen: 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

Mehr

Übung Praktische Informatik II

Ü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

Mehr

Numerisches Programmieren, Übungen

Numerisches Programmieren, Übungen Technische Universität München SoSe 017 Institut für Informatik Prof Dr Thomas Huckle Michael Obersteiner, Michael Rippl Numerisches Programmieren, Übungen Musterlösung 1 Übungsblatt: Zahlendarstellung,

Mehr

1 Grundlagen der Numerik

1 Grundlagen der Numerik 1 Grundlagen der Numerik 1.1 Gleitpunkt-Arithmetik Es gibt nur endlich viele Zahlen auf dem Computer. Gleitpunktzahl: x = σmb E σ: Vorzeichen B: Basis (feste Zahl >1); M: Mantisse E: Exponent B = 2 : Dualzahl

Mehr

N Bit Darstellung von Gleitkommazahlen

N Bit Darstellung von Gleitkommazahlen 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 )

Mehr

3. Datentypen, Ausdrücke und Operatoren

3. Datentypen, Ausdrücke und Operatoren 3. Datentypen, Ausdrücke und Operatoren Programm muß i.a. Daten zwischenspeichern Speicherplatz muß bereitgestellt werden, der ansprechbar, reserviert ist Ablegen & Wiederfinden in höheren Programmiersprachen

Mehr

1. Rechnerarithmetik und. Rundungsfehler

1. Rechnerarithmetik und. Rundungsfehler 1. Rechnerarithmetik und Rundungsfehler 1 Rundung (1) Die natürlichen Zahlen hat der liebe Gott gemacht, alles andere ist Menschenwerk, L. Kronecker Ohne Zahlendarstellung auf einem Rechner wiederholen

Mehr

2 ARITHM. UND LOG. AUSDRÜCKE ZAHLEN

2 ARITHM. UND LOG. AUSDRÜCKE ZAHLEN 2 ARITHM. UND LOG. AUSDRÜCKE ZAHLEN Leitidee: Die Darstellung von Zahlen durch eine feste Zahl von Bits erfordert eine Reihe von Kompromissen Ganzzahl- oder Gleitpunktarithmetik? Dual- und Hexadezimalzahlsystem

Mehr

1. Tutorium Digitaltechnik und Entwurfsverfahren

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

Mehr

in vielen technischen und wissenschaftlichen Anwendungen erforderlich: hohe Präzision große Dynamik möglich durch Verwendung von Gleitkommazahlen

in 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

Mehr

Zwischenklausur Informatik, WS 2014/15

Zwischenklausur 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

Mehr

Rechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 15/16

Rechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 15/16 Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 15/16 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

Mehr

Mathematische Werkzeuge für Computergrafik 2016/17. Gleitkommzahlen

Mathematische 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

Mehr

Teil II. Schaltfunktionen

Teil 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)

Mehr

Wertebereiche, Overflow und Underflow

Wertebereiche, 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

Mehr

4. Zahlendarstellungen

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

Mehr

Einführung in die Programmiertechnik

Einfü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

Mehr

1. Vorzeichen und Betrag (engl. Sign-/Magnitude) 2. Stellenkomplement 3. Basiskomplement

1. Vorzeichen und Betrag (engl. Sign-/Magnitude) 2. Stellenkomplement 3. Basiskomplement 3 Darstellungsformen für Zahlen Informatik II SS 24 Dipl.-Inform. Michael Ebner. Vorzeichen und Betrag (engl. Sign-/Magnitude) 2. Stellenkomplement 3. Basiskomplement Warum 3 Darstellungsformen? Ziel:

Mehr

Übung Programmieren - Zahlendarstellung, SSH, SCP, Shellskripte -

Übung Programmieren - Zahlendarstellung, SSH, SCP, Shellskripte - Übung Programmieren - Zahlendarstellung, SSH, SCP, Shellskripte - Sebastian Ebers Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/users/ebers Zahlendarstellung 201010? 16 2010

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB

Mehr

2 Computerarithmetik 2.1 Gleitkommazahlen

2 Computerarithmetik 2.1 Gleitkommazahlen 2 Computerarithmetik 2.1 Gleitkommazahlen Mathematische Modelle beschreiben Phänomene quantitativ mittels unendlicher Systeme von Zahlen. Beispiele sind die rationalen Zahlen Q (abzählbar unendlich) sowie

Mehr

Lösung 1. Übungsblatt

Lösung 1. Übungsblatt Fakultät Informatik, Technische Informatik, Lehrstuhl für Eingebettete Systeme Lösung 1. Übungsblatt Konvertierung von Zahlendarstellungen verschiedener Alphabete und Darstellung negativer Zahlen Stoffverteilung

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB

Mehr

Kapitel 1. Zahlendarstellung. Prof. Dr. Dirk W. Hoffmann. Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik

Kapitel 1. Zahlendarstellung. Prof. Dr. Dirk W. Hoffmann. Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik Kapitel 1 Zahlendarstellung Prof. Dr. Dirk W. Hoffmann Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik Zahlensystemkonvertierung Motivation Jede nichtnegative Zahl z lässt

Mehr

Informationsdarstellung 2.2

Informationsdarstellung 2.2 Beispiele für die Gleitkommadarstellung (mit Basis b = 2): 0,5 = 0,5 2 0-17,0 = - 0,53125 2 5 1,024 = 0,512 2 1-0,001 = - 0,512 2-9 3,141592... = 0,785398... 2 2 n = +/- m 2 e Codierung in m Codierung

Mehr

DuE-Tutorien 17 und 18

DuE-Tutorien 17 und 18 DuE-Tutorien 17 und 18 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery TUTORIENWOCHE 1 AM 04.11.2011 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Binäre Darstellung ganzer Zahlen

Binä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

Mehr

Das Verfahren in Hardware

Das Verfahren in Hardware Das Verfahren in Hardware Links Shift 8 Bit Multiplikand Demonstration mit 1001 * 0110 = 110110 2.Links Shift 8 Bit ALU Rechts Shift 4 Bit Multiplikator 3.Rechts Shift 8 Bit Produkt 1. Produkt = Produkt

Mehr

DuE-Tutorien 16 und 17

DuE-Tutorien 16 und 17 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Tutorienwoche 1 am 05.11.2010 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der

Mehr

Kapitel 6 Darstellung von Daten im Rechner. Kapitel 6: Darstellung von Daten im Rechner Seite 1 / 63

Kapitel 6 Darstellung von Daten im Rechner. Kapitel 6: Darstellung von Daten im Rechner Seite 1 / 63 Kapitel 6 Darstellung von Daten im Rechner Kapitel 6: Darstellung von Daten im Rechner Seite / 63 Darstellung von Daten im Rechner Inhaltsverzeichnis 6. Darstellung ganzer Zahlen 6.2 Darstellung reeller

Mehr