Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales Binäre Repräsentation von Information Bits und Bytes Binärzahlen ASCII Ganze Zahlen.

Ähnliche Präsentationen


Präsentation zum Thema: "Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales Binäre Repräsentation von Information Bits und Bytes Binärzahlen ASCII Ganze Zahlen."—  Präsentation transkript:

1 Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales Binäre Repräsentation von Information Bits und Bytes Binärzahlen ASCII Ganze Zahlen Rationale Zahlen Gleitkommazahlen

2 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 2Motivation Prinzip 8 der von-Neumann Architektur: (8)Alle Daten werden binär kodiert

3 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 3 Repräsentation von Information: Bits und Bitfolgen Bits kleinstmögliche Informationseinheit, die zwei Möglichkeiten zulässt ja oder nein, hell oder dunkel, gross oder klein Zur Darstellung reicht ein Code mit zwei Zeichen, meist 0 und 1 technisch realisiert durch elektrische Ladung (0 = ungeladen, 1 = geladen), oder elektrische Spannungen (0 = 0 Volt, 1 = 5 Volt) Bitfolgen Für Informationen mit mehr als zwei Möglichkeiten Bei drei oder vier Möglichkeiten benötigt man 2 Bits, für 5 bis 8 Möglichkeiten benötigt man 3 Bits usw. Beispiel: Himmelsrichtungen 00 = Süd, 01 = West, 10 = Nord, 11 = Ost Bitfolgen lassen sich als Zahlen im Dualsystem interpretieren Es gilt: Es gibt genau 2 N Bitfolgen der Länge N

4 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 4Binärziffern 20=120=1 21=221=2 22=422=4 23=823=8 2 4 = = = = = = =1024

5 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 5 Binärdarstellung positiver ganzer Zahlen Will man nur positive Zahlen darstellen, so kann man mit N Bits 2 N Zahlen, d.h. den Bereich der Zahlen von 0 bis 2 N - 1 darstellen Beispiel: N = 3: 000=0 001=1 010=2 011=3 100=4 101=5 110=6 111=7 Beispiel: N = 4: 0000=0 0001=1 0010=2 0011=3 0100=4 0101=5 0110=6 0111=7 1000=8 1001=9 1010= = = = = =15

6 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 6 Binärdarstellung positiver ganzer Zahlen Will man nur positive Zahlen darstellen, so kann man mit N Bits 2 N Zahlen, d.h. den Bereich der Zahlen von 0 bis 2 N - 1 darstellen Die einzelnen Ziffern einer n-stelligen Zahl sind die Koeffizienten der Potenzen der Basis: Beispiel: Dezimalzahlen 4711 = 4 * * * * * * * * 1 Beispiel: Binärzahlen = 1 * * * * * * * * 1= Darstellung: Die tiefgestellt Zahl gibt die Basis der Zahl an

7 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 7 Verfahren zur Umwandlung in Binärdarstellung Bei fortgesetztem Dividieren durch 2 ergeben die Reste nacheinander die Ziffern der Darstellung der ursprünglichen Zahl z im Zweiersystem Beispiel: Die Umwandlung der Dezimalzahl 2001 ins Binärsystem ergibt zz div 2z mod Analoges gilt für die Umwandlung in andere Zahlensysteme, z.B. Umwandlung ins Oktalsystem: fortlaufendes Dividieren durch 8 Umwandlung ins Haxadezimalsystem: fortlaufendes Dividieren durch 16

8 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 8 Umwandlung in das Binärsystem: Hintergrund Bei der Division einer natürlichen Zahl durch eine andere natürliche Zahl d, so erhalten wir einen Quotienten q und einen Rest r: z = q * d + r (wobei 0 < r < d) Sei div die ganzzahlige Division und mod die Berechnung des Rest der Division (Beispiel: 35 div 8 = 4 und 35 mod 8 = 3) Dann gilt z = (z div d) * d + (z mod d) Dies nutzen wir aus für die Umwandlung einer natürlichen Zahl z in die entsprechende Binärzahl b n b n-1...b 1 b o z = (b n b n-1...b 1 b o ) 2 = b n * 2 n + b n-1 * 2 n b 1 * b o = (b n * 2 n-1 + b n-1 * 2 n b 1 * 2 0 )* 2 + b o = (b n b n-1...b 1 ) 2 * 2 + b o Somit ist die letzte Ziffer b 0 genau der Rest, der beim Dividieren durch 2 entsteht (z mod 2) und die restlichen Ziffern b n b n-1...b 1 muss sich als Binärdarstellung von z div 2 ergeben.

9 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 9 Oktal- und Hexadezimalsystem Neben dem Dezimal- und Binärsystem sind in der Informatik in Gebrauch Oktalsystem - Zahlen zur Basis 8 Verwendung der Ziffern 0 bis 7 Die einzelnen Ziffern einer mehrstelligen Oktalzahl sind Koeffizienten der Potenzen zur Basis 8 Beispiel = 4 * * * * 8 0 = (2505) 10 Hexadezimalsystem - Zahlen zur Basis 16 Verwendung der Ziffern 0 bis 9 und der Buchstaben A bis F (für 10 bis 15) Die einzelnen Ziffern einer mehrstelligen Hexadezimalzahl sind Koeffizienten der Potenzen zur Basis 16 Beispiel2C73 16 = 2 * * * * 16 0 = (11379) 10

10 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 10 Umrechnung Binär- in Hexadezimal- und Oktalzahlen Die Bedeutung von Oktal- und Hexadezimalsystem liegt darin, dass man zwischen Binärsystem und Oktal- bzw. Hexadezimalsystem einfach umrechnen kann Der einfachen Lesbarkeit wegen gruppiert man grosse Bitfolgen in 4er-Gruppen und erhält die Hexadezimaldarstellung Jeder Gruppe gibt man einen Namen unter Verwendung der Ziffern 1 bis 9 und der Buchstaben A bis F: 0000 = = = = C 0001 = 10101= = = D 0010 = = = A1110 = E 0011 = = = B1111 = F Die Bitfolge lässt sich dann kompakter schreiben als 4 F C 6 C 16 Analog kann man Dreiergruppen von Binärziffern zusammenfassen und erhält daraus eine Oktalzahl

11 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 11Übungsaufgaben Wandeln Sie folgende Binärzahlen in Dezimalzahlen um 101 = = = = = 195 Wandeln Sie folgende Dezimalzahlen in Binärzahlen, Oktalzahlen (Basis 8) und Hexadezimalzahlen (Basis 16) um 101 = =145 = = =377 = FF 167 = =247 =A = =10746 =11E6 256 = = 400 =100

12 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 12 Zeichendarstellung: ASCII Binärzahlen werden zur Informationsspeicherung verwendet. Information, die man mit der Tastatur eintippt wird als Text (Zeichenfolge) interpretiert. Jedes Zeichen wird als Bitfolge codiert Die ASCII-Codierung benutzt 7 Bits eines Byte (2 7 = 128 Möglichkeiten) zur Darstellung eines Zeichens Prinzipien: die Kleinbuchstaben sind in der alphabetischen Reihenfolgen durchnumeriert (ASCII 97 = a,... ASCII 122 = z) die Grossbuchstaben sind in der alphabetischen Reihenfolgen durchnumeriert (ASCII 65 = A,... ASCII 90 = Z) die Ziffern 0 bis 9 stehen in der natürlich Reihenfolge (ASCII 48 = 0,... ASCII 57 = 9) Die Zeichen ASCII 0 bis ASCII 31 sowie ASCII 127 dienen Steuerungszwecken. Eingabe über Tastatur durch Drücken der Steuerungstaste (Strg bzw Ctrl) ASCII 1 = Ctrl-A,..., ASCII 26 = Ctrl-Z ASCII (American Standard Code for Information Exchange)

13 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 13ASCII-Tabelle

14 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 14 Informationsdarstellung: Text - ASCII Fortlaufenden Text kodiert man einfach durch aneinanderreihen der Codes einzelner Zeichen incl. des Codes für Lehrzeichen (Zeichenkette = string) Beispiel: Knut liest wird kodiert als ASCII-Code Bitfolge Hexcode 4B 6E C Bemerkung: Wenn Sie jemand auffordert, ihm ein Dokument in ASCII zu schicken, so meint er in der Regel: Schicken Sie mir den reinen Text ohne Formatanweisungen.

15 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 15ASCII-Erweiterungen Das achte Bit eines Byte wurde bei ASCII früher als Kontrollbit für die Datenübertragung genutzt: Es wurde auf 0 oder 1 gesetzt, damit die Anzahl der 1en immer gerade war (even parity). Trat bei der Datenübertragung ein kleiner Fehler auf (1 Bit gedreht), wurde dies erkannt Wegen verbesserter Qualität der Datenübertragung wurde das Kontrollbit überflüssig. Man konnte es für die Kodierung verwenden, so dass nun 2 8 = 256 Zeichen zur Verfügung stehen Die International Standardization Organization (ISO) hat verschiedene ASCII-Erweiterungen normiert. In Europa ist die ASCII-Erweiterung Latin-1 nützlich, die z.B. sprachspezifische Zeichen enthält, wie z.B. Umlaute (ä, ö, ü, Ä, Ö, Ü) Probleme: Einige Rechner (z.B. unter UNIX-Betriebssystem) verwenden nur die genormten ASCII-Zeichen 0 bis 127 (Umlaute nicht so einfach darstellbar); andere haben eigene Erweiterungen. Beim Austausch von Daten, s usw. müssen Sender und Empfänger die gleiche ASCII-Erweiterung verwenden (Lösung: Umcodierung einer Datei in ASCII mittels der Programme uuencode und Dekodierung mittels uudecode)

16 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 16Unicode Wegen der Problematik der ASCII-Erweiterungen entstand in den letzten Jahren ein neuer Standard: Unicode Ziel: sämtliche relevanten Zeichen aus den unterschiedlichen Kulturkreisen in universellem Code zusammenfassen Unicode verwendet 16-Bit-Codierung (maximal 2 16 = Zeichen) Die ersten 128 Zeichen sind identisch mit ASCII die nächsten 128 Zeichen sind identisch mit ISO-Latin 1 Programmiersprachen lassen meist keine Zeichen aus ASCII- Erweiterungen zu (Ausnahme: Java)

17 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 17 Bearbeitung binär codierter Information ASCII, Unicode für Beschreibung von Daten nicht für Berechnung geeignet Datentypen in Programmiersprachen werden speziell repräsentiert, damit man mit ihnen rechnen kann Ganze Zahlen (Integer): Zweierkomplement Gebrochene Zahlen Gleitkommazahlen Boolesche Werte

18 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 18 Arithmetische Operationen auf Binärzahlen: Addition Zwei aus mehreren Ziffern bestehende Binärzahlen werden addiert, wie man es von Dezimalzahlen gewohnt ist Ein an einer Ziffernposition entstehender Übertrag wird zur hächsthöheren Ziffernposition addiert Ein Übertrag entsteht, wenn bei der Addition zweier Ziffern der Wert grösser oder gleich dem Basiswert ist Bei Binärzahlen entsteht ein Übertrag schon bei 1+1 BeispielBinärOktalHexadezimalDezimal C A A F = D 7 5 D Problem: Wenn durch Übertrag die reservierten Stellen für die Zahl nicht ausreichen, kann es zu Fehlern kommen!

19 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 19 Darstellung ganzer Zahlen Als ganze Zahlen bereichnet man die Vereinigung der natürlichen Zahlen und der negativen Zahlen Für positive ganze Zahlen, kann man die Binärdarstellung verwenden Kommen negative Zahlen hinzu, müssen wir ein Bit für das Vorzeichen verwenden Erste Überlegung: Vorzeichendarstellung Nehme gewöhnliche Binärzahlen und füge ein Bit für Vorzeichen hinzu Beispiel: Bei 4 Ziffern kann man den Bereich von -7 bis +7 darstellen Diese Darstellung hat eine Reihe von Nachteilen Die Null wird durch zwei Bitfolgen für +0 und -0 dargestellt: 0000 und 1000 Addition muss berücksichtigen, welches Bit das Vorzeichen darstellt Alternative: Zweierkomplementdarstellung

20 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 20 Die Zweierkomplementdarstellung für ganze Zahlen Zahlenbereich bei N Bits: -2 N-1 bis +2 N-1 -1 Bei der Zweikomplementdarstellung wird das erste Bit negiert betrachtet wird. Die restlichen Bits behalten ihre Bedeutung. Die Ziffernfolge b n b n-1...b 1 b 0 bezeichnet also folgende Zahl z = -b n * 2 n + b n-1 * 2 n b 1 * b 0 Wir betrachten dies am Beispiel mit 4 Bits (Darstellung 16 ganzer Zahlen) 1000 = = = = = = = = = = = = = = = = 7 Prinzip: Seien N Bits für die Zahlendarstellung zur Verfügung Zähle von 0 aufwärts bis obere Grenze (2 N-1 -1) anschliessend wird an der unteren Grenze (-2 N-1 ) fortgesetzt bis -1

21 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 21Zweierkomplementdarstellung

22 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 22 Zahlenbereiche für ganze Zahlen in Programmiersprachen Je nach dem, wieviel Bit für die Zahlendarstellung zur Verfügung gestellt wird, können in den einzelnen Programmiersprachen unterschiedliche Zahlenbereiche genutzt werden BereichBitsDatentypen in DelphiJava BitShortintbyte BitIntegershort BitLongintint Bitlong BitByte BitWord

23 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 23 Gebrochene (rationale) Zahlen Zwischen je zwei Zahlen gibt es unendlich viele rationale Zahlen Eine feste Anzahl von N Bits reicht also nicht aus, um alle rationalen Zahlen eines Intervalls exakt darzustellen Rationale Zahlen werden als Kommazahlen mit einer festen Anzahl n von Stellen vor dem Komma und m Stellen nach dem Komma repräsentiert Die Ziffernfolge b n b n-1... b 1 b 0, c 1 c 2... c m wobei b i,c i, in {0,1} steht dabei für den Zahlenwert z = b n * 2 n +... b 1 * b 0 * c 1 * c 2 * c m * 2 -m Beispiele: gebrochene Binärzahlgebrochene Dezimalzahl

24 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 24 Gleitpunktdarstellung für Reelle Zahlen Gesucht ist eine Darstellung, die bei festem Bitformat ein möglichst grosses Intervall der reellen Zahlen umfasst und deren Genauigkeit bei kleinen Zahlen sehr hoch ist, bei grossen Zahlen niedriger Eine Gleitpunktzahl besteht aus drei Teilen: dem Vorzeichenbit V dem Exponenten E der Mantisse M Eine normierte Gleitpunktzahl mit Vorzeichen V, Mantisse m 1...m n und Exponent E stellt folgenden Zahlenwert dar: (-1) V * (1 + m 1 * m n * 2 n ) * 2 E Da die Null formal nicht darstellbar ist, wird die kleinste darstellbare Zahl also Null interpretiert. Die IEEE (Institute for Electrical and Electronics Engineers) hat zwei Normen verabschiedet Short Real: Vorzeichen: 1 Bit, Exponent: 8 Bit, Mantisse: 23 Bit Long Real: Vorzeichen: 1 Bit, Exponent: 11 Bit, Mantisse: 52 Bit

25 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 25 Zahlenbereiche für reelle Zahlen in Programmiersprachen Je nach dem, wieviel Bytes für die Zahlendarstellung zur Verfügung gestellt werden, können in den einzelnen Programmiersprachen unterschiedliche Zahlenbereiche genutzt werden BytesDatentypen in DelphiJava 6Real 4Singlefloat 8Doubledouble 10Extended

26 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 26 Repräsentation von Information: Bytes Ein Rechner arbeitet immer mit Gruppen von Bits, entweder 8 Bits, 16 Bits, 32 Bits oder 64 Bits Eine Gruppe von 8 Bits nennt man Byte Eine Datei ist eine beliebig lange Folge von Bytes. Unter der Grösse einer Datei versteht man die Anzahl der darin enthaltenen Bytes Für grosse Dateien verwendet man die bekannten Präfixe kilo (für tausend), mega (für million) usw. allerdings für Zweierpotenzen k = 1024 = 2 10 (k = Kilo) M = 1024 * 1024 = 2 20 (M = Mega) G = 1024 * 1024 * 1024 = 2 30 (G = Giga) T = 1024 * 1024 * 1024 * 1024 = 2 40 (T = Tera) P = 1024 * 1024 * 1024 * 1024 * 1024 = 2 50 (P = Peta) E = 1024 * 1024 * 1024 * 1024 * 1024 * 1024 * 1024 = 2 60 (E = Exa)

27 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 27 Codierung logischer Werte Da es nur zwei Wahrheitswerte gibt, könnte man diese durch 1 Bit darstellen Da aber ein Byte die kleinste adressierbare Einheit ist, spendiert man ein ganzes Byte für einen Wahrheitswert Gängige Codierung: F = und T =

28 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 28 Daten - Information Information hat eine Bedeutung und einen Zweck (z.B. Austausch von Nachrichten) Heute ist es 15° kalt Der Umsatz im Jahr 1999 betrug Fr. und im Jahr 2000 betrug er Fr. Information wird im Rechner durch Daten (Folgen von Bits) repräsentiert. Zu den elementaren Fähigkeiten eines Rechners gehören das Lesen von Daten das Speichern von Daten (intern im Hauptspeicher oder auf externem Medium) die Verknüpfung von Daten durch arithmetische oder logische Operationen Die Tätigkeit des Rechners wird ebenfalls durch Daten (das Programm) gesteuert Um Informationen zu verarbeiten, muss man die informationsverarbeitenden Operationen durch Operationen auf den entsprechenden Daten nachbilden Beispiel: Berechnung der Umsatzsteigerung zwischen 1999 und 2000

29 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 29 Informationsverarbeitung - Datenverarbeitung Daten Repräsentation Abstraktion Daten Datenverarbeitung Information Informationsverarbeitung

30 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 30 Repräsentation von Information Um die geeignete Repräsentation hängt ab von der Information selbst der gewünschten Verarbeitung Um Informationen zu Vermitteln genügt die Repräsentation als Text (z.B. Versenden als oder Schreiben eines Briefes) Um Information zu berechnen benötigt man entsprechende Datenstrukturen Beispiel: Umsatzentwicklung: Repräsentation als Gleitkommazahl

31 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 31 Abstraktion bzw. Interpretation von Information Information hat eine Bedeutung und einen Zweck, Daten dagegen haben keine Bedeutung Um aus den Daten deren Bedeutung zur erkennen muss man sie interpretieren Die Interpretation von Daten nennt man auch Abstraktion Beispiel: Etwas lesbarer als Hexadezimalzahl C 6C E 64 2E Interpretationsmöglichkeiten Als Folge 1-Byte-Zahlen: Als Folge von 2-Byte-Zahlen: Als Folge von 8-stelligen Zweierkomplementzahlen: Als ASCII: Der Ball ist rund.

32 Prof. Dr. Knut Hinkelmann Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales 32Übungsaufgaben Wandeln Sie folgende Binärzahlen in Dezimalzahlen um 101 = = = = =195 Wandeln Sie folgende Dezimalzahlen in Binärzahlen, Oktalzahlen (Basis 8) und Hexadezimalzahlen (Basis 16) um 101 = =145 = = =377 =FF 167 = =247 =A = = =11E6 256 = =400 =100


Herunterladen ppt "Fachhochschule Solothurn Nordwestschweiz Technik - Wirtschaft - Soziales Binäre Repräsentation von Information Bits und Bytes Binärzahlen ASCII Ganze Zahlen."

Ähnliche Präsentationen


Google-Anzeigen