Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 Vertiefungsstoff zum Thema „Darstellung von Zahlen“ Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung.

Ähnliche Präsentationen


Präsentation zum Thema: "1 Vertiefungsstoff zum Thema „Darstellung von Zahlen“ Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung."—  Präsentation transkript:

1 1 Vertiefungsstoff zum Thema „Darstellung von Zahlen“ Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung nach dem IEEE-754-Standard

2 2 Rechnen mit BCD-codierten Zahlen Idee Verwende zur Codierung der Ziffern 0,..., 9 eine Tetraden-Codierung, d.h., codiere jede Dezimalziffer mit einem 4 Bitwort: c BCD : {0,..., 9}  B 4 Mehr-zifferige Dezimalzahlen werden dann ziffernweise mit der natürlichen Fortsetzung c* BCD codiert: Beispiel: c* BCD (13) =c BCD (1) c BCD (3) = Frage Wie rechnet (addiert) man mit BCD-codierten Zahlen? Antwort: siehe nächste Folie

3 3 Mit der BCD-Codierung werden mehrstellige Dezimalzahlen ziffernweise codiert, wobei die Codierung der Ziffern {0, 1,..., 9} wie in der Tabelle angegeben erfolgt. Rechenbeispiel: Geben Sie die BCD-Codierung der beiden Dezimalzahlen 3617 und 5438 an. Die Codierung erfolgt ziffernweise Wie addiert man BCD-codierte Zahlen? Idee –Addiere ziffernweise, d.h. schreibe die Binärdarstellungen der Ziffern untereinander und führe Binäraddition durch: (3617) 10 = (5438) 10 = –Problem: Behandlung von Überläufen! Binärwörter 1010 und sind nicht im BCD!

4 4 Addition von BCD-codierten Zahlen –Addiere ziffernweise, d.h. schreibe die Binärdarstellungen der Ziffern untereinander und führe Binäraddition durch: (3617) 10 = (5438) 10 = Ideen zur Behandlung von Überläufen: Ansatz 1 –Lege eine Tabelle an, in der man nachschaut, wie die korrekte Ziffer bei einem der möglichen „pathologischen“ Fälle aussieht. (Es gibt insgesamt 6 solcher Fälle.) Im Beispiel gibt es zwei pathologische Fälle: 1)Zwei Binärziffern addieren sich zu 1010, dann lautet die richtige Ziffer der Summe 0000 jedoch entsteht ein Übertrag von 1, der zur Summe der nächsten Zifferaddition dazugezählt werden muss. 2)Zwei Binärziffern addieren sich zu , dann lautet die richtige Ziffer der Summe Der Übertrag von 1 wird zur Summe der nächsten Zifferaddition dazugezählt.

5 5 Addition von BCD-codierten Zahlen (3617) 10 = (5438) 10 = Ideen zur Behandlung von Überläufen: Ansatz 2: –Untersucht man die möglicherweise auftretenden 6 pathologischen Fälle, so erkennt man, dass man die jeweils richtige Ziffer durch Addition des Korrekturmusters 0110 erhält. Das heißt, wenn immer bei der Addition eine Summe S = s 4 s 3 s 2 s 1 > 1001 auftritt, addiert man zu S zunächst das Korrekturmuster Dies ergibt dann die richtige Ziffernfolge z 4 z 3 z 2 z 1 sowie einen Übertrag von 1. Im Beispiel: somit ist s 4 s 3 s 2 s 1 größer als 1001 so dass das Korrekturmuster 0110 aufaddiert werden muss: Wie man sieht, erhält man die richtige Binärzahl 0000 = (0) 10 sowie einen Übertrag von 1 für die nächste Stelle.

6 6 Addition von BCD-codierten Zahlen (3617) 10 = (5438) 10 = Addition der Binärcodierungen 0111 und 1000 Im Beispiel: somit ist s 4 s 3 s 2 s 1 größer als 1001 so dass das Korrekturmuster 0110 aufaddiert werden muss. Es ist jedoch bereits ein Überlauf entstanden, so dass eine 5-stellige Binärzahl vorliegt. In diesem Fall wird das Korrekturmuster nur zu den Stellen s 4 s 3 s 2 s 1 addiert Summe: te Stelle ignorieren! 0110 Korrekturmuster zu s 4 s 3 s 2 s 1 addieren Wie man sieht, erhält man die richtige Binärzahl 0101 = (5) 10 sowie einen Übertrag von 1 für die nächste Stelle.

7 7 Addition von BCD-codierten Zahlen insgesamt ergibt sich somit folgende Rechnung: (3617) 10 = (5438) 10 = (7+8) 1111betrachte nur 4 Stellen 0110 Korrekturmuster aufaddieren korrekte Ziffer mit Überlauf 0100(3+1) 0001plus Überlauf 0101korrekte Ziffer, kein Überlauf 1010(4+6) 0110 Korrekturmuster aufaddieren korrekte Ziffer mit Überlauf 1000(3+5) 0001plus Überlauf 1001korrekte Ziffer, kein Überlauf Somit ergibt sich: ( ) BCD c) BCD -> ( x ) 10 ( ) 10

8 8 Weitere Ansätze zur Codierung von Ziffern Ziffern-Codierungen: Sind spezielle n-Bit-Codierungen c : A  B n. Sie wurden entwickelt, um arithmetische Operationen auf codierten Wörtern zu unterstützen. 4-Bit reichen zur Darstellung von 10 Ziffern aus. Spezielle Codes zur Zifferndarstellung BCD-Codierung: Tetraden-Codierung, d.h., c : A  B 4 EBCDIC (Extended Binary Coded Decimal Interchange Code), ein auf 8-Bit erweiterter BCD-Code gemäß: c EBCDIC (i) = "1111" + c BCD (i) = 1111c BCD (i) Aiken-Codierung: Tetraden-Codierung mit Darstellung jeder Ziffer d  {0,..., 9} in 4 Bits durch: -Binärdarstellung von d, für d  {0,..., 4} (also 0000,...,0100) -Binärdarstellung von d+6, für d  {5,..., 9} (also 1011,...,1111) Exzess-3-Codierung: Tetraden-Codierung, Darstellung jeder Zahl z durch Ziffer d z in 4 Bits durch "Dualdarstellung" von z+3.

9 9 Zweier-Komplementdarstellung (allgemein) Die Zweierkomplement-Darstellung (in n Stellen) ist die gebräuchlichste interne Darstellung ganzer positiver und negativer Zahlen. Anmerkung: Negative Werte lassen sich am weitesten links stehenden Bit erkennen. Es gibt nur eine (natürliche) Darstellung der Zahl 0. Darstellung des Zahlenbereichs ist unsymmetrisch zum Nullpunkt. Definition: Sei A 2K,n = {-2 n-1,..., 0, 1,..., 2 n-1 -1 } der darzustellende Zahlenbereich. Unter der Zweier-Komplementdarstellung versteht man die Codierung: C 2,n (x) falls 0  x  2 n-1 C 2K,n (x) = C 2,n (2 n + x) falls - 2 n-1  x  0 Definition: Sei A 2K,n = {-2 n-1,..., 0, 1,..., 2 n-1 -1 } der darzustellende Zahlenbereich. Unter der Zweier-Komplementdarstellung versteht man die Codierung: C 2,n (x) falls 0  x  2 n-1 C 2K,n (x) = C 2,n (2 n + x) falls - 2 n-1  x  0

10 10 Gibt es weitere Komplementdarstellungen ? Ja, z.B. die sog. 1-Komplement-Darstellung (in n Stellen). Die 1-Komplement-Darstellung ist analog zur Zweier-Komplement- Darstellung, jedoch mit dem Unterschied, dass nach der Komplementbildung keine 1 zur Zahl addiert wird. Anmerkung: Es gibt zwei Darstellungen der Zahl 0 (dadurch symmetrisch zum Nullpunkt). Überlaufbehandlung erforderlich: muss zum Ergebnis addiert werden. Führendes Bit signalisiert, dass es sich um negative Zahl handelt. Ihr Betrag lässt sich durch Komplementbildung ermitteln. Definition: darzustellende Zahlenbereich: A 1K,n = {  2 n  1 + 1,..., 0,..., 2 n  1  1 } Unter der 1-Komplementdarstellung versteht man die Codierung: C 2,n (x) falls 0  x  2 n-1 C 2Komp (x) = C 2,n (2 n  1 + x) falls -2 n-1  x  0 Definition: darzustellende Zahlenbereich: A 1K,n = {  2 n  1 + 1,..., 0,..., 2 n  1  1 } Unter der 1-Komplementdarstellung versteht man die Codierung: C 2,n (x) falls 0  x  2 n-1 C 2Komp (x) = C 2,n (2 n  1 + x) falls -2 n-1  x  0

11 11 Addition mit 1-Komplementdarstellung = 12: =  3 (  4 ) + (  3) = (  7):   7 Mit Überlauf: 77 66 55 44 33 22 11 0 = 7: =  Ohne Überlauf: Die Zahl 0 hat zwei Darstellungen!

12 12 Ähnlichkeit der Darstellungsformen am Beispiel Mit Vorzeichenbit :– 77= Einerkomplement :– 77= Zweierkomplement :– 77= c Die Zahl –77 10 soll mit 8 Bit dargestellt werden: (77) 10 = ( ) 2 Bitweise Komplementbildung Addition von 1 Mit Vorzeichenbit:– 20= Einerkomplement:– 20= Zweierkomplement:– 20= c Bitweise Komplementbildung Addition von 1 Durch die Addition von 1 kann sich das Bitmuster jedoch auch an einer anderen Stelle ändern. Beispiel: Darstellung der Zahl –20 10 mit 8 Bit:

13 13 Gleitpunkt-Darstellung nach IEEE-754-Standard Gleitpunktdarstellung nach IEEE-754 Vorzeichen V: 1 Bit für Vorzeichen der Mantisse Charakteristik c: Exzess-q-Darstellung des Exponenten exp = c-q mit q = 2 (n  k  1) – 1 Mantisse m: Mit Werten zwischen 1  m|  2. Wegen Normierung auf Format 1.xxx....xxx wird die führende 1 nicht gespeichert! m -> m'.  dargestellte Zahl x = (-1) V  (1 + m')  2 (c  q) VCharakteristik cBetrag der Mantisse m (1  m|  2 ) n-1 | n-2 | k-2 0 Die Berufsvereinigung IEEE (Institute of Electrical and Electronics Engineers) hat einen Standard verabschiedet, die in den meisten Rechnern heute verwendet wird: IEEE-754-Standard für n-Bit-GPZ

14 14 Gleitpunkt-Darstellung nach IEEE-754-Standard Einfache Genauigkeit =>8-Bit Charakteristik: Exponent zwischen -127 und 128 (entspricht dem Dezimalbereich von 10  ) und(23+1)-Bit Mantisse: Werte zwischen 1 und 2- 2  23 (~ 10  7 ). VCharakteristikBetrag der Mantisse m (1  m  2) 31 | | 22 0 Doppelte Genauigkeit VCharakteristikBetrag der Mantisse m (1  m  2) 63 | | 51 0  11-Bit Charakteristik: Exponent zwischen und 1024 (~10  ) (52+1)-Bit Mantisse: Werte zwischen 1 und 2- 2  52 (~ 10  15 ).

15 15 Gleitpunkt-Darstellung nach IEEE-754-Standard Erweiterte Genauigkeit (Datentyp „extended“ )  15-Bit Charakteristik: Exponent zwischen 2  und 2 14 (64+1)-Bit Mantisse: Werte zwischen 1 und 2- 2  64 VCharakteristikBetrag der Mantisse m (1  m  2) 79 | | 63 0 Sonderfälle im IEEE-754-Standard Normalisierte Zahl:  0  exp  255 mit beliebiger Mantisse m Denormalisierte Zahl:  exp =  0 mit m  0 beliebig Darstellung der Zahl 0 durch: c = 0 und m =0 Darstellung von „Unendlich“  durch: c maximal und m = 0 Darstellung von „Not a Number“ (NaN): c maximal und m  0


Herunterladen ppt "1 Vertiefungsstoff zum Thema „Darstellung von Zahlen“ Addition von Zahlen in BCD-Kodierung Einerkomplementdarstellung von ganzen Zahlen Gleitpunktdarstellung."

Ähnliche Präsentationen


Google-Anzeigen