Grundlagen der Technischen Informatik - Professur Technische ...
Grundlagen der Technischen Informatik - Professur Technische ...
Grundlagen der Technischen Informatik - Professur Technische ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
<strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong><br />
<strong>Informatik</strong><br />
Kapitel 2: Arithmetik<br />
Teil1<br />
Prof. Dr. Wolfram Hardt<br />
Vorlesung Wintersemester 2009/10<br />
Zusammenfassung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Mit n Binärsignalen lassen sich<br />
– 2 n Werte o<strong>der</strong> Zeichen<br />
repräsentieren<br />
• Beispiel<br />
• Umgekehrt für m Zeichen werden<br />
– log 2<br />
m= ld m Bit benötigt<br />
• Eine mögliche Redundanz<br />
bestimmt sich zu<br />
R = 2 n – m<br />
• Darstellung von ganzzahligen<br />
Werten<br />
n 1<br />
= ∑ − Z<br />
i=<br />
0<br />
a b<br />
i<br />
i<br />
mit<br />
a ∈<br />
{ 0,1, L,<br />
b −1}<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 2<br />
1
Zusammenfassung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
SI-Präfixe (DIN 1301)<br />
Binärpräfixe (IEC 60027-2)<br />
Name<br />
(Symbol)<br />
Bedeutung<br />
Name (Symbol)<br />
Bedeutung<br />
Kilobyte (kB)<br />
10 3 Byte<br />
Kibibyte (KiB)<br />
2 10 Byte<br />
Megabyte (MB)<br />
10 6 Byte<br />
Mebibyte (MiB)<br />
2 20 Byte<br />
Gigabyte (GB)<br />
10 9 Byte<br />
Gibibyte (GiB)<br />
2 30 Byte<br />
Terabyte (TB)<br />
10 12 Byte<br />
Tebibyte (TiB)<br />
2 40 Byte<br />
Petabyte (PB)<br />
10 15 Byte<br />
Pebibyte (PiB)<br />
2 50 Byte<br />
Exabyte (EB)<br />
10 18 Byte<br />
Exbibyte (EiB)<br />
2 60 Byte<br />
Zettabyte (ZB)<br />
10 21 Byte<br />
Zebibyte (ZiB)<br />
2 70 Byte<br />
Yottabyte (YB)<br />
10 24 Byte<br />
Yobibyte (YiB)<br />
2 80 Byte<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 3<br />
Zusammenfassung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Verfahren I:<br />
Division durch größtmögliche Potenz <strong>der</strong> Basis des Zielsystems.<br />
• Bsp: 861 10<br />
– 861 : 8 3 = Rest<br />
– 349 : 8 2 = Rest<br />
– 29 : 8 1 = Rest<br />
– 5 : 8 0 = Rest Lösung: 861 10<br />
=<br />
• Verfahren II:<br />
Division durch die Basis des Zielsystems. (Horner Schema)<br />
– 861 : 8 = Rest<br />
– 107 : 8 = Rest<br />
– 13 : 8 = Rest<br />
– 1 : 8 = Rest Lösung: 861 10<br />
=<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 4<br />
2
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 5<br />
Zahlendarstellung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Nachkommastellen?<br />
• Zahlen: 0 < z < 1<br />
• Beispiele<br />
– ______________________<br />
– ______________________<br />
– ______________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 6<br />
3
Zahlendarstellung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Darstellung von Vor- und Nachkommastellen<br />
• ___________________<br />
• ______________________<br />
• ______________________<br />
• ___________________________________________<br />
• ___________________________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 7<br />
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 8<br />
4
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Konvertierung <strong>der</strong> Basis<br />
• Verfahren I:<br />
Division durch größtmögliche Potenz <strong>der</strong> Basis des Zielsystems.<br />
– Umständlich, da erst die Potenz bestimmt werden muss<br />
• Verfahren II:<br />
Division durch die Basis des Zielsystems.<br />
(Ableitung aus dem Horner Schema)<br />
William George Horner<br />
(* 1786 in Bristol, † 1837 in Bath)<br />
war ein britischer Mathematiker<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 9<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Horner - Schema<br />
• Idee:<br />
– _________________________________________________<br />
– _________________________________________________<br />
p ( x)<br />
= ((((( a )* x + a )* x + a )* x + a )* x + a )* x + a<br />
5 5 4 3 2 1 0<br />
h 0<br />
1<br />
= h0<br />
* x a4<br />
2<br />
= h1<br />
* x a3<br />
h +<br />
h +<br />
h<br />
3<br />
= h2<br />
* x + a2<br />
h<br />
4<br />
= h3<br />
* x + a1<br />
h = h * x + a = p5 ( )<br />
5 4<br />
0<br />
x<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 10<br />
5
Horner - Schema: Beispiel<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
1 0 1 1 0 0 2<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 11<br />
Konvertierung mit Nachkommastellen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Verfahren abgeleitet vom Horner Schema<br />
– __________________________________________________<br />
0 .5408<br />
10<br />
= X<br />
16<br />
0 .5408<br />
* 16<br />
=<br />
8 .6528<br />
0 .6528<br />
* 16<br />
= 10 .4448<br />
0 .4448<br />
* 16<br />
=<br />
0 .5408<br />
10<br />
= 0 .8 A 7 ...<br />
7 .1168<br />
0.1168<br />
*16 usw<br />
16<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 12<br />
6
Konvertierung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Hinweis<br />
– ________________________________________________<br />
________________________________________________<br />
________________________________________________<br />
– ________________________________________________<br />
________________________________________________<br />
________________________________________________<br />
________________________________________________<br />
________________________________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 13<br />
Konvertierung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Beispiel<br />
– Konvertiere 179 10<br />
in Binärdarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 14<br />
7
Addition vorzeichenloser Zahlen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Betrachtung <strong>der</strong> Algorithmen<br />
• Es gelten die selben (bekannten) Regeln, die auch für die<br />
manuelle Rechnung mit dezimalen Zahlen gelten.<br />
X 190 10111110<br />
Y 141 10001101<br />
C + 101111000 Übertrag aus vorhergehen<strong>der</strong> Stufe<br />
X+Y 101001011<br />
• Hinweis:<br />
– _____________________________________________________<br />
– _____________________________________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 15<br />
Subtraktion vorzeichenloser Zahlen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Es gelten die selben (bekannten) Regeln, die auch für die<br />
manuelle Rechnung mit dezimalen Zahlen gelten.<br />
X 190 10111110<br />
Y 141 10001101<br />
C - 00000010 Übertrag aus<br />
vorhergehen<strong>der</strong><br />
X-Y 49___00110001 Stufe<br />
Subtraktionsregeln<br />
• _____<br />
• ________________<br />
• _____<br />
• _____<br />
• __________________<br />
• __________________<br />
• _______<br />
• __________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 16<br />
8
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 17<br />
Darstellung negativer Zahlen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Zahlenbereich identisch mit positiven Zahlen<br />
• ___________________________________________________<br />
– ______________________________<br />
– ___________________________________________________<br />
• Beispiel:<br />
3 Bit plus<br />
1 Vorzeichenbit<br />
0000 = 0<br />
0001 = 1<br />
0010 = 2<br />
0011 = 3<br />
0100 = 4<br />
0101 = 5<br />
0110 = 6<br />
0111 = 7<br />
1000 = - 0<br />
1001 = - 1<br />
1010 = - 2<br />
1011 = - 3<br />
1100 = - 4<br />
1101 = - 5<br />
1110 = - 6<br />
1111 = - 7<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 18<br />
9
Betrag und Vorzeichen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Nachteile bei dieser Darstellungsart<br />
– Darstellung negativer Zahlen än<strong>der</strong>t sich bei Bereichserweiterung<br />
-5 als 4-Bit Zahl = ________________<br />
-5 als 1-Byte Zahl = _________________<br />
-5 als 2-Byte Zahl = ___________________<br />
– Addition einer positiven mit einer negativen Zahl funktioniert<br />
an<strong>der</strong>s als üblich<br />
___<br />
_____________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 19<br />
Betrag und Vorzeichen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Nachteile<br />
– _____________________________________<br />
_____________<br />
_____________<br />
• Eigenschaften <strong>der</strong> Darstellung:<br />
– ____________________________<br />
– ________________________________<br />
– _________<br />
• Verbesserung:<br />
– Einerkomplement- Darstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 20<br />
10
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 21<br />
Einerkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Für die Einerkomplementdarstellung wird bitweise invertiert<br />
0000 = 0<br />
0001 = 1<br />
0010 = 2<br />
0011 = 3<br />
0100 = 4<br />
0101 = 5<br />
0110 = 6<br />
0111 = 7<br />
• MSB gibt Vorzeichen an<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 22<br />
11
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Einerkomplement – Codierung<br />
• Das Einerkomplement eines Codewortes bzw. einer<br />
– Bitfolge b n-1<br />
...b 0<br />
ist die Bitfolge e n-1<br />
...e 0<br />
,<br />
– bei <strong>der</strong> jedes Bit invertiert wurde, d.h. e i<br />
= 1 - b i<br />
für alle i.<br />
• Die n – stellige Einerkomplement-Codierung<br />
(Einerkomplementdarstellung) bildet ab:<br />
+x > 0 Binärcode (x), mit führenden Nullen auf n Bits<br />
aufgefüllt.<br />
-x < 0 Binärcode (x), mit führenden Einsen auf n Bits<br />
aufgefüllt.<br />
• Beispiel: ____________________<br />
• Beim Addieren in <strong>der</strong> Einerkomplement-Darstellung wird<br />
– zunächst das übliche Additionsschema<br />
____________________________________ angewandt.<br />
– Falls aus <strong>der</strong> höchsten Stelle ein Übertrag entsteht, muss dieser<br />
jedoch ________________________________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 23<br />
Zahlenkreis im Einerkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Eigenschaften<br />
– _______________________<br />
– _______________________<br />
– ___________________<br />
• Ziel: Beseitigung <strong>der</strong><br />
Redundanz<br />
1<br />
1111 0000<br />
1110<br />
1101 -1 -0 0<br />
0001<br />
0010<br />
1010 -6 6<br />
-7 7<br />
0101<br />
-2<br />
2<br />
1100<br />
1011<br />
-3<br />
-4<br />
Einerkomplement<br />
3<br />
4<br />
0011<br />
0100<br />
-5<br />
5<br />
1001<br />
0110<br />
1000 0111<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 24<br />
12
Einerkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Beschränkt man sich auf Zahlen ohne Nachkommastellen,<br />
folgt aus <strong>der</strong> Definition des Einerkomplements:<br />
–Die Bitfolge z n-1<br />
z n-2<br />
... z 1<br />
z 0<br />
repräsentiert die Binärzahl<br />
• Beispiel:<br />
0<br />
-2 n-1 -1 2 n-1 -1<br />
__________________<br />
_________________________________________<br />
_________________________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 25<br />
Einerkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Bereich zur Darstellung nichtnegativer Zahlen:<br />
– [ ________________ ] im normalen Stellensystem<br />
– BSP: _______________________<br />
• Bereich zur Darstellung negativer Zahlen:<br />
– [ _________________ ] codiert durch 2 n – |X| – 1<br />
– BSP:<br />
___________________________________________________<br />
• _____________________________<br />
– ____<br />
– ____<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 26<br />
13
Einerkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Sind beide Operanden positiv und<br />
– MSB des Resultats ist 1 ________<br />
• Sind beide Operanden negativ<br />
– wird ein „end-around-carry“ addiert.<br />
– Ist das MSB des Resultats 0 ________<br />
• Sind die Vorzeichen <strong>der</strong> Operanden unterschiedlich und es<br />
entsteht kein Übertrag in <strong>der</strong> MSB-Stelle<br />
– ________________________.<br />
• Ansonsten wird das „end-around-carry“ addiert, um das<br />
korrekte Ergebnis zu erhalten.<br />
– _________________________________.<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 27<br />
Beispiele<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Einerkomplement<br />
• Ein Überlauf tritt auf:<br />
– ______________________________________________<br />
– ______________________________________________<br />
+3 0011<br />
+4 0100<br />
+<br />
7= 0111<br />
-2 1101<br />
-5 1010<br />
+<br />
‘0111<br />
-7= 1000<br />
+6 0110<br />
-3 1100<br />
+<br />
‘0010<br />
3= 0011<br />
+4 0100<br />
-7 1000<br />
+<br />
-3= 1100<br />
-2 1101<br />
-6 1001<br />
+<br />
‘0110<br />
+7= 0111<br />
+5 0101<br />
+6 0110<br />
+<br />
-4= 1011<br />
-7 1000<br />
-7 1000<br />
+<br />
‘0000<br />
+1= 0001<br />
+7 0111<br />
+7 0111<br />
+<br />
-1= 1110<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 28<br />
14
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 29<br />
Zweierkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Das Zweierkomplement einer Binärzahl wird gebildet durch<br />
– ___________________<br />
– ______________________________<br />
0000 = 0<br />
0001 = 1<br />
0010 = 2<br />
0011 = 3<br />
0100 = 4<br />
0101 = 5<br />
0110 = 6<br />
0111 = 7<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 30<br />
15
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Zweierkomplement-Codierung<br />
• Das Zweierkomplement eines Codewortes bzw. einer<br />
Bitfolge b n-1 ...b 0 wird gebildet, _______________________<br />
_____________________<br />
• Dies enthält gewissermaßen die Korrekturaddition aus <strong>der</strong><br />
Einerkomplement-Darstellung.<br />
• Die n-stellige Zweierkomplement-Codierung<br />
(Zweierkomplementdarstellung) bildet ab:<br />
+x > 0 Binärcode (x), mit n Stellen dargestellt, also ggf.<br />
mit führenden Nullen aufgefüllt.<br />
-x < 0 Zweierkomplement (n-stelliger Binärcode (x)).<br />
• Beispiel: _______________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 31<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Eigenschaften I<br />
• Beschränkt man sich auf Zahlen ohne Nachkommastellen, folgt<br />
aus <strong>der</strong> Definition des Zweierkomplements:<br />
–Die Bitfolge z n-1<br />
z n-2<br />
... z 1<br />
z 0<br />
repräsentiert die Binärzahl<br />
Zweierkomplement<br />
• Eigenschaften:<br />
–_____________________________<br />
–_____________________________<br />
–_______________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 32<br />
16
Eigenschaften II<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Bereich zur Darstellung nichtnegativer Zahlen:<br />
– [ 0, 2 n-1 – 1 ] im normalen Stellensystem<br />
– BSP: n=4 0000 … 0111<br />
– Kein Unterschied zum Einerkomplement<br />
• Bereich zur Darstellung negativer Zahlen:<br />
– [ -(2 n-1 ), -1 ] codiert durch 2 n – |X|<br />
– BSP: n=4, -6 16–6=10 = 1010<br />
Zweierkomplement<br />
• ____________________________________________<br />
• Warum ist das korrekt?<br />
• Beweis:<br />
X = xn L<br />
Gegeben sei: Behauptung: − X = ( xn− Lx<br />
) 1<br />
− 1<br />
x 0<br />
1 0<br />
+<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 33<br />
Zahlenkreis im Zweierkomplement<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
1111<br />
0000<br />
0001<br />
1110 0 0010<br />
-1 1<br />
-2<br />
2<br />
1101<br />
0011<br />
-3<br />
3<br />
1100<br />
Zweierkomplement<br />
-4<br />
4 0100<br />
-5<br />
5<br />
1011<br />
0101<br />
-6<br />
6<br />
-7 7<br />
1010 -8 0110<br />
1001<br />
1000<br />
0111<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 34<br />
17
Zweierkomplement-Codierung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Für die Erkennung eines Überlaufs bei <strong>der</strong> Addition in<br />
Zweierkomplement-Darstellung gibt es zwei Kriterien:<br />
– Vorzeichen-Vergleich <strong>der</strong> Summanden und des Ergebnisses:<br />
• bei <strong>der</strong> Addition zweier positiver Zahlen muss das Ergebnis<br />
positiv sein bzw. entsprechend negativ;<br />
• ___________________________________________________<br />
_____________________________<br />
– Die Anwendung dieses Kriteriums erfor<strong>der</strong>t allerdings die<br />
Betrachtung <strong>der</strong> Summanden, was für die automatische<br />
Verarbeitung unpraktisch ist.<br />
– Ein Überlauf ist genau dann eingetreten, wenn die beiden<br />
Überträge aus ________________________________ verschieden<br />
sind.<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 35<br />
Beispiele<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Zweierkomplement<br />
• Ein Überlauf tritt auf:<br />
– ______________________________________________<br />
– ______________________________________________<br />
– ____________________________________________________<br />
___________________________________<br />
+3 0011<br />
+4 0100<br />
+<br />
7= 0111<br />
-2 1110<br />
-6 1010<br />
+<br />
-8= 1000<br />
+6 0110<br />
-3 1101<br />
+<br />
+3= 0011<br />
+4 0100<br />
-7 1001<br />
+<br />
-3= 1101<br />
-3 1101<br />
-6 1010<br />
+<br />
+7= ‘0111<br />
+5 0101<br />
+6 0110<br />
+<br />
-5= 1‘011<br />
-8 1000<br />
-8 1000<br />
+<br />
0= ‘0000<br />
+7 0111<br />
+7 0111<br />
+<br />
-2= 1‘110<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 36<br />
18
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 37<br />
Weitere Darstellungsformen<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• BCD –Code<br />
– Binäre Codierung <strong>der</strong> Ziffern des Zahlensystems zur Basis 10<br />
• Gray – Code<br />
– Zwei benachbarte Zahlen unterscheiden sich nur in einer dualen<br />
Ziffer<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 38<br />
19
BCD Kode<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Der "Binary Code Decimal" ist ein<br />
wichtiger Zahlencode.<br />
• Verwendung im kaufmännischen<br />
Bereich<br />
– Rundungsfehler durch<br />
Zahlenbasiswechsel vermieden<br />
– COBOL kann mit BCD umgehen<br />
• Als Zeichen dienen<br />
– Bit-Gruppen aus 0 und 1.<br />
binär<br />
0000<br />
0001<br />
0010<br />
0011<br />
0100<br />
0101<br />
0110<br />
0111<br />
1000<br />
1001<br />
dezimal<br />
• Dieser Code ist so aufgebaut, dass<br />
1010 10<br />
A<br />
jede <strong>der</strong> einzelnen Dezimalzahlen, 1011 11<br />
B<br />
nach denen wir zu rechnen pflegen, 1100 12<br />
C<br />
einfach als Dualzahl geschrieben wird. 1101 13<br />
D<br />
• Achtung: Pseudotetraden<br />
1110 14<br />
E<br />
– ungenutzte Kodiermöglichkeiten 1111 15<br />
F<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 39<br />
0<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
hexadezimal<br />
0<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
Gray-Code<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Binär-Code<br />
• Gray-Code<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 40<br />
20
Übersicht<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Kapitel 2<br />
• Zahlendarstellung<br />
• Konvertierung<br />
• Negative Zahlen<br />
– Einerkomplement<br />
– Zweierkomplement<br />
• Weitere Darstellungsformen<br />
• Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 41<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Gleitkommadarstellung<br />
• Für Dezimalzahlen wird ein an<strong>der</strong>es Format<br />
(floating point format) verwendet,<br />
– das die Zahl in eine normalisierte ___________________________<br />
zerlegt.<br />
– BSP:<br />
1746399,1242 wird dargestellt als 0,17463991242 × 10 7<br />
– Üblicherweise wird das IEEE 754 Standardformat<br />
(double precision) mit Länge von 64 Bit verwendet:<br />
• Größte darstellbare Zahl: ca. 2 1024 1,798*10 308 ,<br />
• Größte Genauigkeit: ca. 2 -52 10 -16 , d.h. 16 Dezimalstellen<br />
• Rundungsfehler bei Verknüpfung von Zahlen sehr<br />
unterschiedlicher Größe<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 42<br />
21
Gleitkommadarstellung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Darstellung: V = (-1) S • m • b e ←<br />
___________________<br />
_____________<br />
___________________<br />
_________________<br />
• Basis in gegebener Architektur festgelegt<br />
• Darstellung nicht eindeutig, beispielsweise<br />
_________________________________________<br />
• Liegt Position des Kommas fest Normalisierte Darstellung<br />
• Position des Kommas z.B. links von signifikantestem Bit ≠ 0<br />
1 > m ≥ 1 / b (nur echter Bruch)<br />
kleinste darstellbare Zahl 0,1 * b -n<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 43<br />
Gleitkommadarstellung<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Darstellung: V = (-1) S • m • b e ←<br />
___________________<br />
_____________<br />
___________________<br />
_________________<br />
• Wertebereich (Binärdarstellung)<br />
• [– (1 – 2 -k ) * b n ,<br />
+ (1 – 2 -k ) * b n ] mit<br />
• k : ________________________,<br />
• n : _______________________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 44<br />
22
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Genauigkeit<br />
Gleitkommadarstellung<br />
• Vergleich des Wertebereichs mit Wertebereich gleich langer<br />
Festkommadarstellungen<br />
– Wertebereich Gleitkommadarstellung<br />
• ___________________________________<br />
– __________________________<br />
• Genauigkeit variabel:<br />
– Exponent klein Genauigkeit groß<br />
– Exponent groß Genauigkeit klein<br />
• Basis<br />
– Meist 2,<br />
– bei IBM 360 ff : 16<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 45<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
Gleitkommadarstellung<br />
Sign exponent mantissa<br />
m+n m+n -1 m m-1<br />
0<br />
• Exponentendarstellung<br />
– ________________________________<br />
– ___________________________________________________<br />
• „Hidden bit“<br />
– Exponent binär und Darstellung normalisiert<br />
– signifikantestes Bit stets = “1“<br />
– ______________________________________<br />
• __________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 46<br />
23
Gleitkommadarstellung – IEEE<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Single-Format<br />
– n = 8, Exzess 127,m = 23<br />
• Double-Format<br />
– n = 11, Exzess 1023, m = 52<br />
• Zusätzliche Son<strong>der</strong>interpretation<br />
Mantisse Exponent Bezeichnung<br />
M = 0 E = 0 _______________<br />
M > 0 E = 0 __________________ (0,M*2 kleinste„normale“E )<br />
M = 0 E = 2 n ________________<br />
M > 0 E = 2 n ___ (Bsp: 0,0/0,0)<br />
0 < E < 2 n __________________<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 47<br />
Rechenarithmetik<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Addition und Subtraktion<br />
• Für jede arithmetische Operation<br />
– ___________________<br />
– _______________________<br />
– ______________<br />
– __________________<br />
• Achtung: Was über die 16 Stellen hinausgeht, wird<br />
abgeschnitten:<br />
Gleitkommadarstellung<br />
• BSP:<br />
• 65749230736,16372<br />
• + 47828,00829834098<br />
+<br />
0,6574923073616372<br />
0,0000004782800829834098<br />
0,6574927856417201<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 48<br />
24
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Multiplikation<br />
• Beide Operanden sind auf Null zu prüfen<br />
– Ist ein Operator Null Ergebnis auch Null<br />
• _______________________<br />
• ____________________________<br />
• Mantisse des Ergebnisses<br />
– Nicht unbedingt normalisiert<br />
– Linksverschiebung mit Exponentenanpassung<br />
Gleitkommadarstellung<br />
• Rechengenauigkeit muss um eine Stelle höher sein, damit<br />
gültige Zahl nachgeschoben wird.<br />
• BSP: 60* 0,0125 = (0,6 * 10 2 ) * (0,125 * 10 -1 )<br />
= (0,6 * 0,125) * 10 (2-1)<br />
= 0,075 * 10 1<br />
= 0,75 * 10 0 Rechenarithmetik<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 49<br />
Rechenarithmetik<br />
<strong>Professur</strong> <strong>Technische</strong> <strong>Informatik</strong><br />
Prof. Dr. Wolfram Hardt<br />
• Division<br />
• Dividend auf Null überprüfen<br />
– Ergebnis ist dann auch Null<br />
• Divisor auf Null überprüfen<br />
– Ergebnis ist dann undefiniert (NaN)<br />
• Falls Divisor und Dividend ungleich Null<br />
– ___________________________<br />
– ______________________<br />
• Mantisse des Ergebnisses kann größer Eins werden<br />
– Normalisierung durch Rechts-Shift<br />
• Es kann<br />
– Exponentenüberlauf / Exponentenunterlauf,<br />
– undefiniert (0/0) und<br />
– unendlich (x/0) auftreten.<br />
Gleitkommadarstellung<br />
Vorlesung<br />
Wintersemester 2009/10 <strong>Grundlagen</strong> <strong>der</strong> <strong><strong>Technische</strong>n</strong> <strong>Informatik</strong> 50<br />
25