Sie sind auf Seite 1von 66

01 - Zahlendarstellung

Technische Grundlagen der Informatik

Automation Systems Group E183-1


Institute of Computer Aided Automation
Vienna University of Technology
email: tgi@auto.tuwien.ac.at

Zahlendarstellung bersicht

Zahlensysteme

Zahlenumwandlungen

Rechnen im binren System

Darstellung negativer Zahlen

Zahlensysteme Zahlschrift

Einzelne Zeichen mit Wert


Kombiniert

Beispiel: MCMXXIII

Rmische Zahlen: kumulativ-additiv


1000 + 1000 -100 + 10 + 10 + 1 + 1 + 1 = 1923

bliche Schreibweise:

Indisch-arabisch: beziffernd-positionell, Basis 10


1x1000 + 9x100 + 2x10 + 3x1

Zahlensysteme Dezimalsystem

Dezimales Zahlensystem (Zehnersystem): Stellenwertsystem

von den Indern um 600 n.Chr. entwickelt


spter im gesamten arabisch beeinflussten Raum verbreitet

Darstellung mit

Ziffern 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
an bestimmten Stellen (Einer, Zehner, Hunderter, Tausender, .)
Basis 10
Ziffer

Stelle
Wert der Stelle

Tausender Hunderter

Zehner

Einer

103

101

100

102

Wert der Zahl: 1x103 + 9x102 + 2x101 + 3x100 = 1923

Zahlensysteme allgemeine Stellenwertsysteme

Basis b

Zahl . . . 3210
Ziffer

Wert der Stelle

Wert der Zahl:

3
b3

33 + 22 + 11 + 00

(1923)10
2
b2

1
b1

0
b0

1x103 + 9x102 + 2x101 + 3x100 = 1923

Basis ist Anzahl der verwendeten Ziffern, 2,

Nachkommastellen: . . . 3210. 12 . . . =
= +33 + 22 + 11 + 00 + 11 + 22+ . . .

Ziffern: Zeichen mit dezimalem Wert 0, 1, , b1

Zahlensysteme Beispiele

Bsp.: (123.12)10 ist ident mit der gewohnten Notation 123.12 fr das
gelufige Zehnersystem:
( 2 1 0 . 1 2 ) = 2 2 + 1 1 + 0 0 + 1 1 + 2 2
( 1 2 3 . 1 2 )10 = 1 102 + 2 101 + 3 100 + 1 101 + 2 102
100 + 20 + 3 +
0.1 + 0.02
= (123.12)10

Bsp. Basis 6:

( 5 2 0 . 3 )6 = 5 62 + 2 61 + 0 60 + 3 61 =
= 180 + 12 + 0 +
0.5 =
= (192.5)10
6

Zahlensysteme

Zahlensystem mit Basis = 2 binres Zahlensystem


Zahlensystem mit Basis = 16 hexadezimales Zahlensystem

1703 Geburtsstunde des


binren Zahlensystems
(G.W. Leibniz)
Durchfhrung der vier
Grundrechnungsarten
im binren Zahlensystem

Zahlensysteme
binr - dezimal

Beispiele von binren Zahlen mit ihrem dezimalen quivalent


binr
( )2

0
1

10

11

100

1001
1111

10001
10101

dezimal
( )10

0
1

3
4
9

15
17
21

Statt der Ziffern 0, 1 schreibt


man auch (Low), (High)
8

Zahlensysteme
hexadezimal - dezimal

hexadezimales Zahlensystem: 16 Ziffern,


aber im Zehnersystem nur Ziffern 0 .. 9
Daher erweitert man die Dezimalziffern zu
0,1,2, , 8,9, , , , , ,

Beispiele von hexadezimalen Zahlen mit ihrem dezimalen quivalent


hexadezimal
16

10

dezimal
( )10

16

1A

26

1F

31

FF

255

7FFF

32767

Zahlensysteme
binr hexadezimal - dezimal

binr
( )2

hexadezimal
16

dezimal
( )10

1010

hexadezimal
16

dezimal
( )10

1011

11

10

1100

12

11

1101

13

100

1110

14

101

1111

15

110

10000

10

16

111

10001

11

17

1000

10010

12

18

1001

binr
( )2

10

10

Zahlenumwandlungen

Von einem Quellsystem in ein Zielsystem


Quellsystem

Zielsystem

Zahl
Basis

Zahl
Basis

= ( 10. 12 )
0 <

= ( 10. 12 )

0 <

Zahlen mit Nachkommastellen (reelle Zahlen) aufteilen in

Vorkommateil
Nachkommateil

getrennt umrechnen

11

Zahlenumwandlungen binr in dezimal


Konversion von ganzen Zahlen Rechnen im Zielsystem

Quelldarstellung: (10110111)2
Gesucht: Zieldarstellung ( )10
= . . . 3210

= +323 + 222 + 121 + 020 =

= ((( +3) 2 + 2) 2 + 1) 2 + 0

Variante 1:
(1

1)2

1 27 + 0 26 + 1 25 + 1 24 + 0 23 + 1 22 + 1 21 + 1 20 = (183)10

Umwandeln der Ziffern (0)2 , (1)2 in Zieldarstellung (0)10 , (1)10


Umwandeln der Quell-Basis in Zieldarstellung: = (10)2 = (2)10

12

Zahlenumwandlungen Hornerschema
Konversion von ganzen Zahlen Rechnen im Zielsystem

Variante 2:
(1

1)2

(((((( 1 2 + 0) 2 + 1) 2 + 1) 2 + 0) 2 + 1) 2 + 1) 2 + 1 =
(((((2 2 + 1) 2 + 1) 2 + 0) 2 + 1) 2 + 1) 2 + 1 =
((((5 2 + 1) 2 + 0) 2 + 1) 2 + 1) 2 + 1 =
(((11 2 + 0) 2 + 1) 2 + 1) 2 + 1 =
((22 2 + 1) 2 + 1) 2 + 1 =
(45 2 + 1) 2 + 1 =
91 2 + 1 =
= (183)10

13

Zahlenumwandlungen allgemein
Konversion von ganzen Zahlen Rechnen im Zielsystem

Die Zahl habe die Quelldarstellung ( . . . 1 0 )


Gesucht: Zieldarstellung der Zahl = ( . . . 1 0 )
Vorgehensweise

Umwandeln der Ziffern in Zieldarstellung


Umwandeln von in Zieldarstellung
Berechnung von + + 1 + 0

oder

Umwandeln der Ziffern in Zieldarstellung


Umwandeln von b in Zieldarstellung
Hornerschema

((. . . + 1 + ) + 1 ) + 0

14

Zahlenumwandlungen hexadezimal in dezimal


Konversion von ganzen Zahlen Rechnen im Zielsystem

Quelldarstellung:(1)16
Gesucht: Zieldarstellung ( )10

Umwandeln der Ziffern (1)16, ()16, (7)16 in (1)10,(12)10, (7)10


Umwandeln der Quell-Basis in Zieldarstellung: = (10)16 = (16)10
Variante 1:
(1

7)16

1 162 + 12 161 + 7 160 = (455)10

Variante 2: Hornerschema
7)16
(1

(1 16 + 12) 16 + 7
28 16 + 7

= (455)10

15

Zahlenumwandlungen dezimal in binr


Konversion von ganzen Zahlen Rechnen im Quellsystem

Bsp.: (6)10 ins binre Zahlensystem umrechnen


Das Stellenwertsystem der binren Zahlendarstellung lautet
= . . . 3210

= +323 + 222 + 121 + 020 =

= ((( +3) 2 + 2) 2 + 1) 2 + 0

Gesucht: 0, 1, 2, 3,

Man erkennt, dass 0 durch 2 teilbar sein muss d.h., dass


als Rest bei der Division von durch ( = ) auftritt
Fr (6)10 ergibt sich:

6: 2 = 3, Rest 0 = 0
0
Wir definieren weiter 1 =
, dann analog zu vorher
2
1 = 60
= 3 und 1 = 3: 2 = 1
2
2 = 31
= 1 und 2 = 1: 2 = 1
2

(6)10 = (110)2

16

Zahlenumwandlungen dezimal in binr


Konversion von ganzen Zahlen Rechnen im Quellsystem

Quelldarstellung: (29)10
Gesucht: Zieldarstellung

Berechnung:
0 = 29 2 = 1

LSB (niederstwertige Stelle)

1 = 14 2 = 0
2 = 7 2 = 1
3 = 3 2 = 1

4 = 1 2 = 1

MSB (hchstwertige Stelle)

Ergebnis: (29)10 = (11101)2

Umwandeln der Ziel-Basis in Quelldarstellung: B = 10

= (2)10
17

Zahlenumwandlungen allgemein
Konversion von ganzen Zahlen Rechnen im Quellsystem

Die Zahl habe die Quelldarstellung ( . . . 1 0 )


Gesucht: Zieldarstellung der Zahl = ( . . . 1 0 )
Vorgehensweise:

Umwandeln der Ziel-Basis B in Quelldarstellung


Berechnung von
0 =
1 =
2 =

steht fr grte ganze Zahl

Rest von :

...
Wobei der Vorgang abzubrechen ist, wenn . . . // . . ./ = 0
18

Zahlenumwandlungen dezimal in hexadezimal


Konversion von ganzen Zahlen Rechnen im Quellsystem

Quelldarstellung: (29)10
Gesucht: Zieldarstellung

Umwandeln der Ziel-Basis in Quelldarstellung: B = 10


Berechnung:

16

0 = 29 16 = 13

1 = 1 16 = 1

16

= (16)10

hchstwertige Stelle

(13)10 = ()16
(1)10 = (1)16

Ergebnis: (29)10 = (1)16

19

Zahlenumwandlungen binr in dezimal


Konversion vom Nachkommateil Rechnen im Zielsystem

Quelldarstellung: (0.1101)2
Gesucht: Zieldarstellung 0.

10

Umwandeln der Ziffern (0)2, (1)2 in Zieldarstellung (0)10, (1)10


Umwandeln der Quell-Basis: = (10)2 = (2)10
Variante 1:
(0. 1

1)2

1 (2)1 + 1 (2)2 + 0 (2)3 + 1 (2)4 = (0.8125)10

Variante 2: Hornerschema

1(4) 0(3) 1(2) 1(1)


(((1/2 + 0)/2 + 1)/2 + 1)/2 =
((0.5/2 + 1)/2 + 1)/2 =
(1.25/2 + 1)/2 =

1.625/2 = (0.8125)10

20

Zahlenumwandlungen
Konversion vom Nachkommateil Rechnen im Zielsystem

Die Zahl habe die Quelldarstellung (0. 12. . . )


Gesucht: Zieldarstellung der Zahl = 0. U12. . . n

Vorgehensweise

Umwandeln der Ziffern in Zieldarstellung


Umwandeln von Stellenwerten in Zieldarstellung
Berechnung von 11 + 22 + +

oder

Umwandeln der Ziffern in Zieldarstellung


Umwandeln von Basis b in Zieldarstellung
Hornerschema
((. . . (/ + 1)/ + + 2)/ + 1)/

21

Zahlenumwandlungen dezimal in binr


Konversion vom Nachkommateil Rechnen im Quellsystem

Quelldarstellung: (0.8125)10
Gesucht: Zieldarstellung 0.

Umwandeln der Ziel-Basis: B = (10)2 = (2)10


Berechnung:
1 = 0.8125 2 = 1.625 = 1

MSB

2 = 0.625 2 = 1.25 = 1
3 = 0.25 2 = 0.5 = 0
4 = 0.5 2 = 1 = 1

5 = 0 2 = 0 Abbruch

LSB

Ergebnis: (0.8125)10 = (0.1101)2


22

Zahlenumwandlungen
Konversion vom Nachkommateil Rechnen im Quellsystem

Die Zahl habe die Quelldarstellung (0. 12. . . )


Gesucht: Zieldarstellung der Zahl = 0. U12. . . n

Vorgehensweise

Umwandeln der Ziel-Basis in Quelldarstellung


Berechnung von
1 =

2 =
3 =

...

{} =

Vorkommateil von
Nachkommateil von

Abbruch bei = 0 oder gem Vorgabe (falls keine endliche


Entwicklung; also z.B. auf 4 Nachkommastellen)
23

Zahlenumwandlungen dezimal in binr


Konversion vom Nachkommateil Rechnen im Quellsystem

Quelldarstellung: (0.815)10
Gesucht: Zieldarstellung 0.

2 bis

zur fnften Nachkommastelle

Umwandeln der Ziel-Basis: B = (10)2 = (2)10


Berechnung:
1 = 0.815 2 = 1.63 = 1

MSB

2 = 0.63 2 = 1.26 = 1
3 = 0.26 2 = 0.52 = 0
4 = 0.52 2 = 1.04 = 1

5 = 0.04 2 = 0.08 = 0

LSB

Ergebnis: (0.815)10 = (0.11010)2


24

Zahlenumwandlungen binr in hexadezimal

= ( 0010 1001 1111 . 1100 0110 )2

=( 2
=(

6 )16

10 1010 1110 . 1111 0001 1

)2

= ( 0010 1010 1110 . 1111 0001 1000 )2

=(

)16

bin
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

hex
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

25

Zahlenumwandlungen binr in hexadezimal

Aus den Bits Viererblcke vor und nach dem Komma bilden (jeweils
vom Komma weg)
Viererblcke einzeln ins hexadezimale System umwandeln
Gegebenenfalls sind fhrende Nullen zu ergnzen oder Nullen am
Ende der Zahl anzuhngen

Die Konversion in umgekehrter Richtung ist genauso leicht zu


realisieren

Wegen der leichten Konversion und der kompakten Darstellung ist das
hexadezimale Zahlensystem in der Informatik weit verbreitet

26

Rechnen im binren System


Die Addition im dezimalen Zahlensystem

Bsp. Dezimalsystem (Basis: 10):


3 2 4 5
+ 11 9 2
3 4 3 7
Im Binrsystem sehr hnlich:

Ziffern von rechts nach links Stelle fr Stelle aufaddieren


Zwischenergebnis unten notieren, jedoch nur letzte Stelle
Ist das Zwischenergebnis mehrstellig, so entstehen bertrge, die beim
Abarbeiten der jeweils nchsten Spalte bercksichtigt werden mssen.

27

Rechnen im binren System


Die Addition im binren Zahlensystem

Im binren Zahlensystem gibt es nur die Ziffern 0 und 1


Entsprechend einfach sind die Additionsregeln:
0+0 =0
0+1 =1

1+0 =1

Es bleibt nur mehr ein Fall zu behandeln, nmlich:

1 + 1 =?

Problem hnlich wie im dezimalen System, bei den Rechnungen wo


es zu einem bertrag kommt (5 + 5 =? oder 7 + 8 =?)
Daher:
1 + 1 = 10

weil Stellenwertsystem

28

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Rechnen im binren System


Die Addition im binren Zahlensystem Beispiel

1 1 0 1 1 0

1 1 0 1 1 0

1 1 0 1 1 0

+ 0 1 1 0 1 1

+ 0 1 1 10 1 1

+ 0 1 11 10 1 1

1 1 0 1 1 0

1 1 0 1 1 0

1 1 0 1 1 0

+ 0 11 11 10 1 1
0 0 0 1

0 1

+ 10 11 11 10 1 1
1 0 0 0 1

0 0 1

+ 10 11 11 10 1 1

Im Ergebnis tritt ein berlauf auf

29

Rechnen im binren System


Die Subtraktion im dezimalen Zahlensystem

Bsp. im Dezimalsystem (Basis 10):


3 2 4 5
11 9 2
3 0 5 3

Minuend
Subtrahend

Im Binrsystem funktioniert das sehr hnlich:


Falls bei der Subtraktion zweier Ziffern die Ziffer des Minuenden kleiner ist
als die des Subtrahenden:
Von der hherwertigen Stelle eine Zahl im Wert der Basis ausborgen
Minuend um diesen Wert erhhen
Zwischenergebnis anschreiben
hherwertigen Subtrahend um eins erhhen

30

Rechnen im binren System


Die Subtraktion im binren Zahlensystem Beispiel

1 0 0 0 1
1 1 1 1 1
0
1 0 0 0 1

11 1 1
1 0
1 0 0 0 1

11 11 1 1
0 1 0
1 0 0 0 1
11 11 11 1 1
1 0 1 0

1 0 0 0 1
11 11 11 1 1
0

00=0
0 1 = 1
10=1
11=0

(1)2 (1)2 = (0)2


Wir borgen uns eine Zahl von der nchsten Stelle und
berechnen (10)2 (1)2 = (1)2; Bei der nchsten Stelle
mssen wir (1)2 zum Subtrahenden addieren
Wir borgen uns eine Zahl von der nchsten Stelle und
erhalten daher (10)2 (10)2 = (0)2
Fr die letzte Stelle borgen wir uns wieder eine Zahl von
der nchsten Stelle und berechnen (10)2 (1)2 = (1)2
(1)2 (1)2 = (0)2

31

Rechnen im binren System


Die Multiplikation im dezimalen Zahlensystem

Multiplikation fr Dezimalzahlen:

Multiplikand ziffernweise mit dem Multiplikator multiplizieren


Ergebnisse jeweils um eine Stelle verschoben untereinander schreiben
Zwischenergebnisse addieren

Zum Beispiel:
1 4 5
2 9 0
5 8
1 1 4
3 5 2

2 4 3

0
3 5
3 5

Im Binrsystem einfacher, da weniger Ziffern

32

Rechnen im binren System


Die Multiplikation im binren Zahlensystem

Die Multiplikationsregeln lauten:


00=0
01=0
10=0

11=1

Man kann dieselbe Methode wie bei Dezimalzahlen verwenden, z.B.:

1 0 0
1 0 0
0 0
1

1
1
0
0
1 1 1
1 1 0 0

1 0 1 1

0
0 1
0 0 1
0 1 1

Zeilen, die durch Multiplikation mit 0


entstehen, knnen auch
weggelassen werden

33

00=0
01=0
10=0
11=1

Rechnen im binren System


Die Multiplikation im binren Zahlensystem

fr Implementierung im Rechner gnstiger:

mit der am weitesten rechts stehenden Ziffer des Multiplikators beginnen


Teilergebnisse nach links verschieben (a).

Denn

nicht alle Zwischenergebnisse mssen gespeichert werden


jedes Teilergebnis kann sofort zum Endergebnis addiert werden
ermglicht effizientere Implementierung (b).
(a)
1 0 0 1
1 0 0 1
1 0 0
1 1 1 0
1 1 0 0 0

1 0 1 1
1
0 1
1 1

1
1
1 0
1 10 10 1
1 1 0 0

0 0 1 1011
0 0 1
bzw. + 1
0 1
1
0 1 1
+ 1 10 10
1 1 0

(b)
1
1
0
1
1
0

0
0
0
0

0 1 1011
0 1
1
1 1

0 1 1

34

00=0
01=0
10=0
11=1

Rechnen im binren System


Die Multiplikation mit Zweierpotenz

Multiplikation mit Zweierpotenz im Binrsystem


selber Effekt wie bei Multiplikation mit Zehnerpotenz im Dezimalsystem

Dezimal:

5 7 1 1 0 0 0
5 7 1
0 0 0
0 0 0
0 0 0
5 7 1 0 0 0

Binr:

1 0 0
1 0 0
0 0
0

1
1
0
0
0
1 0 0 1

1 0 0 0

0
0 0
0 0 0
0 0 0

Verschiebung des Multiplikanden um drei Stellen nach links, weil


8 = 23

Allgemein: Multiplikation mit 2 entspricht einer Verschiebung des


Multiplikanden um Stellen nach links

engl.: shift

35

Rechnen im binren System


Die Division im dezimalen Zahlensystem

Division im Dezimalsystem:
7 4 3 1 : 3=2 4 7 7
14
23
21
Im Dezimalsystem ist ein wesentlicher Bestandteil des Dividierens das
Erraten einer Quotientenziffer.
Betrachtet man zum Beispiel die Division
568: 63 =?

so sieht man zwar, dass 63 nicht mehr als 9-mal in 568 enthalten ist;
Aber ob 63 nun 9-mal oder vielleicht nur 8-mal oder etwa noch
weniger oft in 568 enthalten ist, bedarf eines geschulten Blickes (oder
eines Taschenrechners)
Im Binrsystem kommen als mgliche Quotientenziffern nur 0 oder 1
in Frage.
36

Rechnen im binren System


Die Division im binren Zahlensystem

Bsp.:
1 1 0 1 0 1: 1 0 1 0 = 1
1 10 1 0
0 01 1 0

Dividend : Divisor = Quotient


1 1 0 1 0 1: 1 0 1 0 = 1 0 1
1 10 1 0
0 01 1 0
0 0 0 0
1 1 0 1
1 10 1 0
0 0 1 1

1 1
1 10
0 0
0

0
1
1
0
1

1
0
1
0
1

0 1 : 1 0 1 0=1 0
0
0
0 1

entscheiden, ob Divisor Teil des Dividenden (geht rein)

ja: Quotientenziffer = 1
nein: Quotientenziffer = 0

37

Darstellung negativer Zahlen

Rechner-intern nur 0 und 1 zur Verfgung

Kodierung des Minus?

Vorzeichen und Betrag


Einerkomplement
Zweierkomplement
Exzessdarstellung

38

Darstellung negativer Zahlen


Darstellung durch Vorzeichen und Betrag

VZ

Betrag

-te Bit: Vorzeichen (VZ)

positives Vorzeichen 0
negatives Vorzeichen 1

restliche Bits: Betrag der darzustellenden Zahl

Vorzeichen getrennt behandeln

bei arithmetischen Operationen und bei Vergleichsoperationen

Bsp. fr = 6:

+27
27

0011011
1011011
39

Darstellung negativer Zahlen


Darstellung durch Vorzeichen und Betrag - Ordnungsrelation

Bsp.: m=3

+0 +1 +2 +3 +4 +5 +6 +7 0 1 2 3 4 5 6 7

0000

0010

0001

0100

0011

0110

0101

1000

0111

1010

1001

1100

1011

1110

1101

1111

Ordnungsrelation gilt nur innerhalb der positiven Zahlen

Negativen Zahlen kommen hinter den positiven

Die Zahl 0 besitzt zwei Darstellungen (+0/0)

40

Darstellung negativer Zahlen


Darstellung durch Vorzeichen und Betrag

dezimale Zahl

dezimale Kodierung

binre Kodierung

+0

+1

000 00

000 01

+2 1

2 1

011 11

2 + 1

2 + 1

2+1 1

100 00

100 01

111 11

41

Darstellung negativer Zahlen


Einerkomplementdarstellung

negative Zahl unterscheidet sich von positiver Zahl durch

Vertauschen von 0 und 1

Ausgangspunkt: positiver Betrag der Zahl

Bsp. fr = 7:
+27
27

00011011
11100100

Zahl 0 besitzt zwei Darstellungen

000 000 = +0
111 111 = 0

Positive und negative Zahlen knnen am fhrenden Bit unterschieden


werden
42

Darstellung negativer Zahlen


Einerkomplementdarstellung - Ordnungsrelation

Bsp.: m=3

+0 +1 +2 +3 +4 +5 +6 +7 7 6 5 4 3 2 1 0

0000

0010

0001

0100

0011

0110

0101

1000

0111

1010

1001

1100

1011

1110

1101

1111

Ordnungsrelation gilt (getrennt) innerhalb der positiven und negativen


Zahlen

Negative Zahlen kommen hinter den positiven

Zahl 0 besitzt zwei Darstellungen (+0/0)


43

Darstellung negativer Zahlen


Einerkomplementdarstellung

dezimale Zahl

dezimale Kodierung

binre Kodierung

2 1

2 1

2 + 1

2 + 2
1

000 00

000 01

011 11

100 00

2+1 2

111 10

2 + 1

2+1 1

100 01

111 11
44

Darstellung negativer Zahlen


Einerkomplementdarstellung

Addition wie Rechnung 2+1 1

z.B.: +6 + 4 = +2 = ( +6 + (+11)) 15

Denkt man sich die Zahlen


auf einem Kreis angeordnet,
erkennt man

Modulo-Rechnung
dass aufgrund der zwei

fachen Darstellung der 0


Probleme auftreten knnen
z.B.:
0110 + 6
1011 4
10001 + 1

daher bei berlauf 1 addieren!


45

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Einerkomplementdarstellung - Beispiel 1 (m = 5)

1 0 0 1 1 0 25

1 0 0 1 1 0 25

+ 0 1 0 0 1 1 19

+ 0 1 0 10 1 1 19

1 0 0 1 1 0 25

1 0 0 1 1 0 25

+ 0 1 10 10 1 1 19
0 0 1

1 0 0 1 1 0 25

+ 0 1 10 10 1 1
1 1 0 0 1

19

0 1

+ 0 1 10 10 1 1 19
1 0 0 1

1 0 0 1 1 0 25

+ 0 1 10 10 1 1 19

46

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Einerkomplementdarstellung - Beispiel 2 (m = 5)

0 1 1 0 0 1

25

0 1 1 0 0 1

25

+ 1 0 1 1 0 0 19
1

0 1 1 0 0 1

25

0 1 1 0 0 1

25

+ 1 0 1 1 0 0 19
0 1

+ 1 0 1 1 0 0 19

+ 1 10 1 1 0 0 19

0 1 1 0 0 1 25
+ 11 10 1 1 0 0 19
0 0 1 0 1

0 1 1 0 0 1 25
+ 11 10 1 1 0 0 19
1 0 0 0 1 0 1

1 0 1

0 1 0 1

0 1 1 0 0
+ 11 10 1 1 0
1 0 0 0 1 0
+
10

1 25
0 19
1
1

6
47

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Einerkomplementdarstellung - Beispiel 3 (m = 5)

1 1 1 0 0 1 6

1 1 1 0 0 1 6

+ 1 0 1 1 0 0 19

+ 1 0 1 1 0 0 19

1 1 1 0 0 1 6

1 1 1 0 0 1 6

0 1

+ 1 0 1 1 0 0 19

+ 1 10 1 1 0 0 19

1 1 1 0 0 1 6
+ 11 10 1 1 0 0 19
0 0 1 0 1

1 1 1 0 0 1 6
+ 11 10 1 1 0 0 19
1 1 0 0 1 0 1

1 0 1

0 1 0 1

1 1 1 0 0
+ 11 10 1 1 0
1 1 0 0 1 0
+
10

1 6
0 19
1
1
25
48

Darstellung negativer Zahlen


Addition in Einerkomplementdarstellung - Beispiel 3 (m = 5)

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Eine tatschliche berschreitung des Zahlenbereiches kann durch


einen Plausibilittstest des Vorzeichens erkannt werden, z.B.:
1 0 0 1 1 0 25
+ 1 10 11 1 0 0 19
1 0 1 0 0 1 0
+
1
0 1 0 0 1 1 19
44

Da die Summe zweier negativer Zahlen nicht positiv sein kann, ist bei
der Addition ein wirklicher berlauf entstanden.
Richtig wre also 44, was aber mit m=5 nicht darstellbar ist
49

Darstellung negativer Zahlen


Zweierkomplementdarstellung

Negative Zahlen im Zweierkomplement


durch Ergnzung auf 2+1 dargestellt
Ausgangspunkt: Einerkomplement der Zahl

Berechnung negativer (!) Zahlen: 1 dazu addieren

+27 0 0 0 1 1 0 1 1
Einerkomplementdarst.: 27 1 1 1 0 0 1 0 0
Zweierkomplementdarst.: 27 1 1 1 0 0 1 0 1

1 dazu addieren

Alternativ: die binren Ziffern der positiven Zahl von rechts nach links bis
inkl. zur ersten 1 kopieren und die restlichen Ziffern komplementieren.

+27
27

00011011
11100101

restliche Ziffern
komplementiert

von rechts bis zur ersten 1 kopiert


50

Darstellung negativer Zahlen


Zweierkomplementdarstellung - Ordnungsrelation

Bsp.: m=3

0000

+1 +2 +3 +4 +5 +6 +7 8 7 6 5 4 3 2 1
0010

0001

0100

0011

0110

0101

1000

0111

1010

1001

1100

1011

1110

1101

1111

Ordnungsrelation wie beim Einerkomplement

Ordnung (getrennt) innerhalb der positiven und negativen Zahlen


Die negativen Zahlen kommen hinter den positiven

Die Zahl 0 hat eine eindeutige Darstellung


51

Darstellung negativer Zahlen


Zweierkomplementdarstellung

Positive und negative Zahlen knnen am fhrenden Bit unterschieden


werden.
berlufe bei Rechnungen kann man ignorieren, da die 0 eine
eindeutige Darstellung besitzt
dezimale Zahl

dezimale Kodierung

binre Kodierung

2 1

2 1

2 + 1
1

000 00

000 01

011 11

100 00

2+1 1

111 11

2 + 1

100 01

52

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Zweierkomplementdarstellung - Beispiel 1 (m = 5)

0 1 1 0 0 1

25

0 1 1 0 0 1

25

0 1 1 0 0 1

25

+ 1 0 1 1 10 1 19
0

+ 1 0 1 1 10 1 19
1 1 0

+ 11 10 1 1 10 1 19
0 0 1 1 0

0 1 1 0 0 1

25

0 1 1 0 0 1

25

0 1 1 0 0 1

25

+ 1 0 1 1 10 1 19
1 0

+ 1 10 1 1 10 1 19
0 1 1 0

+ 11 10 1 1 10 1 19
1
X

6
53

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Zweierkomplementdarstellung - Beispiel 2 (m = 5)

1 0 0 1 1 1 25

+ 0 1 0 0 11 1
0

19

1 0 0 1 1 1 25

+ 0 1 10 10 11 1
0 1 0

19

1 0 0 1 1 1 25

+ 0 1 10 10 11 1
1 1 0 1 0

19

1 0 0 1 1 1 25

+ 0 1 0 10 11 1
1 0

19

1 0 0 1 1 1 25

+ 0 1 10 10 11 1
1 0 1 0

19

1 0 0 1 1 1 25

+ 0 1 10 10 11 1

19

6
54

0+0=0
0+1=1
1+0=1
1 + 1 = 10

Darstellung negativer Zahlen


Addition in Zweierkomplementdarstellung - Beispiel 3 (m = 5)

1 1 1 0 1 0 6

1 1 1 0 1 0 6

+ 1 0 1 1 0 1 19

+ 1 0 1 1 0 1 19

1 1 1 0 1 0 6

1 1 1 0 1 0 6

1 1

+ 1 0 1 1 0 1 19

+ 1 10 1 1 0 1 19

1 1 1 0 1 0 6

1 1 1 0 1 0 6

1 1 1

+ 11 10 1 1 0 1 19
0 0 1 1 1

0 1 1 1

+ 11 10 1 1 0 1 19
1 25
X

55

Eine tatschliche berschreitung des Zahlenbereiches kann wieder


durch einen Plausibilittstest des Vorzeichens erkannt werden, z.B.:
1 0 0 1 1 1 25
+ 1 10 11 1 0 1 19

X +20

Da die Summe zweier negativer Zahlen nicht positiv sein kann, ist bei
der Addition ein wirklicher berlauf entstanden.

56

Darstellung negativer Zahlen


Multiplikation in Zweierkomplementdarstellung (1 von 2)

Da die Multiplikation zweier -stelliger Zahlen ein 2-stelliges


Ergebnis produzieren kann, mssen die Faktoren vor Durchfhrung
der Rechenoperation auf 2 Stellen erweitert werden.
Dabei ist zu beachten, dass positive Zahlen mit Nullen, negative mit
Einsern ergnzt werden mssen, um das Vorzeichen nicht zu
zerstren.
Bsp. 1:
(6)10

(3)10

(18)10

(000000)2 (111111)2 = (101110)2


Ergnzende Nullen

Ergnzende Einser

57

Darstellung negativer Zahlen


Multiplikation in Zweierkomplementdarstellung (2 von 2)

Bsp. 2: m=3

1 1 1 1 1 0 0 1

(7)10 mit Vorzeichenerweiterung

0 0 0 0 0 0 0 0

(11111001 0, um eine Stelle nach links verschoben)

1 1 1 1 1 1 0 1
1 1 1 1 1 0 0 1
1 1 1 0 0 1 0 0
1 1 0 0 1 0 0 0
1 0 0 1 0 0 0 0
0 0 1 0 0 0 0 0
0 1 0 0 0 0 0 0

+ 1 0 0 0 0 0 0 0

0 0 0 1 0 1 0 1

(3)10 mit Vorzeichenerweiterung

(11111001 1, um null Stellen nach links verschoben)

(11111001 1, um zwei Stellen nach links verschoben)


(11111001 1, um drei Stellen nach links verschoben)
(11111001 1, um vier Stellen nach links verschoben)

(11111001 1, um fnf Stellen nach links verschoben)

(11111001 1, um sechs Stellen nach links verschoben)

(11111001 1, um sieben Stellen nach links verschoben)


(+21)10 , in 4 Bit nicht darstellbar

Die Bits werden ber den linken Rand hinausgeschoben, berlauf


kann vernachlssigt werden
58

Darstellung negativer Zahlen


Exzessdarstellung

Exzess addieren, sodass Zahlen nicht mehr negativ


Symmetrischer Exzess

Exzess e addieren

Zahlen in Exzessdarstellung sind


um e grer als sie eigentlich sind

Exzess ergibt sich aus kleinster darstellbarer negativer Zahl


0 =
Welcher Zahlenbereich binr darstellbar?

59

Darstellung negativer Zahlen


Exzessdarstellung - Ordnungsrelation

Bsp.: p=4, Exzess = 21 = 23 = 8

8 7 6 5 4 3 2 1

0000

0010

0001

0100

0011

0110

0101

1000

0111

+1 +2 +3 +4 +5 +6 +7
1010

1001

Weiterer symmetrischer Exzess: = 21 1

1100

1011

1110

1101

1111

Bei p=4, Exzess = 23 1 = 7, also (7, , +8) darstellbar

Ordnungserhaltend

kleineren Zahlen auch in Exzessdarstellung kleiner

Zahl 0 hat eine eindeutige Darstellung


60

Darstellung negativer Zahlen


Exzessdarstellung

Nicht-symmetrischer Exzess

+ = 0 + =
0

Exzess k addieren

+
+ + =
+

Zahlen in Exzessdarstellung sind


um k grer als sie eigentlich sind

kleinste darstellbare negative Zahl Exzess


Exzess addieren, sodass Zahlen nicht mehr negativ
Bsp.: = 3, = 4

3 2 1

0001

0011

0000

0010

+1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12

0100

0110

0101

1000

0111

1010

1001

1100

1011

1110

1101

1111

61

Darstellung negativer Zahlen


Exzessdarstellung - Rechenoperationen

Exzess bei arithmetischen Operationen bercksichtigen!

Addition: Exzess von der Summe subtrahieren


Subtraktion: Exzess zur Summe addieren

Bsp:

= 12, = 3, = 4, + = ?
= + = 3 + 12 = 9
= + = 4 + 12 = 16

+ = + + + = + + 2 = 3 + 4 + 2 12 = 25
( + ) = + + = 3 + 4 + 12 = 13
( + ) = + = 9 + 16 12 = 13

62

Darstellung negativer Zahlen


Exzessdarstellung Beispiel

Bsp: +

= 011001, = 110101, = 100101

1.
2.

( + ) = +
+ = 0 +

+
1

0
1
0
1
1

1
1
0
0
0

1
0
1
0
1

0
1
1
1
0

0
0
1
0
0

1
1
0
1
1

12
16

63

Darstellung negativer Zahlen


Exzessdarstellung Beispiel

+
= 011001, = 110101, = 100101

1.
2.

( + ) = +
+ = 0 +

+
1

1
1

0
0

0
1

1
0

0
0

1
1
0
1
1

0
0
0
0
0

0
0
1
1
0

1
1
0
0
0

0
0
1
0
0

1
1

0
4 Problem, da Subtrahend grer

1
1
0
1
1

4
4

64

Darstellung negativer Zahlen


Beispiel 1

Dezimale Zahl 502 umwandeln auf 12 Bit-Kodierung in

Vorzeichen und Betrag


Einerkomplement
Zweierkomplement
Exzessdarstellung mit symmetrischem Exzess = 211 (Spezialfall!)
(502)10 =

( 1 1 1 1 1 0 1 1 0 )2

Vorzeichen & Betrag: ( 1 0 0 1 1 1 1 1 0 1 1 0 )2


Einerkomplement: ( 1 1 1 0 0 0 0 0 1 0 0 1 )2

Zweierkomplement: ( 1 1 1 0 0 0 0 0 1 0 1 0 )2
Exzessdarstellung: ( 0 1 1 0 0 0 0 0 1 0 1 0 )2

mit 0en auffllen und


Vorzeichenbit 1 (weil neg. Zahl)

Bits invertieren
1 dazu zhlen

VZ-Bit invertieren

65

Darstellung negativer Zahlen


Beispiel 2

Bitmuster 1101 interpretieren als Zahl in der Darstellung

Vorzeichen und Betrag

= 1, also negativ, = (101)2 , daher = 5

Einerkomplement

Erste Stelle 1, also negativ, daher Betrag invertieren


= (010)2 , daher = 2

Zweierkomplement

Erste Stelle 1, also negativ, daher Betrag invertieren und 1 addieren


= (011)2 , daher = 3

Exzessdarstellung mit = (101)2

dezimal: = 13, = = 13 5 = 8
binr: = = 1101 2 101 2 = 1000 2 = 8

10

66