Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1 Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 1

www2.fh.rosenheim.de
von www2.fh.rosenheim.de Mehr von diesem Publisher
30.11.2012 Aufrufe

1-16 Aufgaben und Lösungen d = 0dez Dezimalzahl b = 00000000 00000000 00000000 00000000 Binärzahl e = -127, c = e+127 = 0 Exponent g = 00000000 00000000 00000000 00000000 = 0000hex kurze Gleitpunktzahl d = 64.625dez b = 1000000.101 = 1.000000101 * 2 6 e = 6dez, c=6 dez +127 dez = 133 dez = 10000101 g = 01000010 10000001 01000000 00000000 = 42 81 40 00hex d = -3258dez b = 110010111010 = 1.10010111010 * 2 11 e = 11dez, c=11dez +127dez = 138dez = 10001010 g = 11000101 01001011 10100000 00000000 = C3 4B A0 00hex d = 0.0006912dez b = 0.002D4C696… hex = 0.0000 0000 0010 1101 0100 1100 0110 1001 0110 = = 1.0110101001100011010010110* 2 -11 e = -11dez, c=-11dez +127dez = 116dez = 01110100 g = 00111010 00110101 00110001 10100101 = 3A 35 31 A5hex d = -21.40625*10 4 dez = -214062.5dez b = 3442Ehex = 0011 0100 0100 0010 1110 = 1.1010001000010111* 2 3 e = 3dez, c=3 dez +127 dez = 130 dez = 10000010 g = 11000001 01010001 00010111 00000000 = C1 51 17 00hex d = -2dez b = 10.0 = 1.0 * 2 1 e = 1dez, c=1 dez +127 dez = 128 dez = 10000000 g = 01000000 00000000 00000000 00000000 = 40 00 00 00hex d = 75.4dez b = e = g = d = -4.532*10 3 dez b = e = g = d = 71.46875dez b = e = g = d = -439.1248dez b = e = g = ###

Aufgaben und Lösungen 1-17 Aufgabe 1.4.8 (M2) Geben Sie folgenden 32-Bit Gleitpunktzahlen an: die größte, die kleinste, die kleinste größer Null, die größte negative. Lösung Die größte kurze Gleitpunktzahl Der größte Exponent e ist e=128dez, dann ist c=128dez +127dez = 255dez = 11111111. Die größte Mantisse hat dreiundzwanzig 1en. Damit gilt: gmax = 01111111 11111111 11111111 11111111 = 7F FF FF FFhex = 1.11111111111111111111111*2 128 = 0.111111111111111111111111*2 129 = (1-2 -24 ) 2 129 dez = 2 129 -2 105 dez ≈ 6.48056469327706 10 38 Die kleinste kurze Gleitpunktzahl gmin = -gmax = 11111111 11111111 11111111 11111111 = FF FF FF FFhex = -(1-2 -24 ) 2 129 dez ≈ -6.48056469327706 10 38 Die kleinste kurze Gleitpunktzahl größer Null Hier ist zu berücksichtigen, dass von den normalisierten Gleitpunktzahlen mit der Mantisse 1.f zu den denormalisierten Gleitpunktzahlen mit der Mantisse 0.f und dem festen Exponenten 2 -126 übergegangen werden muss. Dies ist durch den Eintrag 0 für den Exponenten kenntlich gemacht. Die kleinste kurze positive Gleitpunktzahl hat also eine 1 in der letzten Stelle der Mantisse. gmin+ = 00000000 00000000 00000000 00000001 = 00 00 00 01hex = 2 -23 2 -126 = 2 -49 ≈ 1.4012984 10 -45 Die größte negative kurze Gleitpunktzahl gmin- = - gmin+ = 10000000 00000000 00000000 00000001 = 80 00 00 01hex = -2 -23 2 -126 = -2 -49 ≈ -1.4012984 10 -45 Aufgabe 1.4.9 (M2) Berechnen Sie näherungsweise unter Verwendung der ersten 11 Glieder der Leibnitz- Formel: 4 k 1 ( 1) k 1 1 2k 1 1 1 3 1 5 1 7 1 9 Rechnen Sie stellenrichtig im Zehnersystem mit Gleitpunktzahlen in Normalform und Mantissen mit drei Nachkommastellen, also 0.d1d2d3∙10 e mit d1>0. Ermitteln Sie die günstigste Strategie hinsichtlich der Minimierung der Abbrechfehler: (1) Abarbeitung der Terme von links nach rechts, (2) Abarbeitung der Terme von rechts nach links, (3) getrennte Addition aller positiven und negativen Terme von links nach rechts bzw. (4) von rechts nach links und anschließende Subtraktion der Zwischenergebnisse. Lösung Problematisch ist hier die begrenzte Stellenzahl der Mantisse bei der Gleitpunktdarstellung. Rechnet man mit Gleitpunktzahlen mit 3 Nachkommastellen im Zehnersystem so folgt für die einzelnen Terme: 1 -1/3 1/5 -1/7 1/9 -1/11 1/13 -1/15 1/17 -1/19 1/21 1 -.333 .2 -.142 .111 -.909/10 .769/10 -.666/10 .588/10 -.526/10 .476/10 Die folgenden Rechnungen erfolgen mit Gleitpunktzahlen, die auf drei Nachkommastellen begrenzt sind. Bei der Ausführung der Addition entstehen daher Abbrechfehler.

Aufgaben und <strong>Lösungen</strong> 1-17<br />

Aufgabe 1.4.8 (M2)<br />

Geben Sie folgenden 32-Bit Gleitpunktzahlen an:<br />

die größte, die kleinste, die kleinste größer Null, die größte negative.<br />

Lösung<br />

Die größte kurze Gleitpunktzahl<br />

Der größte Exponent e ist e=128dez, dann ist c=128dez +127dez = 255dez = 11111111.<br />

Die größte Mantisse hat dreiundzwanzig 1en. Da<strong>mit</strong> gilt:<br />

gmax = 01111111 11111111 11111111 11111111 = 7F FF FF FFhex<br />

= 1.11111111111111111111111*2 128 = 0.111111111111111111111111*2 129<br />

= (1-2 -24 ) 2 129 dez = 2 129 -2 105 dez ≈ 6.48056469327706 10 38<br />

Die kleinste kurze Gleitpunktzahl<br />

gmin = -gmax = 11111111 11111111 11111111 11111111 = FF FF FF FFhex<br />

= -(1-2 -24 ) 2 129 dez ≈ -6.48056469327706 10 38<br />

Die kleinste kurze Gleitpunktzahl größer Null<br />

Hier ist zu berücksichtigen, dass von den normalisierten Gleitpunktzahlen <strong>mit</strong> der Mantisse<br />

1.f zu den denormalisierten Gleitpunktzahlen <strong>mit</strong> der Mantisse 0.f und dem festen Exponenten<br />

2 -126 übergegangen werden muss. Dies ist durch den Eintrag 0 für den Exponenten kenntlich<br />

gemacht. Die kleinste kurze positive Gleitpunktzahl hat also eine 1 in der letzten Stelle<br />

der Mantisse.<br />

gmin+ = 00000000 00000000 00000000 00000001 = 00 00 00 01hex<br />

= 2 -23 2 -126 = 2 -49 ≈ 1.4012984 10 -45<br />

Die größte negative kurze Gleitpunktzahl<br />

gmin- = - gmin+ = 10000000 00000000 00000000 00000001 = 80 00 00 01hex<br />

= -2 -23 2 -126 = -2 -49 ≈ -1.4012984 10 -45<br />

Aufgabe 1.4.9 (M2)<br />

Berechnen Sie näherungsweise unter Verwendung der ersten 11 Glieder der Leibnitz-<br />

Formel:<br />

4<br />

k 1<br />

( 1)<br />

k<br />

1<br />

1<br />

2k 1<br />

1 1<br />

3<br />

1<br />

5<br />

1<br />

7<br />

1<br />

9<br />

Rechnen Sie stellenrichtig im Zehnersystem <strong>mit</strong> Gleitpunktzahlen in Normalform und Mantissen<br />

<strong>mit</strong> drei Nachkommastellen, also 0.d1d2d3∙10 e <strong>mit</strong> d1>0. Er<strong>mit</strong>teln Sie die günstigste Strategie<br />

hinsichtlich der Minimierung der Abbrechfehler: (1) Abarbeitung der Terme von links<br />

nach rechts, (2) Abarbeitung der Terme von rechts nach links, (3) getrennte Addition aller<br />

positiven und negativen Terme von links nach rechts bzw. (4) von rechts nach links und anschließende<br />

Subtraktion der Zwischenergebnisse.<br />

Lösung<br />

Problematisch ist hier die begrenzte Stellenzahl der Mantisse bei der Gleitpunktdarstellung.<br />

Rechnet man <strong>mit</strong> Gleitpunktzahlen <strong>mit</strong> 3 Nachkommastellen im Zehnersystem so folgt für die<br />

einzelnen Terme:<br />

1 -1/3 1/5 -1/7 1/9 -1/11 1/13 -1/15 1/17 -1/19 1/21<br />

1 -.333 .2 -.142 .111 -.909/10 .769/10 -.666/10 .588/10 -.526/10 .476/10<br />

Die folgenden Rechnungen erfolgen <strong>mit</strong> Gleitpunktzahlen, die auf drei Nachkommastellen<br />

begrenzt sind. Bei der Ausführung der Addition entstehen daher Abbrechfehler.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!