Grundlagen der Informatik Teil II Speicherung und Interpretation von Information Seite 1
Speicherung und Interpretation von Information Beginn der Datenverarbeitung => Erfindung von Zahlensystemen Quantifizierung von Objekten Menge der Schafe in einer Herde Anzahl von Getreidesäcken Kontrolle von Beständen durch Vergleich von Zahlenmengen Basis: Abzählen der Finger, also 10er-System Seite 2
Zahlensysteme Römische Zahlen Seite 3
Positionssysteme Babylonier, Chinesen, Mayas, Inder Wert einer Zahl hängt von Form und Position ab Positions- Stellenwertsysteme Einführung der 0 Unser Zahlensystem stammt aus Indien (Arabische Zahlen, weil von Indien über den nahen Osten nach Europa) Seite 4
Positionssysteme Heutige Rechner: Dual- oder Binärsystem Also 0 und 1 Grund: Einfachere Bauteile Nur zwei Zustände 0 => kein Strom 1 => Strom Alle Daten auf Rechnern werden binär kodiert Seite 5
Zahlensysteme Positionssysteme bei natürlichen Zahlen Ein Positionssystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl n nach Potenzen von B zerlegt wird. Seite 6
Zahlensysteme Positionssysteme bei natürlichen Zahlen Beispiel: n (2017 ) 10 3 2 1 0 210010110710 3 1 21011071 2000 107 Seite 7
Aufgaben 1. Wie viele Ziffern stehen im Oktalsystem zur Verfügung? 2. Geben Sie alle Ziffern im Oktalsystem an! 3. Wie viele Ziffern stehen im Hexadezimalsystem zur Verfügung? 4. Geben Sie alle Ziffern des Hexadezimalsystems an! Seite 8
Aufgaben 1. Stellen Sie die Zahl (7508)10 in Summenform dar! 2. Rechnen Sie die folgenden Zahlen in das Dezimalsystem um (315)8 (11001)2 (777)8 Seite 9
Zahlensysteme Positionssysteme bei natürlichen Zahlen Seite 10
Zahlensysteme Positionssysteme bei gebrochenen Zahlen Gebrochene Zahlen lassen sich durch folgende Summenformel beschreiben: Seite 11
Zahlensysteme Positionssysteme bei gebrochenen Zahlen Beispiele: Seite 12
Aufgaben 1. Geben Sie zu folgenden Zahlen die Summenform und die Darstellung im Dezimalsystem an: (1573.4)8, (ABC.CBA)16, (1011.1101)2, (0.4)8 Seite 13
Zahlensysteme Konvertieren zwischen Dual- und Hexadezimalsystem Dualdarstellung der Ziffern des Hexadezimalsystems Seite 14
Zahlensysteme Konvertieren in andere Zahlensysteme Dualsystem => Oktalsystem Bilden von Dualtriaden (Dreiergruppen) Dualsystem => Hexadezimalsystem: Bilden von Dualtetraden (Vierergruppen) Seite 15
Aufgaben 1. Konvertieren Sie die folgenden Zahlen in das Oktalsystem: (011010001000)2, (000001001010)2 2. Konvertieren Sie die folgenden Zahlen in das Hexadezimalsystem: (1011101010111110)2, (1010101110111010)2 Seite 16
Zahlensysteme Konvertieren in andere Zahlensysteme Eine in einem Positionssystem mit der Basis B dargestellte natürliche Zahl n: lässt sich mit Hilfe des Hornerschemas wie folgt darstellen: Mit Hilfe dieser Darstellung können Konvertierungen in das Dezimalsystem einfach durchgeführt werden. Seite 17
Zahlensysteme Konvertieren in andere Zahlensysteme Algorithmus zur Konvertierung eines Zahlensystems in eine anderes: 1. x : n = y Rest z 1. x = y wenn x!= 0 => Schritt 1 wenn x = 0 => Schritt 3 3. Reste z ergeben Ergebniszahl Seite 18
Zahlensysteme Konvertieren in andere Zahlensysteme Beispiel: (30)10 = (?)2 n = 2 x1 = 30 x n y z 30 2 15 0 15 2 7 1 7 2 3 1 3 2 1 1 1 2 0 1 0 => Abbruch z = (11110)2 Seite 19
Aufgaben 1. Berechnen Sie (43)10 = (?)2 1. Berechnen Sie (7294)10 = (?)8 1. Berechnen Sie (87599)10 = (?)16 Seite 20
Rechenoperationen im Dualsystem Addition von Dualzahlen Für die duale Addition gilt allgemein: Seite 21
Aufgaben 1. Berechnen Sie 0101101 + 0001011 + 0010001 + 0001010 Seite 22
Rechenoperationen im Dualsystem Subtraktion und negative Zahlen Negative Zahlen werden durch ihren Betrag mit vorangestelltem Minuszeichen dargestellt: - 1 Diese Darstellung wäre auch rechnerintern denkbar, hat jedoch den Nachteil, dass man eine gesonderte Vorzeichenrechnung durchführen müsste und man ein Rechenwerk benötigt, das sowohl addieren als auch subtrahieren kann. Man kann die Subtraktion auf eine Addition zurückzuführen durch das Verfahren der Komplementbildung. Man unterscheidet zwei Arten der Komplementbildung: B-Komplement und (B-1)-Komplement B-Komplement technisch leichter realisierbar Arbeiten mit B-Komplement (spez. Zweier-Komplement) Seite 23
Rechenoperationen im Dualsystem Subtraktion und negative Zahlen Zuordnung der Bitkombinationen zu positiven und negativen Zahlen Zahlenring für vier Bits, erstes Bit ist Vorzeichenbit Seite 24
Rechenoperationen im Dualsystem Regeln für das Zweier-Komplement 1. Ist das erste Bit = 1 => negative Zahl 2. Jedes einzelne Bit invertieren 3. Addieren von 1 (0001) Beispiel: Zweier-Komplement zu 5: (5)10 = (0101)2 Umkehroperation: Negieren 5: 1010 Negieren -5: 0100 +1: + 0001 +1: + 0001 -------------------------------- -------------------------------- -5: 1011 5: 0101 Seite 25
Aufgaben 1. Berechnen Sie die folgenden Aufgaben mit Hilfe des Zweier-Komplements und vier zur Verfügung stehenden Bits: a) 2 4 b) 6 2 Seite 26
Codes zur Darstellung von Zeichen ASCII-Code ASCII-Code => American Standard for Coded Information Interchange festgelegte Abbildungsvorschrift (Norm) zur binären Kodierung von Zeichen Klein-/Großbuchstaben des lateinischen Alphabets (arabische) Ziffern viele Sonderzeichen Kodierung erfolgt in einem Byte (8 Bits) 256 verschiedene Zeichen Seite 27
Codes zur Darstellung von Zeichen ASCII-Code (Ausschnitt) Seite 28
Codes zur Darstellung von Zeichen ASCII-Code Speicherung von Texten einzelne Bytes (also jeweils ein Zeichen) werden hintereinander abgespeichert, so dass man eine Zeichenkette (String) erhält. Um das Ende der Zeichenkette zu identifizieren, werden (in den Programmiersprachen) unterschiedliche Verfahren verwendet. Die Länge der Zeichenkette wird im ersten bzw. in den ersten Bytes vor der eigentlichen Zeichenkette gespeichert. Beispiel: PASCAL Das Ende der Zeichenkette wird durch ein besonderes, nicht darzustellendes Zeichen gekennzeichnet. So verwendet z.b. die Programmiersprache C/C++ ein 0-Byte (Byte, in dem alle Bits 0 sind) Seite 29
Codes zur Darstellung von Zeichen ASCII-Code Unterscheidung zwischen Ziffern und Zeichen Seite 30
Codes zur Darstellung von Zeichen ASCII-Code Beispiele zum Speichern von Zeichen im ASCII-Code: Seite 31
Aufgabe Übersetzen Sie folgenden Binär-Code mit Hilfe der ASCII-Tabelle: 0101001001101111011000100110 01010111001001110100 Seite 32
Duale Größenangaben Weil Speicherung im Dualsystem kilo => 1024 Seite 33
Datentypen Unterschiedliche Behandlung von Zahlen und Zeichen Klassifikation notwendig Unterschiede: Speicherbedarf u.a. darstellbare Größe von Zahlen Interpretation des Bitmusters Seite 34
Datentypen Seite 35
Datentypen Seite 36
Datentypen Wird versucht, in einem Datentyp einen Wert abzulegen, der nicht in diesen Datentyp passt, so werden einfach die vorne überhängenden Dualziffern abgeschnitten. Beispiel: Seite 37