Beruflich Dokumente
Kultur Dokumente
3: Repräsentierung von
Information in Rechensystemen
3.1 Einführung und Überblick
3.2 Bitfolgen
3.3 Zahlensysteme, Zahlendarstellungen, Arithmetik
3.4 Zeichenketten
3.5 Ein-/Ausgabe
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-1
Quellen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-2
3.1 Einführung und Überblick
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-3
Einführung und Überblick (2)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-4
Einführung und Überblick (3)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-5
3.2 Bitfolgen
Wiederholung (vgl. Kap. 2.4): Für Σ = {0,1} heißen die Elemente der
Menge Σn n-Bit-Wörter oder Binärwörter der Länge n.
• Informationen werden i.d.R. nicht auf der Bit-Ebene betrachtet,
sondern zu größeren Einheiten zusammengefasst, die bei
variabler Länge als Bitfolgen, bei fester Länge auch als
Bitvektoren bezeichnet werden.
• Bezeichnungen für Bitfolgen bestimmter Länge:
Anzahl
Länge n
Bezeichnung versch. Anwendung
in Bit
Wörter
1 Bit (b) 2
3 Triade 23=8 Oktalziffern (vgl. 3.3)
4 Tetrade, Halb-Byte, 24=16 Hexadezimal- und
Nibble (auch: nybble) Dezimalziffern (vgl. 3.3)
8 Byte (B), Oktett 28=256 Zeichen (vgl. 3.4)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-6
Byte
linkes rechtes
Halbbyte Halbbyte
High Low
Nibble Nibble
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-7
Maschinenwörter
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-8
Maschinenwörter (2)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3-9
Bezeichnungen für Maßeinheiten
3 - 11
Logische (Boolesche) Operationen auf Bitvektoren
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 12
Wahrheitstafeln für ODER, UND, NICHT
x y x y x y x y x x
0 0 0 0 0 0 0 1
0 1 1 0 1 0 1 0
1 0 1 1 0 0
1 1 1 1 1 1
0 = falsch (false)
1 = wahr (true)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 13
Durchführung der logischen Operationen
x 1 1 0 1
y 1 0 1 1
AND(x,y) 1 0 0 1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 14
Weitere Operationen auf Bitvektoren
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 15
Bit-Operationen in Programmiersprachen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 16
3.3 Zahlensysteme, Zahlendarstellungen, Arithmetik
⇒ Exaktes Rechnen nur mit beschränkten Zahlenmengen,
oder:
Approximative (angenäherte) Zahlendarstellungen und
Operationen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 17
Überblick
1. Grundlagen Zahlensysteme
2. Konvertierung von Zahlenwerten
3. Darstellung ganzer Zahlen
4. Darstellung von Festkommazahlen
5. Darstellung von Gleitkommazahlen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 18
3.3.1 Zahlensysteme
• Grundlage:
Stellenwertsysteme (polyadische Systeme, B-adische Systeme)
i=0
Dabei ist
─ B die Basis des Zahlensystems B ∈ ℕ, B ≥ 2,
─ bi sind Zahlenkoeffizienten bi∈ {0, ..., B-1} (Ziffern),
─ nur endlich viele bi sind ≠ 0; sei N der größte Index.
─ Beispiel: B=10, n=95. n = 5 * B0 + 9 * B1 = 9 * B1 + 5 * B0
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 19
3.3.1 Zahlensysteme (2)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 20
Wichtige B-adische Zahlensysteme
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 21
Anmerkungen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 22
Darstellung von Brüchen
Komma
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 23
Horner-Schema
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 24
3.3.2 Konvertierung von Zahlenwerten
• Aufgabe
(a) Gegeben sei eine natürliche Zahl n ∈ ℕ zur Ausgangsbasis B'
(hier häufig 10 oder 2).
Bestimme die Zahlendarstellung von n zur Zielbasis B
(hier häufig 2 oder 10).
(b) analog für Brüche
• Unterscheidung
─ Rechnen im Ausgangssystem
─ Rechnen im Zielsystem
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 25
Division durch fallende Potenzen der Zielbasis
• Rechnen im Ausgangssystem
• Grundlage:
N
n= ΣbB = i
i
bN*BN + bN-1*BN-1 + ... + b2*B2 + b1*B + b0
i=0
• Verfahren
(1) Bestimme höchste Potenz N mit BN ≤ n
(2) Bestimme Koeff. bN = ⌊ n / BN ⌋ (⌊x⌋:= größte ganze Zahl ≤ x )
(3) Bilde Rest RN-1 := n - bN*BN
(4) Betrachte analog die nächst kleinere Potenz i (N-1) und bestimme
den Koeff. bi =
⌊Ri / Bi⌋
(5) Setze Ri-1 := Ri - bi*Bi
(6) Wiederhole (4) und (5) bis i=0
(7) (bN bN-1 ... b2 b1 b0)B ist die Darstellung von n zur Basis B.
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 26
Beispiel 1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 27
Beispiel 2
Ri / Bi bi
n=122 52=25 b2= 4
54 = 625
53 = 125
52 = 25
51 = 5
50 = 1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 28
Beispiel 2
Ri / Bi bi
n=122 52=25 b2= 4
54 = 625
53 = 125
52 = 25
51 = 5
50 = 1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 29
Horner-Schema für natürliche Zahlen (a)
• Grundlage:
N
n= ΣbB i
i
= (( ... (bN * B + bN-1 ) * B + ... + b2 ) * B + b1 ) * B + b0
i=0
(a) Rechnen im Ausgangssystem
• Verfahren: schrittweise Division von n∈ ℕ durch die Zielbasis B
N+1 n / BN+1 0 bN
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 30
Beispiel 1
1 /2 0 1
12210 = 11110102
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 31
Beispiel 2
122 /5 24 2
24 /5 4 4
4 /5 0 4
12210 = 4425
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 32
Horner-Schema für natürliche Zahlen (b)
+ + + +
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 33
Beispiel 1
Ziffern 1 1 1 1 0 1 0
11110102 = 12210
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 34
Beispiel 2
Ziffern 2 10 12
+ - 2*16 42*16
2 42 684
2AC16 = 68410
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 35
Konvertierung gebrochener Zahlen
• Weitere Probleme
─ Anzahl der notwendigen Schritte nicht von vornherein bekannt
─ Ein gegebener endlicher Bruch muss zur Zielbasis nicht endlich
sein.
Beispiel: 1/3 = 3-1 = 0,13 = 0,3333333…10
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 36
Horner-Schema für Brüche (a)
• Grundlage:
-1
z= ΣbB i
i
= (( ... (b-M / B + b-M+1 ) / B + ... + b-2 ) / B + b-1 ) / B
i=-M
(a) Rechnen im Ausgangssystem
• Verfahren: schrittweise Multiplikation von z∈ℚ mit der Zielbasis B
Schritt Mult. Produkt (Bruchteil) Ganzteil bi
1 z*B (...(b-M/B + b-M+1)/B + ... + b-3)/B + b-2)/B b-1
2 (z*B)*B (...(b-M/B + b-M+1)/B + ... + b-3)/B b-2
... ... ... ...
M-1 z * BM-1 b-M/B b-M+1
M z * BM 0 b-M
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 37
Beispiel
0,2110 = 0,001101...2
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 38
Horner-Schema für Brüche (b)
• Verfahren:
─ Darstellen aller Ziffern und der Ausgangsbasis B' im Zielsystem
─ Auswerten des Horner-Schemas von "innen" nach "außen":
(1) kleinstwertige Ziffer durch die Ausgangsbasis in deren Zieldarstellung
dividieren
(2) Ergebnis zur nächsthöherwertigen Stelle addieren
(3) Ergebnis aus (2) wieder durch Ausgangsbasis in deren Zieldarstellung
dividieren
(4) wiederholen (2) und (3), bis alle Stellen verarbeitet sind
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 39
Beispiel
Ziffern 1 1 0 1 0 ,
1/2= 1,5/2= 0,75/2= 1,375/2= 0,6875/2=
+ -
0,5 0,75 0,375 0,6875 0,34375
1 1,5 0,75 1,375 0,6875 0,34375
0,010112 = 0,3437510
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 40
Schnelle Konvertierung bei "verwandten" Basen
11110102 = 111
10102 = 7A16
2BC16 = 0010
1011
11002 = 001
010
111
1002 = 12748
1101001,110112 = 001
101
001,110
1102 = 151,668
1101001,110112 = 0110
1001,1101
10002 = 69,D816
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 41
Arithmetik in Stellenwertsystemen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 42
3.3.3 Darstellung ganzer Zahlen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 43
Bit-Positionen in Maschinenwörtern
Wortbreite n
n-1 0
MSB LSB
Most Significant Bit Least Significant Bit
höchstwertiges Bit (2n-1) niederwertigstes Bit (20)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 44
Byte Ordering
höchstwertiges Byte
höchstwertiges Byte
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 45
Vorzeichenlose ganze Zahlen
• Verwendung
─ für einen Bereich natürlicher Zahlen ℕ einschl. 0
─ sowie für Adressen von Speicherwörtern
• Programmiersprachenebene: unsigned integer
• Nutzung des gesamten Maschinenworts zur Darstellung der Zahl
in Dualdarstellung
Wortlänge C
Wertebereich
[bit] (typisch)
n 0 ... 2n - 1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 46
Vorzeichenbehaftete ganze Zahlen
Überblick:
• Verwendung für einen Bereich ganzer Zahlen ℤ
• Programmiersprachenebene: signed integer
• Alternativen zur Darstellung
1. Vorzeichen/Betrags-Darstellung
2. Excess-Darstellung
3. Komplementdarstellung
B-1 - Komplement
B - Komplement
• Die verschiedenen Alternativen besitzen jeweils Vor- und
Nachteile.
• In Hinblick auf die technische Realisierung der Arithmetik in
einem Prozessor (Arithmetisch-Logische Einheit, vgl. Kap. 6)
besitzt die Komplementdarstellung die meisten Vorteile.
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 47
Vorzeichen/Betrags-Darstellung
─ n=8
0 0 0 0 1 0 1 0 = 1010
1 0 0 0 1 0 1 0 = -1010
Vorzeichen-
stelle Betrag
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 48
Vorzeichen/Betrags-Darstellung (2)
• Konsequenzen
─ Zahlenbereich - (2n-1 - 1) ... (2n-1 - 1)
─ Zwei Darstellungen der "Null" (00...0 und 10...0, genannt 0 und -0)
─ Unterschiedliche Behandlung von Subtraktion und Addition,
Fallunterscheidungen
─ relativ hoher Hardware-Aufwand wäre notwendig
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 49
Excess-Darstellung
• Anwendung:
─ Maschinenwortlänge n
─ -2n-1 ≤ z ≤ 2n-1-1, k = 2n-1
⇒ 0 ≤ z' ≤ 2n-1
• Beispiel
─ n = 8, k = 2n-1 = 128
─ -128 ≤ z ≤ 127
─ z' = z+128 ist die Excess-128-Darstellung von z
⇒ 0 ≤ z' ≤ 255
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 50
Excess-Darstellung (2)
• Vorteile/Nachteile
─ Inkrementieren/Dekrementieren wie bei vorzeichenlosen ganzen
Zahlen
─ Ordnungsbeziehung bleibt erhalten:
y' ≤ z' ⇒ y ≤ z
• Anwendung
─ Exponentendarstellung von Gleitpunktzahlen (vgl. 3.3.5)
─ Analog/Digital- und Digital/Analog-Wandler (vgl. 3.5)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 51
Komplemente
Beispiel für Wortlänge n=2:
Vorbemerkungen 37 Zahl
63 Komplement
100 Summe
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 52
Komplement-Bildung
Bn z z heißt (B-1)-Komplement
(B-1)
• Beispiel
n=6 Stellen
z = 00391010
stellenweise Ergänzung zu B-1=9
(9)
z = 99608910
+1
(10)
z = (9)z +1
(10)
z = 99609010
z + (10)z = 106
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 54
Beispiel 2
• Beispiel
n=8 Stellen
z = 001110102
(1)
z = 110001012 stellenweise Invertierung
+ 12
(2)
z = 110001102
(2)
z = (1)z +1
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 55
Einer-Komplement-Darstellung ganzer Zahlen
• Vorteil:
─ symmetrischer Bereich dargestellter Zahlen
• Nachteile:
─ doppelte Darstellung der Null (00...0 und 11...1)
─ Korrektur bei Addition/Subtraktion erforderlich, z.B.
(1)
y+(1)z = Bn-y-1 + Bn-z-1 = Bn + Bn-((y+z)-1) -1 = (1)(y+z) -1 ≠ (1)(y+z)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 56
Zweier-Komplement-Darstellung ganzer Zahlen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 57
Verdeutlichung
• Zahlenkreis (n=4)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 58
Wertebereiche für ganze Zahlen
• Betrachtung
─ n-Bit Maschinenwörter
─ Zweier-Komplement-Darstellung ganzer Zahlen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 59
https://xkcd.com/571/ zum Zweierkomplement
• „Can‘t sleep“
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 60
Arithmetik ganzer Zahlen
• Beispiele (n=4):
0011 = 310 0111 = 710 1101 = -310
+ 0010 = 210 + 1010 = -610 + 1110 = -210
---- ---- ----
0101 = 510 (1)0001 = 110 (1)1011 = -510
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 61
Erkennung von Überlauf
ungleiche ungleiche
kein
Überträge Überträge
Fehler !
= Fehler ! = Fehler !
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 62
Arithmetik ganzer Zahlen (2)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 63
3.3.4 Darstellung von Festkommazahlen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 64
Probleme
• Rundungsfehler
─ Sorgfältige Wahl der Ausführungsreihenfolge und
Genauigkeit von Zwischenergebnissen ist notwendig
─ Beispiel:
2 Vorkommastellen, 1 Nachkommastelle
(00,2 * 00,3) * 20,0 = 00,0 * 20,0 = 00,0
00,2 * (00,3 * 20,0) = 00,2 * 06,0 = 01,2 !!!
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 65
Probleme
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 66
BCD-Darstellung
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 67
BCD-Arithmetik
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 68
Beispiel
Vorzeichen-
bn bn-1 ... b4 b3 b2 b1 b0 VZ Nibble
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 69
3.3.5 Darstellung von Gleitkommazahlen
• Motivation
─ Numerische Verfahren zur Lösung wiss.-techn. Probleme verlangen
häufig einen sehr großen Bereich darstellbarer reeller Zahlen.
─ Beispiele:
● Avogadro-Konstante: NA = 6,02214076 * 1023 mol-1 (Teilchen pro Mol)
●
Elementarladung: e = 1,602176634 * 10-19 C
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 70
Gleitkommadarstellung
─ Die Darstellung ist eindeutig, wenn die Mantisse normalisiert ist, d.h.
1/B ≤ |m| < 1 oder 1 ≤ |m| < B für m≠0 gilt (Konventionssache).
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 71
Gleitkommadarstellung (2)
• Beispiel:
- 12,2510 = - 1100,012 = - 0,1100012 * 24 = - 1,100012 * 23
s ch m
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 72
Gleitpunktarithmetik
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 73
Gleitpunktformat nach IEEE 754
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 74
Besonderheiten
ch m Wert Bemerkung
0 0 (-1)s * 0 0
nicht-normalisiert, Zahlen mit Betrag
0 0 (-1)s * 2 -k+1* (0.m)
kleiner als normalisiert darstellbar
0 ch 2k+1 m beliebig (-1)s * 2ch-k* (1.m) Normalfall
ch = 2k+1 0 (-1)s * , INF, -INF
Not a Number: unbestimmter oder
ch = 2k+1 0 NaN
unzulässiger Wert
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 75
Beispiel 1
1 1 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1,
hidden Bit
Maschinenwort: 0xC1440000
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 76
Beispiel 2
0 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 0 1 0 1 0 1 0 1 0 0 0
1,
hidden Bit
mühsam umwandeln,
Taschenrechner
• e = ch - 127 = 205 – 127 = 78
• x = (-1)0 * 1,111111100001…. 2 * 278 = 6,022 * 1023 (Avogadro-Konstante)
• Einfacher / Abschätzung:
x ∈ [(1-2-7)* 279 , 279] = [5,997 * 1023 , 6,0446 * 1023]
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 77
Anmerkungen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 78
3.4 Zeichenketten
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 79
3.4 Zeichenketten (2)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 80
Operationen auf Zeichenketten
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 81
3.4.1 CCITT-Code No. 2
• CCITT:
Comité Consultatif International Telegraphique et Telephonique,
jetzt International Telecommunications Union (ITU) genannt
• von D. Murray ca. 1901 entwickelter Fernschreibcode
• 5-Bit Code (25=32 Codewörter)
(entsprechend 5 Spuren eines Lochstreifens plus Taktspur)
• Steuerzeichen zur Umschaltung zwischen Buchstabenmodus und
Ziffern/Sonderzeichen-Modus verdoppelt den Vorrat an
Codewörtern
• Code optimiert zur Minimierung des mechanischen Verschleißes
─ Häufig benutzte Buchstaben wie E und T bewegen wenige Teile
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 82
Code-Tabelle CCITT-2
Code- Dual- Buch- Ziffer Code- Dual- Buch- Ziffer WAY Who Are You?
Nr. code stabe Nr. code stabe (Wer da?)
1 11000 A - 17 11101 Q 1 bell Klingel
2 10011 B ? 18 01010 R 4 CR Carriage Return
3 01110 C : 19 10100 S ' (Wagenrücklauf)
4 10010 D WAY 20 00001 T 5 LF Line Feed
5 10000 E 3 21 11100 U 7 (Zeilenvorschub)
6 10110 F (NA) 22 01111 V = LS Letter Shift
7 01011 G (NA) 23 11001 W 2 (Buchstabenumsch.)
8 00101 H (NA) 24 10111 X / FS Figure Shift
9 01100 I 8 25 10101 Y 6 (Ziffernumschaltung)
10 11010 J bell 26 10001 Z + space Zwischenraum
11 11110 K ( 27 00010 CR (NA) Not Assigned (nicht
12 01001 L ) 28 01000 LF definiert, reserviert)
13 00111 M . 29 11111 LS (unused) nicht benutzt
14 00110 N , 30 11011 FS
15 00011 O 9 31 00100 space
16 01101 P 0 32 00000 (unused)
F
Taktspur
Q: Wikipedia
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 83
3.4.2 ASCII-Code
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 84
Code-Tabelle US-ASCII
HEX ASCII HEX ASCII HEX ASCII HEX ASCII HEX ASCII HEX ASCII HEX ASCII HEX ASCII
00 NUL 10 DLE 20 SP 30 0 40 @ 50 P 60 ` 70 p
01 SOH 11 DC1 21 ! 31 1 41 A 51 Q 61 a 71 q
02 STX 12 DC2 22 " 32 2 42 B 52 R 62 b 72 r
03 ETX 13 DC3 23 # 33 3 43 C 53 S 63 c 73 s
04 EOT 14 DC4 24 $ 34 4 44 D 54 T 64 d 74 t
05 ENQ 15 NAK 25 % 35 5 45 E 55 U 65 e 75 u
06 ACK 16 SYN 26 & 36 6 46 F 56 V 66 f 76 v
07 BEL 17 ETB 27 ' 37 7 47 G 57 W 67 g 77 w
08 BS 18 CAN 28 ( 38 8 48 H 58 X 68 h 78 x
09 HT 19 EM 29 ) 39 9 49 I 59 Y 69 i 79 y
0A LF 1A SUB 2A * 3A : 4A J 5A Z 6A j 7A z
0B VT 1B ESC 2B + 3B ; 4B K 5B [ 6B k 7B {
0C FF 1C FS 2C , 3C < 4C L 5C \ 6C l 7C |
0D CR 1D GS 2D - 3D = 4D M 5D ] 6D m 7D }
0E SO 1E RS 2E . 3E > 4E N 5E ^ 6E n 7E ~
0F SI 1F US 2F / 3F ? 4F O 5F _ 6F o 7F DEL
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 85
3.4.2 ASCII-Code
• Ordnung:
─ Problematisch bei Umlauten
Bei Induzierung der lexikographischen Ordnung aus der Ordnung der
Bitmuster (etwa: A < B, weil 01000001 < 01000010) werden die Umlaute
hinter den letzten Buchstaben sortiert: z < ä statt a < ä < b.
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 86
Paritätsprüfung
• Unterscheidung ASCII-Code-Zeichen
─ gerade Parität (even parity):
P=0, wenn Anzahl der "1" im Code bereits gerade ist,
P=1 sonst (damit insgesamt wieder gerade Anzahl)
─ ungerade Parität (odd parity): umgekehrt
• Paritätsprüfung (parity check)
─ Erkennung von 1-Bit-Übertragungsfehlern (alle ungeraden
Anzahlen)
─ Berechnetes Parity-Bit wird mit übertragen
─ Empfänger berechnet seinerseits das Parity-Bit und vergleicht es
mit dem empfangenen: bei Ungleichheit Fehler erkannt.
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 87
3.4.3 Erweiterter ASCII-Code (PC8)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 88
Code-Tabelle PC8
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 89
Beispiel: Fenster-Technik mit Text-Terminals
Rahmen gebildet
aus speziellen
Zeichen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 90
3.4.4 EBCDIC
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 91
3.4.5 ISO 8859
Quelle:
http://czyborra.com
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 92
ISO 8859 (2)
Quelle:
Wikipedia.de
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 93
ISO 8859 (3)
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 94
3.4.6 Unicode
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 95
3.4.6 Unicode
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 96
Unicode-Zeichen
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 97
Zeichenbereiche
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 98
Zeichenrepräsentierung
• Der Unicode-Standard sieht verschiedene Codierungen des
Zeichensatzes vor, entsprechend den ISO 10646
Transformationsformaten UTF-8 und UTF-16, die ohne
Informationsverlust ineinander überführt werden können.
• UTF-16:
─ Speicherung jedes Unicode-Zeichens der BMP in 2 Bytes (feste
Codelänge) mit einem Inhalt entsprechend der Zeichennummer
─ Beispiel: U+0041 ⇒ 004116 Demo!
─ Byte Order Mark (BOM) U+FEFF = erstes Zeichen einer UTF-16 Datei
Zur automatischen Erkennung Little-Endian / Big-Endian, vgl. Kap. 3.3.3
• UTF-8 (u.a. RFC 3629):
─ Variable Codelänge: 1, 2, …, 6 Bytes pro Zeichen!
─ Erlaubt kompaktere Darstellungen (vgl. Kap. 4).
─ Abwärtskompatibel zu US-ASCII: Die Codierung für den Zeichen-
bereich U+0000 bis U+007F entspricht genau dem ASCII-Code!
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 99
UTF-8
• Folgebyte-Indikator
UTF-8 Codierung:
Unicode-Zeichenbereich UTF-8 Codierung (Bytefolge)
U+00000000 - U+0000007F 0xxxxxxx2 Anzahl Folgebytes
U+00000080 - U+000007FF 110xxxxx2 , 10xxxxxx2
U+00000800 - U+0000FFFF 1110xxxx2 , 10xxxxxx2 , 10xxxxxx2
U+00010000 - U+001FFFFF 11110xxx2 , (10xxxxxx2)3 (3 Folgebytes)
U+00200000 - U+03FFFFFF 111110xx2 , (10xxxxxx2)4 (4 Folgebytes)
U+04000000 - U+7FFFFFFF 1111110x2 , (10xxxxxx2)5 (5 Folgebytes)
─ Die Stellen x…x werden von rechts mit den Bits des Unicode-Werts befüllt
─ 1 bis 6 Oktetts pro Unicode-Zeichen (31 Bit), niemals FE 16 oder FF16.
─ Stets klar, ob Folgebyte vorliegt und wie viele Folgebytes notwendig!
• Beispiel:
─ A U+41 → 010000012 = 4116 unverändert (ASCII !)
─ Ä U+C4 → (110000112, 100001002) = (C316, 8416)
─ U+1D11E → (F016, 9D16, 8416, 9E16)
Demo!
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 100
Unicode: Neue Qualitäten
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 101
Unicode im Alltag
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 102
3.5 Ein- / Ausgabe
Steuern Rechnen
Eingeben Ausgeben
Speichern
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 103
Parallele und sequenzielle Übertragung
1 1 0 1 1 0 1 1
• Sequenzielle Übertragung:
1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1
1 1 0
1 1 1 1 1 0
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 104
Analoge und digitale Signale
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 105
Rasterung/Abtastung
Zeit
• Anmerkung: Die Bedingungen, die erfüllt sein müssen, damit die Abtastung zu
keinem Informationsverlust führt, werden durch das sogenannte Abtasttheorem
von Shannon definiert (vgl. Vorlesung Informations- und Systemtheorie).
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 106
Rasterung/Abtastung (2)
Original Rasterung
in Wirklichkeit auch
schon (feiner) gerastert
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 107
Quantelung
W O
SW SO
S
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 108
Quantelung (2)
Original Quantelung
in Wirklichkeit auch auf 4 Grauwerte
schon gequantelt
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 109
Quantelung (3)
• Beispiel:
24.11.2022 © 2002, 2022 H. Werntges, FB Design Informatik Medien (DCSM), Hochschule RheinMain 3 - 110