WEBVTT

00:06.370 --> 00:07.870
Meine Damen und Herren, guten Tag.

00:09.270 --> 00:19.150
Ich habe hier zunächst zwei Folien zum Thema WebInscribe, die ich in

00:19.150 --> 00:22.970
der Pause dann auch nochmal vorzeigen werde, wenn Sie es jetzt nicht

00:22.970 --> 00:23.710
komplett bekommen.

00:24.150 --> 00:26.090
Hier vorne liegen eine ganze Menge Blätter noch.

00:26.250 --> 00:30.350
Einige haben die schon in der Mathematikvorlesung bekommen.

00:30.910 --> 00:32.370
Hier sind noch weitere solche Blätter.

00:34.010 --> 00:36.750
Aufgabe ist, Sie holen sich zuerst ein Passwort.

00:38.630 --> 00:41.530
Das müssen Sie sich persönlich abholen im Rechenzentrum.

00:43.610 --> 00:47.490
Danach können Sie sich auf einem beliebigen Rechner, entweder im

00:47.490 --> 00:50.630
Rechenzentrum oder, falls Sie eine Netzverbindung von zu Hause haben,

00:52.230 --> 00:58.650
mit dem WebInscribe ein Tutorium raussuchen.

00:59.650 --> 01:05.650
Wir zeichnen das alles auf und sortieren dann, sodass einigermaßen

01:05.650 --> 01:10.530
gleichmäßige Verteilung fabriziert wird und geben das Ergebnis am

01:10.530 --> 01:17.230
kommenden Freitagmittag bekannt, und zwar sowohl auf der Webpage als

01:17.230 --> 01:20.070
auch durch Aushang an verschiedenen Stellen.

01:23.070 --> 01:29.110
Wichtig dabei ist, dass Sie genau aufpassen, was Sie eingeben und dass

01:29.110 --> 01:30.890
das korrekt ist, keine Schreibfehler.

01:31.710 --> 01:35.930
Und bitte schön, soweit Sie Namen haben, die ein scharfes S enthalten

01:35.930 --> 01:42.110
oder Umlaute oder irgendwelche Akzente auf Buchstaben, dann lassen Sie

01:42.110 --> 01:46.610
bitte die Akzente weg und schreiben Ihren Namen mit UE statt mit Ü.

01:49.950 --> 01:55.030
Sonst geraten diese Programme alle in Unordnung und kommen nicht

01:55.030 --> 01:55.390
weiter.

01:59.390 --> 02:04.490
Die Daten und auch das Passwort wird außer für WebInscribe hinterher

02:04.490 --> 02:11.230
benutzt, wenn Sie auf unserer Webseite info1.de nachsehen wollen, wie

02:11.230 --> 02:13.810
viele Punkte Sie für Ihre Übungen schon bekommen haben.

02:14.910 --> 02:18.030
Das Passwort brauchen Sie also länger und noch für andere Zwecke.

02:18.990 --> 02:19.790
Fragen dazu?

02:27.410 --> 02:27.810
Lauter.

02:31.940 --> 02:35.040
Welches Tutorium Sie auswählen, ist mir völlig egal.

02:35.960 --> 02:41.760
Sie haben ein Angebot von 23 oder 25 Stück und die unterscheiden sich

02:41.760 --> 02:46.780
in der Uhrzeit und auch im Ort und da können Sie Ihre persönlichen

02:46.780 --> 02:49.180
Präferenzen walten lassen.

02:50.100 --> 02:52.920
Ich wiederhole nur, was ich das letzte Mal schon gesagt habe.

02:53.340 --> 02:55.980
Ich kann nicht garantieren, dass wir Ihren Wünschen immer nachkommen.

02:56.720 --> 03:00.180
Denn wir können nicht zum Schluss an einer Stelle 75 haben und an der

03:00.180 --> 03:01.020
anderen Stelle 10.

03:02.620 --> 03:03.820
Das ist auch nicht in Ihrem Sinne.

03:14.080 --> 03:15.180
Ja, eigentlich nicht.

03:16.080 --> 03:20.360
Aber natürlich in der Anfangsphase kann es vorkommen, dass Probleme

03:20.360 --> 03:24.120
existieren zwischen den Tutorien in Mathematik und den Tutorien hier.

03:24.120 --> 03:26.320
Das lässt sich aber korrigieren.

03:31.840 --> 03:36.060
Sie bekommen, wenn Ihre Übungsaufgaben korrigiert werden, Punkte.

03:37.460 --> 03:40.060
Und den akkumulierten Punktestand können Sie abfragen.

03:44.560 --> 03:45.320
Keine Ahnung.

03:46.840 --> 03:49.020
Ich bin kein Student und habe mich noch nie da eingeschrieben.

03:54.190 --> 03:54.730
Noch Fragen?

04:00.680 --> 04:01.020
Wie bitte?

04:04.000 --> 04:08.340
In dem Augenblick, wo Sie praktisch arbeiten wollen, müssen Sie wohl

04:08.340 --> 04:09.260
an einem Rechner sitzen.

04:11.600 --> 04:14.220
Und wenn Sie das aber zu Hause machen können, dann brauchen Sie auch

04:14.220 --> 04:14.840
nicht hingehen.

04:17.120 --> 04:21.600
Der Unterschied ist nur der, dass es möglicherweise sinnvoll sein

04:21.600 --> 04:25.480
kann, in bestimmten Phasen mal da reinzuschauen, weil man da

04:25.480 --> 04:27.080
irgendwie, man hat ja einen Berät.

04:28.080 --> 04:32.080
Statt dass man also zwei Stunden am Bleistift lag.

04:33.560 --> 04:34.160
Noch Fragen?

04:37.930 --> 04:39.230
Ich sehe keine Hände mehr.

04:47.620 --> 04:49.060
Dann kommen wir zum Stoff.

04:54.860 --> 04:55.580
Ach, Kindlein.

05:01.880 --> 05:05.460
Wir waren bei dieser Folie stehen geblieben und hatten also bisher

05:05.460 --> 05:09.360
festgestellt, wir kennen vier Begriffe.

05:11.820 --> 05:17.100
Signal, Inschrift, als physikalische Repräsentationen von dem, was wir

05:17.100 --> 05:18.040
Information nennen.

05:18.660 --> 05:25.600
Dann Nachricht, das ist die Abstraktion aus den Signalen und

05:25.600 --> 05:29.700
Inschriften, die wir auf irgendeine Art und Weise, wie wir heute sehen

05:29.700 --> 05:30.800
werden, codieren können.

05:31.560 --> 05:33.980
Das ist also die eigentliche Repräsentation.

05:34.820 --> 05:40.100
Und dann kann man die Nachrichten interpretieren und bekommt damit

05:40.100 --> 05:41.080
Information.

05:42.040 --> 05:45.940
Und hatten dann also das Paar Nachricht und die zugeordnete

05:45.940 --> 05:48.320
Information ein Datum genannt.

05:50.340 --> 05:56.340
Und darauf hingewiesen, dass wenn wir solche Daten verarbeiten, dann

05:56.340 --> 05:57.920
muss das bedeutungstreu sein.

05:58.260 --> 06:00.420
Denn wir verarbeiten immer nur die Nachrichten.

06:01.660 --> 06:02.340
Technisch.

06:03.980 --> 06:07.000
Sind aber natürlich eigentlich daran interessiert, dass wir

06:07.000 --> 06:09.340
Informationsverarbeitung betreiben.

06:10.480 --> 06:15.040
Und dementsprechend ist es notwendig, dass die Bedeutung durch die

06:15.040 --> 06:20.880
Verarbeitung nicht verändert wird oder sonst wie beeinflusst wird.

06:20.960 --> 06:22.560
Und dafür hatte ich Beispiele angegeben.

06:22.560 --> 06:28.240
Bevor ich zum Abschluss dieses Teils komme, noch eine Klassifikation,

06:28.780 --> 06:33.060
was für Arten von Informationsverarbeitung wir insgesamt unterscheiden

06:33.060 --> 06:33.440
können.

06:35.180 --> 06:41.360
Das, was wir normalerweise unter Rechnen verstehen, also herausfinden,

06:41.540 --> 06:43.420
dass 1 plus 1 2 ist.

06:44.340 --> 06:48.220
Das ist eine transformierende Informationsverarbeitung.

06:48.220 --> 06:56.720
Ich habe die zwei Daten 1 und 1 und liefere als Ergebnis aus 2.

06:57.420 --> 06:59.100
Die Eingabedaten sind verschwunden.

07:01.120 --> 07:03.300
Kommen im Ergebnis nicht mehr vor.

07:04.900 --> 07:08.560
Das ist das, was man landläufig unter Rechnen versteht.

07:10.400 --> 07:14.440
Da passiert also genau diese Art von Transformation.

07:15.140 --> 07:19.780
Ein sehr großer Teil der Informationsverarbeitung behält aber die

07:19.780 --> 07:22.400
Eingabedaten in unterschiedlicher Form.

07:23.940 --> 07:27.640
Und normalerweise haben wir dann strukturierende

07:27.640 --> 07:33.380
Informationsverarbeitung vor uns, bei denen die Eingangsdaten in

07:33.380 --> 07:38.500
irgendeiner Form gruppiert werden, miteinander in Beziehung gesetzt

07:38.500 --> 07:39.100
werden.

07:40.280 --> 07:41.880
Die Eingabedaten sind noch da.

07:41.880 --> 07:43.720
Auch im Ergebnis.

07:45.660 --> 07:49.180
Also wenn ich Sätze zusammensetze aus Wörtern, das ist der typische

07:49.180 --> 07:52.020
Fall einer strukturierenden Informationsverarbeitung.

07:53.820 --> 07:57.060
In gewisser Weise ein Spezialfall der strukturierenden

07:57.060 --> 07:59.940
Informationsverarbeitung ist die komprimierende

07:59.940 --> 08:04.980
Informationsverarbeitung, bei dem die Eingabedaten zwar nicht mehr da

08:04.980 --> 08:06.860
sind, aber rekonstruieren lassen.

08:09.020 --> 08:11.780
Das kann verlustfrei geschehen.

08:13.220 --> 08:17.740
Normalerweise, wenn wir also Daten, Programme und Ähnliches

08:17.740 --> 08:21.560
dichtgepackt im Speicher haben wollen oder übers Netz übertragen

08:21.560 --> 08:28.220
wollen, dann haben wir einen Packungsalgorithmus, der zunächst einmal

08:28.220 --> 08:36.780
aus 10 MB 5 MB macht oder vielleicht sogar noch weniger, um auf diese

08:36.780 --> 08:38.740
Art und Weise die Übertragung zu beschleunigen.

08:40.020 --> 08:44.500
Und zum Schluss sind wir in der Lage, das Resultat wieder auszupacken

08:44.500 --> 08:47.860
und dabei erscheinen die ursprünglichen Eingangsdaten.

08:49.000 --> 08:53.820
Typischer Fall einer solchen verlustfreien Informationsverarbeitung

08:53.820 --> 09:02.800
sind unter Linux genauso wie auf Windows, die ZIP-Programme in

09:02.800 --> 09:10.200
verschiedenen Variationen, bei denen Sie Bit für Bit die ursprüngliche

09:10.200 --> 09:11.740
Information wiederherstellen können.

09:13.180 --> 09:17.040
In der Bild- und Videoverarbeitung oder bei der Audioverarbeitung

09:17.040 --> 09:20.080
haben wir es mit verlustbehafteter komprimierender

09:20.080 --> 09:22.620
Informationsverarbeitung zu tun.

09:23.580 --> 09:29.180
Da werden Bilder analysiert und mit weniger Bits dargestellt als

09:29.180 --> 09:32.260
eigentlich ursprünglich notwendig.

09:32.740 --> 09:37.100
Dabei können Farben verfälscht werden, Kanten kaputt gehen, Obertöne

09:37.100 --> 09:39.520
in der Musik abgeschnitten werden und ähnliche Dinge.

09:39.860 --> 09:41.640
Die lassen sich auch nicht mehr rekonstruieren.

09:45.710 --> 09:48.730
Das wäre also dann verlustbehaftete komprimierende

09:48.730 --> 09:50.390
Informationsverarbeitung.

09:50.390 --> 09:55.630
Und wenn wir das alles zusammennehmen, dann sehen wir also, dass wir

09:55.630 --> 10:02.630
jetzt gesehen haben, wir haben physikalische Größen, gehen von den

10:02.630 --> 10:06.510
physikalischen Größen über zu Nachrichten als Abstraktion,

10:07.370 --> 10:10.890
interpretieren diese Nachrichten, dann bekommen wir Information.

10:11.860 --> 10:15.890
Die Interpretation ist stets kontextabhängig.

10:18.870 --> 10:23.670
Die Signale und Inschriften könnten auf verschiedene Arten und Weisen

10:23.670 --> 10:24.770
in Erscheinung treten.

10:25.230 --> 10:29.870
Analog, digital, auf Dauer vorhanden, dann ist es eine Inschrift.

10:30.690 --> 10:34.330
Oder sie könnten transient sein, wie man sagt, das heißt, sie sind

10:34.330 --> 10:35.510
vorübergehend da.

10:36.830 --> 10:42.410
Also Ton ist eine vorübergehende Darstellung von Information.

10:45.330 --> 10:50.310
Und darüber hinaus, ich wiederhole, halten wir fest, es gibt keine

10:50.310 --> 10:53.750
Information, die wir nicht auf irgendeine Art und Weise darstellen

10:53.750 --> 10:54.150
können.

10:55.510 --> 10:59.370
Obwohl ich zunächst also die Nachricht habe und dann mühsam durch

10:59.370 --> 11:02.070
Interpretation die Information herausbekommen will.

11:02.910 --> 11:05.350
Die Information pur gibt es nicht.

11:06.270 --> 11:07.750
Kann ich Ihnen nicht vorzeigen.

11:08.730 --> 11:11.210
Ich kann Ihnen immer nur eine Nachricht vorzeigen, die diese

11:11.210 --> 11:12.330
Information wiedergibt.

11:16.700 --> 11:18.000
Daran muss man sich gewöhnen.

11:20.420 --> 11:25.900
Gehen wir jetzt den Weg rückwärts und stellen uns die Frage, du hast

11:25.900 --> 11:33.580
eine Information, die ist auch irgendwie dargestellt, und jetzt

11:33.580 --> 11:39.660
überlegen wir uns mal, ob wir dafür noch andere Darstellungen finden

11:39.660 --> 11:42.460
können, die vielleicht bestimmte Eigenschaften haben.

11:44.840 --> 11:48.800
Diese Suche nach geeigneten Nachrichten, die die gegebene Information

11:48.800 --> 11:50.900
darstellen, nennen wir Kodierung.

11:52.200 --> 11:55.960
Das Verbund dazu ist also Kodieren, manchmal auch mit K geschrieben.

11:58.260 --> 12:05.340
Und wenn ich also die Zahl 2 hernehme als Information, dann kann ich

12:05.340 --> 12:09.560
die darstellen durch das Wort 2, ich kann sie durch die Ziffer 2

12:09.560 --> 12:13.420
darstellen, ich kann sie durch zwei Striche darstellen, ich habe noch

12:13.420 --> 12:15.920
eine ganze Reihe weiterer solcher Darstellungsmöglichkeiten.

12:17.380 --> 12:22.380
Diese verschiedenen Darstellungen haben sehr unterschiedliche

12:22.380 --> 12:23.260
Anwendungszwecke.

12:23.500 --> 12:27.920
Also das Wort 2 ist gut geeignet, um es auszusprechen.

12:30.180 --> 12:36.060
Die Ziffer 2 kann ich gut gebrauchen, wenn ich damit rechnen will.

12:37.960 --> 12:44.240
Die zwei Striche sind für elementare Rechenaufgaben sogar noch

12:44.240 --> 12:45.680
bequemer als die Ziffer 2.

12:45.800 --> 12:50.660
Wenn Sie also anfangen abzuzählen, 1, 2, 3, 4, 5, dann machen Sie 5

12:50.660 --> 12:53.860
Striche, wie man weiß.

12:58.470 --> 13:06.370
Wir nennen ein elementares, eine elementare Nachricht, die wir dazu

13:06.370 --> 13:11.850
benutzen, um irgendwelche Informationen darzustellen, ein Zeichen.

13:14.650 --> 13:19.170
Elementar wäre also hier der einzelne Strich.

13:19.850 --> 13:24.250
Ich habe zwei Striche hier benutzt, um die Zahl 2 zu kodieren.

13:25.010 --> 13:30.330
Die Ziffer 2 selber ist ein einzelnes Zeichen und ist elementar, ist

13:30.330 --> 13:32.530
also ein Zeichen in diesem Sinne.

13:33.360 --> 13:41.690
Das Wort Zeichen in dieser Bedeutung wird in unterschiedlicher Form

13:41.690 --> 13:42.350
benutzt.

13:42.950 --> 13:48.110
Wenn ich natürliche Sprache verarbeite, dann ist das Wort 2, ZWEI,

13:48.610 --> 13:50.150
ebenfalls ein Zeichen.

13:51.710 --> 13:57.770
Denn die Aussage, ja, das Wort 2 besteht aus vier Buchstaben, das ist

13:57.770 --> 14:02.830
zwar ganz toll und richtig, nur es bringt überhaupt keine Einsicht,

14:04.310 --> 14:06.090
damit kann ich den Wortsinn nicht vermitteln.

14:06.750 --> 14:12.370
Das heißt, ich muss das Wort 2 als eine Einheit auffassen und damit

14:12.370 --> 14:13.950
ist es ein einzelnes Zeichen.

14:14.530 --> 14:22.150
Diese Geschichte wird Ihnen noch öfters begeben, dass ich dann zum

14:22.150 --> 14:25.790
Schluss Fastsätze produziere von der Bauart.

14:27.030 --> 14:29.670
Dieses Zeichen besteht aus fünf Zeichen.

14:31.950 --> 14:35.750
Ich werde das vermeiden, aber es klingt fast so.

14:36.670 --> 14:41.630
Wenn ich also hier sagen würde, das Wort 2 ist ein Zeichen und besteht

14:41.630 --> 14:44.510
aus vier Einzelbuchstaben, also vier Einzelzeichen.

14:46.930 --> 14:49.710
Da muss man also ganz genau aufpassen, was gemeint ist.

14:51.130 --> 14:57.630
Die Zeichen, die wir benutzen für solche Codierungen, entstammen

14:57.630 --> 15:04.290
meistens einem vorgegebenen Zeichenvorrat und im größten Teil der

15:04.290 --> 15:06.610
Informatik ist dieser Zeichenvorrat endlich.

15:07.350 --> 15:11.270
Ich kann also genau angeben, wie viele alternative Zeichen ich habe.

15:12.270 --> 15:17.930
Also bei den Strichen gibt es eben nur einen Zeichenvorrat, der genau

15:17.930 --> 15:21.070
aus einem einzigen Zeichen besteht, nämlich dem senkrechten Strich.

15:22.710 --> 15:25.830
Die Wörter der natürlichen Sprache sind über unserem normalen Alphabet

15:25.830 --> 15:30.330
aufgebaut, also gibt es je nachdem, wie Sie zählen, 27 verschiedene

15:30.330 --> 15:32.770
Zeichen im Zeichenvorrat.

15:34.970 --> 15:40.610
Wenn ich mehrere solche Zeichen hintereinander schreibe, dann nenne

15:40.610 --> 15:41.530
ich das ein Wort.

15:43.410 --> 15:48.990
Also die zwei Striche zusammen bilden ein Wort, was Ihnen ebenfalls

15:48.990 --> 15:51.270
vielleicht am Anfang etwas ungewohnt vorkommen mag.

15:53.450 --> 15:57.750
Der Plural von Wort in diesem Zusammenhang, was ist er?

15:58.070 --> 15:59.070
Wörter oder Worte?

16:01.830 --> 16:02.510
Wörter.

16:03.650 --> 16:04.330
Begründung?

16:06.590 --> 16:08.830
Also Worte müssen eine Bedeutung haben.

16:11.950 --> 16:17.250
Und wenn ich hier ganz rein syntaktisch nur sage, Wörter bestehen aus

16:17.250 --> 16:21.330
Zeichen, dann habe ich von der Bedeutung überhaupt noch nichts erahnt

16:21.330 --> 16:23.310
und infolgedessen ist der Plural Wörter.

16:24.790 --> 16:30.390
Statt Wörter sagen wir an vielen Stellen Text oder Zeichenreihe und

16:30.390 --> 16:35.150
das englische Wort String ist auch nichts anderes als die Wiedergabe

16:35.150 --> 16:38.270
des Begriffs Wort, der natürlich im Englischen ebenfalls vorkommt.

16:39.790 --> 16:45.470
Wenn wir für das einzelne Zeichen Bedeutung festlegen können, dann

16:45.470 --> 16:49.890
nennen wir das Paar bestehend aus Zeichen und Bedeutung ein Symbol.

16:49.890 --> 16:56.050
Also ein Symbol ist ein spezielles Datum, bei dem ich festgestellt

16:56.050 --> 17:01.490
habe und die Kodierung des Datums besteht nicht aus mehreren Zeichen,

17:01.650 --> 17:02.610
sondern aus genau einem.

17:06.670 --> 17:09.490
Im Englischen gibt es dann noch eine Reihe weiterer Wörter, es ist

17:09.490 --> 17:10.230
sehr interessant.

17:10.970 --> 17:13.890
Das Wort Zeichen in der Bedeutung, in der ich es auf dieser Folie

17:13.890 --> 17:16.470
benutze, wurde Anfang des 20.

17:16.710 --> 17:22.350
Jahrhunderts von Sprachphilosophen eingeführt und benutzt.

17:23.010 --> 17:26.850
Es trat dann im Englischen als Fremdwort auf, Zeichen.

17:27.410 --> 17:31.930
Dann hat man es ins Englische übersetzt und daraus im Englischen das

17:31.930 --> 17:33.470
Wort Token gemacht.

17:37.330 --> 17:42.430
Manche Deutsche in ihrer Englischgläubigkeit wissen also dann nicht

17:42.430 --> 17:46.170
mehr, dass wenn sie von Token reden, sie eigentlich von Zeichen reden

17:46.170 --> 17:48.210
und nur die Übersetzung benutzt haben.

17:53.490 --> 17:56.630
Zeichen sind elementare Nachrichten, haben wir festgestellt.

17:57.430 --> 18:00.850
Sie werden also physisch wiedergegeben durch Signale oder

18:00.850 --> 18:01.430
Endschriften.

18:02.870 --> 18:07.390
Wenn ich Bedeutung zuordnen will, dann ist das wie in allen anderen

18:07.390 --> 18:09.070
Fällen auch kontextabhängig.

18:10.290 --> 18:13.870
Und Mehrwürdigkeiten und Inkonsistenzen kann ich ganz genau so haben,

18:14.810 --> 18:17.790
wie ich das bei zusammengesetzten Nachrichten haben kann.

18:17.790 --> 18:22.030
Interessant ist der Begriff der Redundanten-Codierung.

18:22.610 --> 18:30.230
Nämlich eine Codierung, bei der ich mehr Zeichen benutze als unbedingt

18:30.230 --> 18:37.350
notwendig, mit dem Ziel sicherzustellen, wenn irgendeines dieser

18:37.350 --> 18:45.550
Zeichen verschwindet, nicht mehr genau identifiziert werden kann, dann

18:45.550 --> 18:50.850
ist trotzdem noch festzustellen, was eigentlich die Bedeutung war, die

18:50.850 --> 18:51.970
ich hier haben wollte.

18:52.990 --> 18:58.510
Und in diesem Zusammenhang, wenn ich zurückgehe, sehen Sie also jetzt

18:58.510 --> 19:00.950
zwei Striche.

19:01.150 --> 19:04.990
Das ist ein typisches Beispiel einer Nicht-Redundanten-Codierung.

19:05.550 --> 19:09.790
Wenn ich einen Strich wegnehme oder irgendwie krackelig hinschreibe,

19:09.790 --> 19:13.270
dann haben Sie keine Ahnung mehr, ob ich jetzt ein oder zwei Striche

19:13.270 --> 19:13.950
gemacht habe.

19:15.710 --> 19:18.070
Die Ziffer 2 hat die gleiche Eigenschaft.

19:19.610 --> 19:24.890
Das Wort 2 enthält hingegen Redundanz.

19:26.330 --> 19:33.670
Wenn Sie nämlich schon wissen, er redet von Zahlen oder Ziffern, dann

19:33.670 --> 19:38.270
reicht mir also ZWE bereits aus, um zu wissen, 20 hat er nicht

19:38.270 --> 19:39.370
gemeint.

19:40.510 --> 19:42.690
Also muss es wohl 2 gewesen sein.

19:45.150 --> 19:46.870
Also das i ist eigentlich überflüssig.

19:48.310 --> 19:53.390
Die natürliche Sprache enthält zahllose Beispiele dieser Bauart und

19:53.390 --> 19:58.370
die Tatsache, dass ich hier für Sie verständlich bin, liegt essenziell

19:58.370 --> 20:00.590
an der Redundanz der natürlichen Sprache.

20:00.590 --> 20:05.770
Einige Leute da droben haben sicher Schwierigkeiten, in meiner

20:05.770 --> 20:09.910
Aussprache wirklich alle Konsonanten und Vokale genau herauszuhören.

20:10.370 --> 20:14.730
Aber das, was Sie hören, das reicht aus, um den Sinn des Satzes zu

20:14.730 --> 20:15.430
rekonstruieren.

20:15.790 --> 20:16.990
Und darauf kommt es ja eigentlich an.

20:17.030 --> 20:18.650
Die Information kann man also entnehmen.

20:19.470 --> 20:25.750
In der Technik brauchen wir solche Redundanten-Codierungen sehr, sehr

20:25.750 --> 20:30.430
häufig, um sicherzustellen, dass bei irgendwelchen Datenübertragungen

20:30.430 --> 20:34.870
oder Speicherungen technische Fehler nicht dazu führen, dass die

20:34.870 --> 20:36.090
Information verloren geht.

20:36.610 --> 20:40.570
Das elementarste Beispiel, was wir dafür haben, ist der sogenannte

20:40.570 --> 20:41.470
Paritätsbit.

20:41.910 --> 20:46.090
Wir speichern Daten, die wir binär codiert haben mit Nullen und

20:46.090 --> 20:52.250
Einsen, indem wir zusätzlich zusammenzählen, wie viele Einsen sind

20:52.250 --> 20:59.330
vorgekommen und dann zum Schluss Null oder Eins zusätzlich speichern,

20:59.790 --> 21:04.030
je nachdem, ob die Anzahl der Bits gerade oder ungerade ist.

21:06.070 --> 21:07.610
Und wozu tun wir das?

21:10.190 --> 21:16.350
Nun, wenn wir dieses Wort nehmen und einem anderen mitteilen, auch

21:16.350 --> 21:19.910
technisch, dann kann der genauso wieder zusammenzählen.

21:20.550 --> 21:25.690
Und wenn dann das Paritätsbit plötzlich etwas Falsches zeigt, dann

21:25.690 --> 21:28.370
sieht er, aha, da ist ein Fehler passiert.

21:29.270 --> 21:32.670
Er kann nicht sagen, welcher Fehler passiert ist.

21:33.590 --> 21:36.150
Er kann also nicht die ursprüngliche Nachricht oder Information

21:36.150 --> 21:39.550
rekonstruieren, aber er sieht wenigstens, dass ein Fehler da ist.

21:40.370 --> 21:45.010
Und diese Überlegung lässt sich fortführen, auch in die Richtung, dass

21:45.010 --> 21:51.630
man redundante Codes konstruiert, bei denen man dann Fehler, die ein

21:51.630 --> 21:58.090
oder zwei oder drei Bit betreffen, korrigieren kann, um den

21:58.090 --> 22:00.230
ursprünglichen Sinn wieder zu bekommen.

22:01.310 --> 22:04.390
Also der Begriff redundante Codierung ist in der Technik

22:04.390 --> 22:05.230
allgegenwärtig.

22:07.630 --> 22:13.530
Mit diesem Beispiel habe ich bereits vorweg gegriffen.

22:14.550 --> 22:21.210
Der elementare Code, der allen Rechneranwendungen zugrunde liegt, ist

22:21.210 --> 22:22.110
der Binärcode.

22:24.010 --> 22:29.150
Wir haben genau zwei Zeichen, 0 und 1, die wir auf unterschiedlichste

22:29.150 --> 22:30.510
Weise darstellen können.

22:31.810 --> 22:36.950
Es ist üblich, in der abstrakten Darstellung nicht die Ziffer 0 und 1

22:36.950 --> 22:42.570
zu benutzen, sondern stattdessen das große O und das große L.

22:43.150 --> 22:49.750
Das kann wiedergegeben sein durch 0 und 1, aber Sie können in

22:49.750 --> 22:53.810
bestimmten Anwendungen auch genau die umgekehrte Konvention treffen

22:53.810 --> 22:59.230
und sagen, das große O wird wiedergegeben durch 1 und das große L wird

22:59.230 --> 23:00.330
wiedergegeben durch 0.

23:00.550 --> 23:04.670
Um diesen Freiheitsgrad zu lassen, benutzen wir also andere Buchstaben

23:04.670 --> 23:09.890
als die Ziffer 0 und 1, wenn wir über den binären Zeichenvorrat

23:09.890 --> 23:11.070
sprechen.

23:13.010 --> 23:17.410
Der Binärcode lässt sich durch Signale und Inschriften auf

23:17.410 --> 23:19.110
unterschiedliche Weisen darstellen.

23:19.110 --> 23:22.450
Hier habe ich schon mal gesagt, wie ich das mir in einer Inschrift

23:22.450 --> 23:23.430
vorstellen könnte.

23:24.630 --> 23:31.730
Wenn Sie das Ganze in elektromagnetischen Wellen haben wollen, dann

23:31.730 --> 23:42.010
können Sie also sagen, 0 ist als tiefer Wert der Welle dargestellt, 1

23:42.010 --> 23:44.930
oder L ist der hohe Wert.

23:46.430 --> 23:55.150
Sie könnten aber genauso gut sagen und ich messe die Länge der ganzen

23:55.150 --> 24:00.970
Angelegenheit und ein solcher Wert, eine solche Länge ist die 0 und

24:00.970 --> 24:03.470
wenn ich es doppelt so lang mache, dann ist es die 1.

24:05.030 --> 24:10.490
Ich habe unterschiedlichste Formen, wie ich also den Binärcode durch

24:10.490 --> 24:12.890
Signale und Inschriften wiedergeben kann.

24:14.710 --> 24:16.850
Typisches Zeichen einer Abstraktion.

24:18.190 --> 24:21.050
Der Binärcode ist eine Abstraktion, bei der mich das alles nicht

24:21.050 --> 24:21.730
interessiert.

24:24.490 --> 24:28.650
Und dementsprechend ist jetzt auch die Zuordnung, welcher Teil des

24:28.650 --> 24:32.350
Signals gibt Ihnen jetzt eigentlich die Nachricht wieder.

24:32.850 --> 24:34.130
Der ist kontextabhängig.

24:34.910 --> 24:39.190
Wenn ich solch eine Zuordnung habe, lese ich aus einem

24:39.190 --> 24:43.170
elektromagnetischen Signal ganz was anderes heraus, als wenn ich die

24:43.170 --> 24:46.050
Zuordnung habe mit niedrig und hoch.

24:52.370 --> 24:59.330
Wenn ich jetzt hier diese Kurve nehme und interpretiere, dann sehe ich

24:59.330 --> 25:08.070
also, da ist offensichtlich eine 0 da gewesen und da eine 1.

25:11.220 --> 25:15.400
Und wenn ich das jetzt vergleiche mit einer Kurve, die so aussieht,

25:16.320 --> 25:21.880
oder die so aussieht, dann wäre das hier der Fall, in dem wir zuerst

25:21.880 --> 25:23.660
eine 1 haben und dann eine 0.

25:24.740 --> 25:28.440
Und hier hätten wir, wenn das der niedrige Wert ist, zweimal die 0.

25:34.130 --> 25:39.970
Aber in allen Fällen habe ich also eine Nachricht, die aus zwei

25:39.970 --> 25:43.010
Zeichen besteht, im Sinne dieser Codierung.

25:45.230 --> 25:46.530
Drei sind nicht da.

25:47.110 --> 25:50.030
Drei würde ich erst bekommen, wenn ich sage, das ganze Ding sieht so

25:50.030 --> 25:50.370
aus.

25:51.850 --> 25:52.530
Dann wären es drei.

25:53.830 --> 26:00.830
Infolgedessen sehe ich also, dass bei Benutzung des Binärcodes ich

26:00.830 --> 26:06.670
ganz offensichtlich abzählen kann, wie viele Einzelelemente,

26:06.710 --> 26:11.390
Einzelzeichen aus dem O und L sind denn hier eigentlich vorhanden.

26:12.030 --> 26:15.910
Und meistens ist es so, dass diese Anzahl für einen bestimmten

26:15.910 --> 26:17.950
Anwendungszweck auch noch fixiert wird.

26:17.950 --> 26:23.090
Daher führt man jetzt eine Art physikalische Dimension ein und sagt,

26:23.190 --> 26:29.630
wenn du irgendeine Größe, eine Variable, einen Wert hast, der codiert

26:29.630 --> 26:36.270
wird im Binärcode, dann kannst du angeben, wie viele Os und Ls da

26:36.270 --> 26:37.170
drinnen vorkommen.

26:39.310 --> 26:43.150
Und mich interessiert also jetzt nicht, es kommen fünf Os und drei Ls

26:43.150 --> 26:48.410
vor, sondern es interessiert mich nur, es kommen insgesamt acht

26:48.410 --> 26:50.830
Zeichen vor, die O oder L sind.

26:53.350 --> 26:59.230
Und dieser acht gebe ich dann die Dimension Bit und sage, die

26:59.230 --> 27:01.730
entsprechende Größe hat acht Bit.

27:02.090 --> 27:05.170
Achten Sie darauf, das Bit ist an dieser Stelle großgeschrieben.

27:05.610 --> 27:08.670
Wir werden gleich noch dahinter kommen, dass es auch den Begriff Bit

27:08.670 --> 27:11.350
kleingeschrieben gibt und der hat eine andere Bedeutung.

27:15.130 --> 27:20.690
Insbesondere wenn ich also Texte habe, dann ist die elementare

27:20.690 --> 27:24.790
Rechnung, dass ich zunächst feststellen kann, mit wie vielen Bits

27:24.790 --> 27:27.310
kannst du diesen Text codieren.

27:27.710 --> 27:30.250
Daher ist also Bit auch eine Längeneinheit.

27:32.130 --> 27:35.830
Und in der Datenübertragung ist Bit pro Sekunde die

27:35.830 --> 27:38.990
Übertragungsgeschwindigkeit in elementarer Form.

27:40.350 --> 27:43.450
Immer unter der Voraussetzung, dass wir mit Nullen und Einsen

27:43.450 --> 27:45.470
codieren, was wir eben meistens tun.

27:50.060 --> 27:57.440
Wir können jetzt dann als nächstes versuchen zu überlegen, kannst du

27:57.440 --> 28:01.180
mit Nullen und Einsen alleine bereits ganze Zahlen codieren?

28:02.040 --> 28:10.080
Und in der Tat, man kann das, wie Ihnen allen wohl bekannt ist und hat

28:10.080 --> 28:13.520
sogar verschiedene Möglichkeiten, das zu tun.

28:16.980 --> 28:21.320
Die elementarste und älteste Form bestand darin, dass man sagt, man

28:21.320 --> 28:25.760
nimmt die Dezimalziffern und ordnet denen einen Code zu.

28:26.760 --> 28:33.780
Und da wir also 10 Dezimalziffern haben, brauchen wir, wie sich jetzt

28:33.780 --> 28:40.480
leicht überlegen lässt, offensichtlich einen Text der Länge 4 Bits, um

28:40.480 --> 28:43.000
das darzustellen und ordnen das so zu.

28:43.000 --> 28:55.780
Der 0 ordnen wir zu O O O O, der 1 ordnen wir zu O O O L, der 2 ordnen

28:55.780 --> 29:00.460
wir zu O O L O und so weiter.

29:02.200 --> 29:16.200
Die 9 bekommt also den Code 1 O O 1 und jetzt können wir anfangen zu

29:16.200 --> 29:21.180
rechnen, indem wir Rechenregeln festlegen, die sagen, wenn du eine

29:21.180 --> 29:29.340
Zahl hast, die jetzt aus mehreren solchen 4-Bit Gruppen besteht, dann

29:29.340 --> 29:33.500
gib doch mal bitte die Rechengesetze an, wie man zwei solche Zahlen

29:33.500 --> 29:36.720
addieren, subtrahieren, multiplizieren, dividieren kann.

29:37.720 --> 29:44.500
Das ist Rechnen im sogenannten BCD-System, Binär Codierte

29:44.500 --> 29:52.360
Dezimalzahlen und das ist weit verbreitet und kann auch durch die

29:52.360 --> 29:58.040
folgenden Überlegungen nicht abgelöst werden, denn eine der

29:58.040 --> 30:04.400
Schwierigkeiten beim Rechnen im Zweiersystem mit Binär Codes kommt

30:04.400 --> 30:12.320
zustande, wenn wir Bruchzahlen betrachten und diese Bruchzahlen Geld

30:12.320 --> 30:13.920
bedeuten.

30:15.220 --> 30:21.180
Dann wissen wir nämlich genau, ein Euro besteht aus 100 Cent und es

30:21.180 --> 30:25.820
gibt danach keine weitere Dezimalstelle mehr und die Frage, wie bei

30:25.820 --> 30:30.720
Divisionen hierbei gerundet wird, ist durch Gesetz festgelegt.

30:32.580 --> 30:36.420
Da können Sie also nicht als Informatiker hergehen und sagen, ich habe

30:36.420 --> 30:43.740
da irgendeine merkwürdige Darstellung der Information 1,57 und jetzt

30:43.740 --> 30:49.360
teile ich durch 2 und dann kommt da irgendetwas heraus und das kann

30:49.360 --> 30:53.620
ich zwar wieder auf 2 Dezimalstellen runden, aber wie ich das mache,

30:53.800 --> 30:55.160
ist meine Privatangelegenheit.

30:55.340 --> 30:57.560
Das ist nicht Ihre Privatangelegenheit.

30:59.700 --> 31:01.220
Und dann kört sich der Spaß auf.

31:04.040 --> 31:10.660
Und insbesondere muss man sehr darauf achten, weil es in der

31:10.660 --> 31:14.980
Anfangszeit der Datenverarbeitung Leute gegeben hat, die sind durch

31:14.980 --> 31:17.000
Betrug folgendermaßen reich geworden.

31:18.340 --> 31:24.120
Die haben im Binärsystem rechnen lassen, haben alles ganz richtig

31:24.120 --> 31:31.100
gemacht, mit Ausnahme dessen, dass sie also die Zahlbeträge zunächst

31:31.100 --> 31:35.400
auf 4 Stellen hinter dem Komma rundeten.

31:37.720 --> 31:44.340
Und wenn sie dabei irgendwelche Effekte hatten, dann haben sie die

31:44.340 --> 31:47.100
Effekte in der 5.

31:47.500 --> 31:50.180
Dezimalstelle hinter dem Komma in die eigene Tasche gesteckt.

31:51.200 --> 31:54.000
Wenn man hinreichend viele Vorgänge dieser Bauart hat, kann man dabei

31:54.000 --> 31:54.820
Millionär werden.

31:57.380 --> 31:59.160
Das muss also verhindert werden.

32:00.980 --> 32:05.140
Und wir merken uns also, in dem Augenblick, wo mit Geld gerechnet

32:05.140 --> 32:12.880
wird, wird auch heute noch das BCD-System benutzt, weil das die

32:12.880 --> 32:18.720
einzige Möglichkeit ist, um ganz exakt nachzuweisen, dass im

32:18.720 --> 32:21.980
Dezimalsystem richtig und nach den gesetzlichen Vorschriften gerechnet

32:21.980 --> 32:22.280
wird.

32:25.720 --> 32:30.460
Wenn wir keine solchen Zwänge haben, dann ist es viel besser, im

32:30.460 --> 32:36.660
Binärsystem direkt zu rechnen und Zahlen darzustellen in der Form, die

32:36.660 --> 32:37.980
ich hier angegeben habe.

32:37.980 --> 32:44.660
Die Zahl besteht aus Ziffern, ZI, das sind alles Größen, die nur die

32:44.660 --> 32:49.300
Werte 0 oder 1 annehmen können im Binärsystem, multipliziert mit ihrer

32:49.300 --> 32:50.080
Stelligkeit.

32:51.010 --> 32:59.040
Also 9, um das Beispiel hier oben nochmal aufzugreifen, ist 1 mal 2

32:59.040 --> 33:16.820
hoch 8 plus 0 mal 2 hoch 2 plus 0 mal 2 hoch 1 plus 1 mal 2 hoch 0.

33:23.190 --> 33:25.210
Und wie rechne ich mit diesen ganzen Dingen?

33:27.050 --> 33:28.550
Ich rechne genauso wie im Dezimalsystem.

33:29.810 --> 33:32.210
Wenn ich also nochmal die 9 dazuzählen will,

33:37.330 --> 33:41.830
dann würden Sie im Dezimalsystem sagen, da fangen wir hinten an, wenn

33:41.830 --> 33:43.450
wir so eine mehrstellige Zahl haben.

33:43.450 --> 33:49.250
Und wissen also, die 2, die 9 wird ja genauso dargestellt, 1 und 1 ist

33:49.250 --> 33:49.730
2.

33:51.710 --> 33:55.330
Ja, aber 2 ist keine zulässige Ziffer im Zweiersystem.

33:57.070 --> 34:00.730
Wir setzen das durch 0 und sagen, wir merken uns 1.

34:01.350 --> 34:03.890
Also kommt in der Summe heraus hier hinten eine 0.

34:05.130 --> 34:08.350
Wir merken uns 1, die muss jetzt hier dazu gezählt werden.

34:08.810 --> 34:13.130
0 und 0 ist 0 und 1 ist 1, also haben wir hier eine 1.

34:14.730 --> 34:16.170
0 und 0 ist 0.

34:17.370 --> 34:20.170
1 und 1 ist 0, merke 1.

34:21.550 --> 34:22.710
Die 1 kommt vorne hin.

34:24.110 --> 34:28.250
Und wenn ich jetzt zusammensetze, dann heißt das also 1 mal 2 hoch 4

34:28.250 --> 34:38.030
plus 0 mal 2 hoch 3 plus 0 mal 2 hoch 2 plus 0 mal 2 hoch 0.

34:38.370 --> 34:39.910
Und das ist ganz offensichtlich 18.

34:44.480 --> 34:47.100
Das ist die einfache Methode des Rechnens im Binärsystem.

34:50.040 --> 34:54.720
Problem, was wir gleich behandeln müssen, ist, wie gehen wir hier mit

34:54.720 --> 34:56.120
negativen Zahlen um?

34:57.620 --> 35:00.000
Bei natürlichen Zahlen kann ich mir das also einfach vorstellen.

35:01.340 --> 35:03.840
Aber was mache ich mit negativen Zahlen?

35:09.270 --> 35:11.850
Das kriegen wir auf der nächsten Folie, bevor wir dazu übergehen.

35:11.850 --> 35:20.470
Für viele Zwecke ist es sehr aufwendig und uninteressant, immer nur 1,

35:20.530 --> 35:27.090
0, 0, 1, 0 zu schreiben, weil da sehr lange Ketten entstehen, die man

35:27.090 --> 35:28.270
eigentlich gar nicht haben möchte.

35:29.330 --> 35:32.290
Und infolgedessen hat man sich überlegt, ich kann das ja ganz sicher

35:32.290 --> 35:38.030
in Gruppen einteilen, zum Beispiel in 3er Gruppen oder in 4er Gruppen.

35:40.390 --> 35:46.830
Und dann würde ich also zum Beispiel die Zahl 18, wenn ich 3er Gruppen

35:46.830 --> 35:50.930
habe, hinschreiben als 2, 2.

35:52.210 --> 35:58.990
Und schreibe dann als Index dazu, dass es im 8er System, bei 2 hoch 3,

35:59.270 --> 35:59.870
8 ist.

36:01.730 --> 36:05.010
Im 8er System kann ich genauso rechnen wie im 2er System.

36:05.150 --> 36:09.030
Ich habe im Grunde dann eben einen Zeichenvorrat, der aus 8 Zeichen

36:09.030 --> 36:09.470
besteht.

36:13.690 --> 36:17.350
Und statt 8er System sagt man natürlich ausländisch, das ist das

36:17.350 --> 36:18.190
Oktalsystem.

36:20.250 --> 36:25.310
Und wir brauchen das Oktalsystem und ähnliche Dinge häufig nicht zum

36:25.310 --> 36:29.390
Rechnen, sondern zunächst einmal einfach, um lange Bitsequenzen kürzer

36:29.390 --> 36:30.370
hinschreiben zu können.

36:31.010 --> 36:36.670
Noch verbreiteter als das 8er System ist heutzutage das 16er System,

36:37.550 --> 36:43.430
also Sedezimalsystem oder Hexadekadisches System oder in Vermischung

36:43.430 --> 36:47.070
von Griechisch und Lateinisch Hexadezimalsystem.

36:48.190 --> 36:51.590
Da brauchen wir aber insgesamt 16 Ziffern, so viel haben wir

36:51.590 --> 36:52.430
eigentlich gar nicht.

36:52.990 --> 36:57.950
Man behilft sich, indem man die Ziffern 0 bis 9 nimmt und die

36:57.950 --> 37:04.010
Buchstaben A, B, C, D, E, F, so wie hier dargestellt, als Ziffern

37:04.010 --> 37:09.630
benutzt, um die restlichen Ziffern bis zu 15 einschließlich

37:09.630 --> 37:10.450
darzustellen.

37:10.450 --> 37:20.450
Die 18 lautet im Sedezimalsystem wie, wenn ich also jetzt eine 4er

37:20.450 --> 37:22.710
Gruppe bilde, so wie hier angezeigt,

37:27.640 --> 37:34.840
da habe ich ganz offensichtlich 1 und 2, eine zweistellige Zahl im

37:34.840 --> 37:35.800
16er System.

37:43.790 --> 37:50.070
Schönen Rechner mögen keine Indizes und infolgedessen hat man bei

37:50.070 --> 37:54.870
Schreiben solcher Bitsequenzen, wenn man sie in den Rechner eingibt,

37:55.710 --> 38:00.150
gewöhnlich einige andere Konventionen, eine übliche Konvention im 16er

38:00.150 --> 38:06.270
System wäre zum Beispiel zu schreiben, das ist 0x12.

38:08.350 --> 38:12.470
x kann nicht in einer Zahl vorkommen, üblicherweise.

38:13.450 --> 38:17.370
Also weiß ich schon, das ist eine verkorkste Konstruktion und diese

38:17.370 --> 38:21.530
verkorkste Konstruktion 0x benutze ich, um anzuzeigen, was jetzt

38:21.530 --> 38:24.110
anschließend folgt, ist eine Sedezimale Zahl.

38:26.610 --> 38:31.890
Die Übungsaufgabe zu dieser Geschichte lautet, erklären Sie mir mal im

38:31.890 --> 38:34.050
Dezimalsystem, was das ist.

38:41.200 --> 38:42.520
Dürfen Sie zu Hause ausrechnen.

38:46.400 --> 38:50.580
Ich gehe jetzt hier nicht weiter auf die Codierung ganzer Zahlen ein,

38:50.820 --> 38:53.780
sondern bespreche nur kurz die negativen Zahlen.

38:54.260 --> 38:59.900
Am Freitag in der Übung wird Ihnen vorgeführt, wie man mit ganzen

38:59.900 --> 39:01.740
Zahlen und auch mit Bruchzahlen rechnet.

39:02.280 --> 39:05.400
Da kommen dann eine Reihe von Folien wieder, die ich hier jetzt

39:05.400 --> 39:05.980
überblättere.

39:07.340 --> 39:13.400
Die Schwierigkeit und der Unterschied zwischen Mathematik und

39:13.400 --> 39:20.220
Informatik besteht darin, dass die Mathematik sagt, Zahlen, wie viele

39:20.220 --> 39:22.680
Ziffern dürfen die haben, beliebig viele.

39:25.560 --> 39:33.340
Die Mathematik kann sogar Aussagen machen und gibt mir die kleinste

39:33.340 --> 39:39.500
Zahl, zu deren Dezimaldarstellung ich mehr Ziffern brauche, als das

39:39.500 --> 39:41.100
Weltall Atome hat.

39:45.340 --> 39:48.320
Das kann ich mir überlegen.

39:48.420 --> 39:51.860
Da kann ich mal abschätzen, wie viele Atome es im Weltall gibt und

39:51.860 --> 39:53.820
dann habe ich vielleicht eine Approximation.

39:56.820 --> 39:59.600
Die Informatik kann leider Gottes da nicht mithalten.

40:00.880 --> 40:10.160
Die wir also zum Schluss diese Zahlen in Inschriften oder mit Signalen

40:10.160 --> 40:14.140
transportieren können oder in die Hosentasche stecken können.

40:15.480 --> 40:20.140
Und leider Gottes reicht meine Hosentasche nicht aus, um zweimal das

40:20.140 --> 40:21.180
Weltall aufzunehmen.

40:23.060 --> 40:24.860
Mit so großen Zahlen kann ich nicht rechnen.

40:25.860 --> 40:29.040
Wenn ich das Ganze auf dem Rechner mache, dann wird die Sache noch

40:29.040 --> 40:30.160
stärker beschränkt.

40:30.360 --> 40:32.420
Dann hat dieser Rechner einen endlichen Speicher.

40:35.380 --> 40:39.520
Und auch das beschränkt die Zahlen fühlbar.

40:39.900 --> 40:44.860
Und zwar jetzt schon in Größenordnungen, die so bei 10 hoch 20, 10

40:44.860 --> 40:45.680
hoch 30 liegen.

40:51.190 --> 40:54.590
Und wenn ich mit so langen Zahlen arbeite, dann habe ich aber meinen

40:54.590 --> 40:55.930
ganzen Speicher im Rechner voll.

40:56.810 --> 40:59.230
Notfalls mit einer einzigen Zahl oder mit Zweien.

40:59.550 --> 41:00.670
Das ist auch nicht mein Wunsch.

41:01.010 --> 41:03.350
Also rechne ich eigentlich mit noch viel kleineren Zahlen.

41:05.650 --> 41:10.730
Und lege fest, und das ist eine Grundfestlegung in der Informatik,

41:11.290 --> 41:16.830
wenn ich Zahlen darstelle, dann unter Normalumständen mit einer festen

41:16.830 --> 41:18.050
Anzahl von Bits.

41:18.050 --> 41:19.770
Jetzt kommen die Bits von vorhin.

41:23.140 --> 41:28.240
Und typisch sind also, ich lege mich fest auf Zahlen der Länge 8-Bit,

41:28.360 --> 41:32.480
der Länge 16-Bit, der Länge 32-Bit, der Länge 64-Bit.

41:37.590 --> 41:40.890
Mit 64-Bit kann ich wie viele ganze Zahlen darstellen?

41:43.350 --> 41:45.090
Nun kann man sofort ausrechnen.

41:45.470 --> 41:50.430
Die haben dann die Zweierpositionen 0, 2 hoch 1, 2 hoch 2 und so

41:50.430 --> 41:52.330
weiter bis 2 hoch 63.

41:56.720 --> 42:00.000
Das wäre ein 64-Bit beispielsweise.

42:02.300 --> 42:04.500
Und was ist dann die größte darstellbare Zahl?

42:09.870 --> 42:11.930
Das wäre dann 2 hoch 64 minus 1.

42:14.330 --> 42:18.330
Oder 2 hoch 8 minus 1 oder 2 hoch 16 minus 1, wenn Sie eine der

42:18.330 --> 42:19.850
kürzeren Größen nehmen.

42:21.710 --> 42:22.190
Schön.

42:23.250 --> 42:26.950
Bleiben wir mal bei 8, dann wären wir also bei 2 hoch 8 minus 1.

42:27.330 --> 42:29.630
Das ist 255.

42:31.110 --> 42:33.050
Und wie stelle ich jetzt minus 1 dar?

42:36.210 --> 42:39.270
Antwort, wenn ich mich schon festgelegt habe, es gibt nur 8-Bit für

42:39.270 --> 42:42.670
diesen Zweck, dann habe ich keinen Platz mehr für negative Zahlen.

42:43.990 --> 42:45.390
Also werde ich jetzt radikal.

42:49.230 --> 42:53.230
Ich schränke den Zahlenbereich weiter ein, bei 8-Bit-Zahlen, also

42:53.230 --> 42:59.090
beispielsweise von 0 bis 127 oder ähnliches, um Platz zu schaffen für

42:59.090 --> 43:00.010
negative Zahlen.

43:03.240 --> 43:07.480
Und führe eine Konvention ein, das ist jetzt so ein Kontext für die

43:07.480 --> 43:08.680
Interpretation.

43:09.220 --> 43:17.100
Der sagt, wenn die Zahl 0 bis 127 lautet, dann ist sie positiv.

43:18.640 --> 43:24.100
Und wenn sie 128 bis 255 lautet, dann ist sie negativ und jetzt muss

43:24.100 --> 43:25.400
ich die Interpretation vorgeben.

43:26.940 --> 43:28.520
Welche negative Zahl ist das dann?

43:29.520 --> 43:34.500
Und für diese Interpretation gibt es heutzutage drei verschiedene

43:34.500 --> 43:37.560
Möglichkeiten, die hier aufgeführt sind.

43:37.960 --> 43:44.100
Zunächst einmal das Einer-Komplement, bei dem ich eine positive Zahl

43:44.100 --> 43:44.520
nehme.

43:46.540 --> 43:55.500
Ich bleibe mal bei meiner 9, also 0, 1, 0, 0, 1.

43:58.620 --> 44:01.980
Und wenn ich es jetzt nicht mit 2 auf 8, sondern mit 2 auf 5 mache,

44:02.080 --> 44:03.220
setze ich noch eine 0 davor.

44:05.060 --> 44:09.400
Und ich invertiere jedes Bit, das heißt, also die negative Zahl dazu

44:09.400 --> 44:12.580
heißt 1, 0, 1, 1, 0.

44:14.400 --> 44:15.560
Das wäre die Minus-9.

44:16.300 --> 44:21.320
Dargestellt mit 5-Bit mit Einer-Komplement.

44:23.160 --> 44:28.640
Das ist die einfachste Rechnung, die einfachste Form des Übergangs von

44:28.640 --> 44:30.300
positiven zu negativen Zahlen.

44:31.600 --> 44:32.880
Und zurück, versteht sich.

44:37.450 --> 44:39.870
Die Rechenregeln sind hier also dargestellt.

44:39.870 --> 44:48.150
Was das dann heißt, bei unseren 8-Bit-Zahlen würde also Minus-Z

44:48.150 --> 44:53.730
dargestellt werden durch 255, das ist 2 hoch N-1, Minus die

44:53.730 --> 44:58.890
entsprechende Zahl, also die Zahl 200, ein Wert, der größer gleich 128

44:58.890 --> 45:03.370
ist, ist offensichtlich Minus 55.

45:04.250 --> 45:07.550
255 minus 200.

45:11.160 --> 45:13.280
Das ist das Rechnen im Einer-Komplement.

45:13.880 --> 45:19.020
Das Rechnen im Einer-Komplement hat nur einen großen Nachteil.

45:19.840 --> 45:29.360
Wenn ich die Zahl 0 hinschreibe und da komplementiere, kommen lauter

45:29.360 --> 45:30.160
Einsen raus.

45:32.540 --> 45:35.600
Ja, und Minus-0 ist glaube ich dasselbe wie Plus-0.

45:36.160 --> 45:39.600
Wir sehen also plötzlich, im Einer-Komplement hat die 0 zwei

45:39.600 --> 45:40.840
verschiedene Darstellungen.

45:42.300 --> 45:44.140
Lauter 0 oder lauter Einsen.

45:45.780 --> 45:48.920
Das hat technisch, schaltungstechnisch in der Hardware ungeheuer

45:48.920 --> 45:50.640
Schwierigkeiten bereitet.

45:51.380 --> 45:56.080
Und wir haben also viele Rechner in der Vergangenheit gehabt, Gott sei

45:56.080 --> 46:00.960
Dank sind sie inzwischen alle ausgestorben, die nicht feststellen

46:00.960 --> 46:03.880
konnten, dass die Minus-0 eine Zahl größer gleich 0 ist.

46:06.100 --> 46:08.120
Sondern an der Stelle einfach Fehler machten.

46:10.360 --> 46:13.900
Und daher ist man also vom Einer-Komplement heute weitgehend

46:13.900 --> 46:16.380
abgekommen und benutzt es kaum noch.

46:16.720 --> 46:19.120
Eben wegen der Probleme mit der negativen 0.

46:19.540 --> 46:22.540
Sondern stattdessen ist man übergegangen zum Zweier-Komplement, das

46:22.540 --> 46:25.320
ist heute die verbreitetste Form der ganzen Angelegenheit.

46:26.720 --> 46:31.600
Unterscheidet sich vom Einer-Komplement nur dadurch, dass ich Eins

46:31.600 --> 46:32.560
dazu zähle.

46:36.550 --> 46:40.110
Und wenn ich mir jetzt die 0-Geschichte anschaue, dann sehe ich, wenn

46:40.110 --> 46:43.570
du übergehst zum Einer-Komplement, lauter Einsen dazu bekommst.

46:44.390 --> 46:46.730
Und dann noch eine Eins dazu zählst.

46:47.670 --> 46:52.810
Dann hast du 1 und 1 ist 0, merke 1, 1 und 1 ist 0, merke 1, 1 und 1

46:52.810 --> 46:54.430
ist 0, merke 1 usw.

46:55.650 --> 46:58.530
Die Eins fällt vorne heraus und ich habe wieder meine 0 gehalten.

47:00.110 --> 47:02.530
Also jetzt habe ich nur noch eine einzige Art von 0.

47:04.210 --> 47:08.470
Und das ist die heute übliche Art der Darstellung.

47:10.690 --> 47:12.990
Die hat allerdings andere Nachteile.

47:14.410 --> 47:19.930
Nämlich der Zahlbereich, wenn ich n-plus-1-Bits habe, ist jetzt

47:19.930 --> 47:20.710
unsymmetrisch.

47:20.790 --> 47:25.430
Es gibt eine negative Zahl mehr, als es positive Zahlen gibt.

47:26.830 --> 47:31.710
Also bei Darstellung mit 8-Bit gehen die positiven Zahlen wieder von 0

47:31.710 --> 47:32.330
bis 127.

47:33.890 --> 47:38.290
Aber die negativen Zahlen gehen von 0, minus 1 usw.

47:38.730 --> 47:40.150
bis minus 128.

47:42.510 --> 47:46.030
Es gibt eine negative Zahl mehr, als es positive Zahlen gibt.

47:47.950 --> 47:51.270
Aber das ist das Verfahren, was wir heute normalerweise einsetzen.

47:53.290 --> 48:01.890
Für viele andere Zwecke ist es sinnvoll zu sagen, ja du brauchst

48:01.890 --> 48:11.310
offensichtlich, 127 ist ja also die Hälfte von 256 oder 128, ein Bit

48:11.310 --> 48:16.530
mehr, wenn du negative Zahlen mit erledigen willst.

48:16.530 --> 48:20.870
Und das können wir doch so nutzen, dass wir sagen, wir speichern

48:20.870 --> 48:22.770
Vorzeichen und Betrag.

48:23.590 --> 48:30.210
Eine Zahl Z, positiv dargestellt durch O, ein einziges Bit.

48:30.790 --> 48:31.790
Und dann kommt Z.

48:35.600 --> 48:40.720
Bei 8-Bit heißt das also, wir haben 7-Bit für die Zahldarstellung, das

48:40.720 --> 48:42.240
reicht gerade für 0 bis 127.

48:43.380 --> 48:46.620
Und das vorderste Bit benutzen wir dazu, um das Vorzeichen wieder zu

48:46.620 --> 48:46.900
geben.

48:48.020 --> 48:48.720
1 oder 0.

48:51.320 --> 48:52.860
Welchen Haken hat die Darstellung?

49:01.420 --> 49:05.180
Man hat wieder eine Minus-Null, weil sie nämlich hinschreiben können 1

49:05.180 --> 49:05.640
0.

49:07.340 --> 49:09.000
Und das ist dasselbe wie 0 0.

49:13.660 --> 49:16.820
Aber für manche Zwecke ist das gar nicht ungünstig.

49:16.820 --> 49:25.100
Und insbesondere, ich gehe eine Folie zurück, wenn ich mit meinen 16,

49:25.240 --> 49:31.140
32, 64 Bit nicht auskomme, sondern wirklich Zahlen brauche, die viel

49:31.140 --> 49:31.680
länger sind.

49:31.740 --> 49:36.540
Zum Beispiel, weil ich als Suprimzahl und Verschlüsselung berechnen

49:36.540 --> 49:36.720
will.

49:37.240 --> 49:42.100
Dann greife ich zu einer Darstellung, die sagt, eine Zahl besteht aus

49:42.100 --> 49:46.320
mehreren Einzelzahlen in Positionsschreibweise.

49:47.320 --> 49:52.220
Und da macht es mir jetzt ungeheuer Schwierigkeiten, wenn ich zu einer

49:52.220 --> 49:56.280
oder zweier Komplement übergehen müsste, in einer Zahl, die insgesamt

49:56.280 --> 50:06.260
mit 512 oder 1024 oder sogar 8192 Bits dargestellt wird.

50:06.260 --> 50:11.700
Und in Zusammenhang mit der Langzahl-Arithmetik ist es also sinnvoll,

50:12.720 --> 50:17.580
diese Darstellung zu benutzen mit Vorzeichen und Betrag.

50:18.340 --> 50:23.720
Genauso kommt, wie wir gleich sehen werden, diese Darstellung vor im

50:23.720 --> 50:28.240
Zusammenhang mit den sogenannten Gleitpunktzahlen.

50:29.900 --> 50:32.420
Soviel zur Kodierung ganzer Zahlen.

50:32.420 --> 50:40.160
Wir merken uns, wir haben zunächst einmal zwei verschiedene Arten der

50:40.160 --> 50:41.400
Binärdarstellung.

50:44.040 --> 50:48.140
Entweder BCD oder direkt binär kodiert.

50:50.160 --> 50:54.600
Wenn wir direkt binär kodieren, dann könnten wir alle Bits, die wir

50:54.600 --> 50:57.340
zur Verfügung haben, für die Zahldarstellung nutzen.

50:57.780 --> 50:59.860
Das nennen wir dann eine vorzeichenlose Zahl.

51:01.540 --> 51:06.860
Oder wir lassen ein Bit aus, was wir für Vorzeichenzwecke benutzen.

51:07.320 --> 51:10.920
Und dann haben wir offenbar drei verschiedene Formen, wie wir negative

51:10.920 --> 51:13.540
Zahlen einführen können, die hier dargestellt sind.

51:16.710 --> 51:21.510
Und damit kann man jetzt rechnen, wie man zwischen Dezimal- und

51:21.510 --> 51:23.330
Binärsystem konvertiert.

51:24.230 --> 51:28.990
Und alle diese Dinge, die werden Ihnen am Freitag dargestellt.

51:28.990 --> 51:32.330
Unser nächstes Thema ist reelle Zahlen.

51:32.650 --> 51:33.590
Was machen wir mit denen?

51:33.930 --> 51:35.070
Und da machen wir vorher eine Pause.

52:23.180 --> 52:25.420
Von 3 und 4 nur in erster Aufnahme.

52:29.880 --> 52:33.400
Der ist, nein, nicht sehr groß.

53:09.080 --> 53:10.720
Darf ich Sie bitten, Platz zu nehmen?

54:02.270 --> 54:03.650
Meine Damen und Herren,

54:09.300 --> 54:11.100
nach den ganzen Zahlen kommen die Brüche.

54:13.920 --> 54:16.240
Oder allgemeiner die reellen Zahlen.

54:18.860 --> 54:23.860
Und nach der Vorrede ist klar, von reellen Zahlen verabschiedet sich

54:23.860 --> 54:25.100
die Informatik sofort.

54:25.840 --> 54:29.340
Sie hat nämlich nur endlich viele Bits zur Verfügung, um solche Zahlen

54:29.340 --> 54:30.040
darzustellen.

54:30.740 --> 54:33.380
Und mit endlich vielen Bits kann ich immer nur gemeine Brüche

54:33.380 --> 54:33.860
darstellen.

54:34.840 --> 54:40.760
Daher heißt der Datentyp, den wir für reelle Zahlen haben, auch nicht

54:40.760 --> 54:43.080
Reell oder so etwas ähnliches.

54:43.260 --> 54:52.400
Sondern er heißt Real oder Float oder abgekürzt FLT.

54:54.820 --> 54:59.620
Und mit diesem Datentyp kann ich mit endlich vielen Bits immer nur

54:59.620 --> 55:00.920
gemeine Brüche darstellen.

55:01.880 --> 55:07.320
Auch gemeine Brüche sind aber sehr ärgerlich.

55:07.740 --> 55:13.860
Denn wenn ich im Dualsystem arbeite, dann ist von vornherein klar, ich

55:13.860 --> 55:17.540
kann ein Halb, ein Viertel, ein Achtel, ein Sechzehntel und so weiter

55:17.540 --> 55:19.040
exakt darstellen.

55:19.880 --> 55:23.940
Und alles andere, was ich produzieren kann, sind periodische Brüche.

55:26.060 --> 55:28.480
Und periodische Brüche sind bekanntlich unendlich lang.

55:30.580 --> 55:35.060
Jetzt könnte ich mir also einen Trick einfallen lassen, mithilfe derer

55:35.060 --> 55:39.520
ich dann das Überstreichen der Periode irgendwie kennzeichne.

55:41.020 --> 55:43.340
Und könnte dafür Rechenregeln erfinden.

55:44.120 --> 55:46.720
Das hat man aber nicht gemacht, sondern man hat zu ganz anderen

55:46.720 --> 55:47.980
Hilfsmitteln gegriffen.

55:48.620 --> 55:54.620
Da ist zunächst einmal das Hilfsmittel zu sagen, wir haben eine Zahl,

55:54.620 --> 56:01.560
ich nehme mal wieder meine 9 von vorhin, also 1001.

56:03.180 --> 56:10.220
Aber jetzt denke ich mir, dass da ein Komma oder ein Punkt drin ist,

56:10.580 --> 56:11.860
zum Beispiel an dieser Stelle.

56:14.240 --> 56:15.600
Und was wäre das dann für eine Zahl?

56:25.920 --> 56:27.140
Nun, das wäre eine 1.

56:28.480 --> 56:34.800
Ein Halb ist mit 0 belegt, ein Viertel ist mit 0 belegt, ein Achtel

56:34.800 --> 56:38.040
ist mit 1 belegt, also habe ich offensichtlich 9 Achtel.

56:41.320 --> 56:45.580
An welcher Stelle ich das Komma reinsetze, ist belanglos.

56:46.440 --> 56:51.660
Ich könnte genauso gut sagen, das ganze Ding muss so interpretiert

56:51.660 --> 56:59.870
werden, und dann wäre das offensichtlich die Zahl 2 plus ein Viertel.

57:06.200 --> 57:08.160
Und wie gesagt, das Komma wird nicht geschrieben.

57:10.360 --> 57:11.380
Das muss man sich denken.

57:12.520 --> 57:16.160
Das ist das, was man in der sogenannten Festpunktdarstellung tut.

57:16.840 --> 57:21.720
Die Zahlen werden dargestellt wie ganze Zahlen, nur habe ich als

57:21.720 --> 57:27.340
unteren Anfangspunkt der Summierung jetzt nicht mehr 0, sondern

57:27.340 --> 57:29.720
irgendeine Größe minus C.

57:30.820 --> 57:34.360
Also an dieser Stelle wäre das minus 3 gewesen, für diese Zahl wäre es

57:34.360 --> 57:35.380
minus 2 gewesen.

57:37.560 --> 57:41.840
Festpunktdarstellung ist nicht sehr weit verbreitet im normalen

57:41.840 --> 57:45.660
Rechnen, kommt aber in der technischen Anwendung ungeheuer häufig vor.

57:47.100 --> 57:52.280
Wenn immer ich Messwerte erfasse, habe ich meistens wegen der

57:52.280 --> 57:56.020
beschränkten Messgenauigkeit nur endlich viele Bits, die ich als

57:56.020 --> 57:57.140
Ergebnis liefern kann.

57:58.660 --> 58:02.520
Und je nachdem, wie das zu interpretieren ist, kommt dabei dann, wenn

58:02.520 --> 58:07.160
es als Zahlwert interpretiert wird, eine Festpunktzahl heraus, bei der

58:07.160 --> 58:11.900
ich ganz genau weiß, an welcher Stelle das Komma eingesetzt werden

58:11.900 --> 58:12.220
muss.

58:12.980 --> 58:19.520
Nun, im Sinne der Internationalisierung haben die Deutschen sich an

58:19.520 --> 58:24.280
dieser Stelle von ihrem Dezimalkomma oder Dualkomma verabschiedet und

58:24.280 --> 58:29.040
schreiben normalerweise in der Informatik hier, wie die Amerikaner und

58:29.040 --> 58:30.500
viele andere Länder, einen Punkt.

58:30.880 --> 58:33.880
Und daher rede ich also nicht von einer Festkommadarstellung, sondern

58:33.880 --> 58:35.200
einer Festpunktdarstellung.

58:40.320 --> 58:45.480
Damit kann ich also ein bisschen was tun, aber jetzt bin ich auf sehr

58:45.480 --> 58:47.100
wenige Sprüche beschränkt.

58:48.780 --> 58:53.240
Und wenn ich als Physiker anfangen will, mit irgendwelchen

58:53.240 --> 58:56.640
Naturkonstanten, so in der Größenordnung 10 hoch minus 10 oder 10 hoch

58:56.640 --> 58:59.560
minus 20 zu rechnen, dann komme ich natürlich überhaupt nicht hin.

59:01.140 --> 59:04.520
Dann würde ich hier nur endlos lange Folgen von Nullen produzieren,

59:04.780 --> 59:07.040
bis da ganz hinten irgendwann mal was passiert.

59:10.120 --> 59:14.820
Infolgedessen kam dann ein intelligenter Mensch, der uns noch öfters

59:14.820 --> 59:16.380
begegnen wird, nämlich Herr Zuse.

59:18.760 --> 59:22.100
Das ist der Erfinder der ersten programmgesteuerten Rechner.

59:23.240 --> 59:26.720
1937 auf die Idee, ich mache das anders.

59:27.280 --> 59:33.280
Ich schreibe meine Brüche in der Form, die ich hier angegeben habe.

59:34.700 --> 59:37.900
M mal Basis hoch irgendeinen Exponenten.

59:39.620 --> 59:49.820
Und für die Größe M, wir nennen sie Mantisse, lege ich fest, da sind

59:49.820 --> 59:53.100
nur die Werte zwischen 0 und B erlaubt.

59:53.220 --> 59:56.620
Also 0 bis zur Basis, die Basis ausschließlich.

59:58.780 --> 01:00:02.040
Und jetzt bin ich in der Lage, plötzlich auch sehr große Zahlen oder

01:00:02.040 --> 01:00:06.440
sehr kleine Zahlen darzustellen, weil sich das nur darin äußert, was

01:00:06.440 --> 01:00:09.320
ich für einen Wert habe hier für dieses E.

01:00:11.900 --> 01:00:18.040
Und die Beschränkung auf 0, kleiner gleich M, kleiner B, sagt, wenn du

01:00:18.040 --> 01:00:28.360
für die Mantisse M irgendeine Ziffernfolge hast, 1, 0, 1, 1, 0 und so

01:00:28.360 --> 01:00:34.900
weiter, dann ist ganz automatisch klar, wo hier der Punkt zu denken

01:00:34.900 --> 01:00:36.060
ist oder das Komma.

01:00:36.660 --> 01:00:38.540
Nämlich immer vor der ersten Ziffer.

01:00:41.680 --> 01:00:42.860
Das ist genau die Darstellung.

01:00:47.670 --> 01:00:49.150
So was nennt man Gleitpunktdarstellung.

01:00:51.530 --> 01:00:55.130
Manche Leute reden dann von Fließkomma oder Fließpunkt oder sonst

01:00:55.130 --> 01:00:55.850
irgendetwas.

01:00:58.330 --> 01:01:00.510
Der technische Begriff heißt Gleitpunkt.

01:01:02.270 --> 01:01:04.330
B ist eine ganze Zahl.

01:01:05.310 --> 01:01:06.770
E ist eine ganze Zahl.

01:01:08.050 --> 01:01:12.030
M ist ein Bruch, der also seinen Punkt da vorne hat.

01:01:13.570 --> 01:01:17.330
So was kann ich auch hinschreiben im Dezimalsystem, indem ich B gleich

01:01:17.330 --> 01:01:18.050
10 wähle.

01:01:18.530 --> 01:01:21.850
Und die typischen Darstellungen sind dann hier als Beispiel angegeben.

01:01:22.430 --> 01:01:28.070
Entweder ich schreibe den Exponenten überhaupt nicht hin.

01:01:29.590 --> 01:01:31.990
Mal 10 hoch 0 lasse ich aus.

01:01:33.530 --> 01:01:34.750
Oder ich schreibe ihn hin.

01:01:35.210 --> 01:01:40.930
Und dann schreibe ich statt 10 hoch den Buchstaben großes E oder

01:01:40.930 --> 01:01:44.410
kleines E und anschließend den Exponenten.

01:01:45.470 --> 01:01:48.510
Also das ist die selbe Zahl wie hier vorne.

01:01:49.130 --> 01:01:58.790
Nur jetzt in einer Darstellung, bei der ich also den Punkt mir vor der

01:01:58.790 --> 01:02:00.070
ersten Ziffer gedacht habe.

01:02:00.690 --> 01:02:03.450
Und da habe ich viele weitere solche Darstellungen, die immer noch die

01:02:03.450 --> 01:02:04.390
gleiche Zahl darstellen.

01:02:04.870 --> 01:02:06.810
Also ich kann auch mal 10 hoch 2 schreiben.

01:02:07.150 --> 01:02:09.130
Da muss ich halt da vorne noch eine 0 hinzufügen.

01:02:09.130 --> 01:02:16.570
Also dasselbe Zahlwert kann als Gleitpunktzahl auf verschiedenste Art

01:02:16.570 --> 01:02:17.890
und Weise dargestellt werden.

01:02:20.510 --> 01:02:26.330
Gleitpunktzahlen haben, wie Sie am Freitag lernen werden, allerdings

01:02:26.330 --> 01:02:30.350
nicht nur den Haken, dass da mehrere Darstellungen existieren, sondern

01:02:30.350 --> 01:02:35.210
sie haben bei Subtraktion und auch bei Division noch eine Reihe

01:02:35.210 --> 01:02:37.130
weiterer sehr ärgerliche Eigenschaften.

01:02:37.770 --> 01:02:46.030
Nämlich, dass dann, wenn Sie am Anfang, sagen wir, 56 Bit zur

01:02:46.030 --> 01:02:50.690
Verfügung hatten oder 53 für die Mantisse und jetzt eine fast gleich

01:02:50.690 --> 01:02:55.370
große Zahl abziehen, dann haben Sie zum Schluss nur noch ganz wenige

01:02:55.370 --> 01:02:57.130
Bits übrig, die signifikant sind.

01:02:59.090 --> 01:03:01.170
Und vorne steht eine große Menge 0.

01:03:03.810 --> 01:03:07.050
Das führt zu Ungenauigkeiten bei der Gleitpunktrechnung, wie wir sehen

01:03:07.050 --> 01:03:07.350
werden.

01:03:09.450 --> 01:03:11.370
Und außerdem ist das eigentlich unerwünscht.

01:03:11.830 --> 01:03:15.250
Und in Folge dessen ist das, was man normalerweise benutzt, sogenannte

01:03:15.250 --> 01:03:22.110
normalisierte Gleitpunktdarstellungen, bei denen verlangt wird, dass M

01:03:22.110 --> 01:03:25.470
nicht nach unten beschränkt ist durch 0, sondern beschränkt ist durch

01:03:25.470 --> 01:03:25.990
1.

01:03:25.990 --> 01:03:32.030
In dieser Darstellung heißt das, die Mantisse muss auf jeden Fall nach

01:03:32.030 --> 01:03:34.590
dem gedachten Punkt mit einer 1 beginnen.

01:03:35.610 --> 01:03:36.910
Sie kann nicht mit einer 0 beginnen.

01:03:38.450 --> 01:03:41.610
Das hier ist eine nicht normalisierte Darstellung im Dezimalsystem.

01:03:42.230 --> 01:03:44.570
Das ist eine normalisierte Darstellung im Dezimalsystem.

01:03:48.940 --> 01:03:52.640
Und die üblichen Rechenoperationen, egal was Sie machen, Addition,

01:03:52.760 --> 01:03:56.900
Subtraktion, Multiplikation, Division, laufen dementsprechend so ab.

01:03:57.380 --> 01:04:01.060
Voraussetzung, ich habe zwei normalisierte Gleitpunktzahlen.

01:04:02.440 --> 01:04:04.400
Dann führe die Operation durch.

01:04:06.020 --> 01:04:08.860
Und dann normalisiere ich das Ergebnis.

01:04:10.320 --> 01:04:14.520
Und normalisieren des Ergebnisses heißt, rücke, falls da vorne Nullen

01:04:14.520 --> 01:04:19.360
sind im Ergebnis, die Mantisse nach vorne, bis du auf eine 1 gekommen

01:04:19.360 --> 01:04:19.760
bist.

01:04:20.460 --> 01:04:25.080
Und die Anzahl der Stellen, die du nach vorne gerückt hast, die zähle

01:04:25.080 --> 01:04:28.100
hinterher zum Exponenten dazu.

01:04:30.560 --> 01:04:32.280
Oder zieh sie ab, je nachdem.

01:04:34.420 --> 01:04:37.380
Das ist also eine normalisierte Darstellung.

01:04:40.100 --> 01:04:48.920
Und von diesen Darstellungen hat es in den vergangenen 50 Jahren so

01:04:48.920 --> 01:04:52.040
viele verschiedene Variationen gegeben, wie es Rechnerhersteller gab.

01:04:52.900 --> 01:04:56.660
Jeder hatte seinen eigenen Stiefel, wie er Gleitpunktzahlen

01:04:56.660 --> 01:04:57.380
realisierte.

01:04:58.340 --> 01:05:01.840
Das war sehr unangenehm, weil man damit also Gleitpunktzahlen nicht

01:05:01.840 --> 01:05:03.780
zwischen verschiedenen Rechnern austauschen konnte.

01:05:03.780 --> 01:05:12.580
Und dieses Problem hat sich die amerikanische IEEE angenommen 1985 und

01:05:12.580 --> 01:05:20.560
hat einen internationalen Standard verabschiedet, 754, der ein für

01:05:20.560 --> 01:05:24.140
alle Mal festgelegt hat, wie solche Zahlen aussehen sollen.

01:05:24.540 --> 01:05:28.440
Und heute finden Sie eigentlich nur noch Rechner, die diesen Standard

01:05:28.440 --> 01:05:29.000
benutzen.

01:05:29.500 --> 01:05:32.060
Und jetzt sehen Sie also genau, wie das dargestellt wird.

01:05:32.060 --> 01:05:39.700
Es gibt nach IEEE 754 insgesamt drei verschiedene Darstellungen,

01:05:40.440 --> 01:05:45.080
nämlich eine mit 32 Bit, eine mit 64 Bit und eine mit 80 Bit.

01:05:45.460 --> 01:05:47.180
Auf die 80 Bit gehe ich hier nicht ein.

01:05:48.100 --> 01:05:55.920
Bei der 32 Bit Darstellung schreibt man in die 32 Bit am Anfang das

01:05:55.920 --> 01:06:00.160
Vorzeichen und hinterher kommt für die Mantisse der Betrag.

01:06:00.160 --> 01:06:03.980
Jetzt sehen wir also die Negativdarstellung mit Vorzeichen und Betrag.

01:06:05.940 --> 01:06:10.520
Dann schreibe ich an der Stelle den Exponenten und ich muss alles

01:06:10.520 --> 01:06:11.160
beschränken.

01:06:11.300 --> 01:06:14.500
Für den Exponenten sehe ich insgesamt 8 Bit vor.

01:06:15.060 --> 01:06:19.180
Da der Exponent auch negativ werden kann, heißt das, dass ich die

01:06:19.180 --> 01:06:24.040
Zahlwerte von minus 128 bis plus 128 zur Verfügung habe.

01:06:25.740 --> 01:06:29.280
Der Exponent wird grundsätzlich zur Basis 2 gebildet.

01:06:30.280 --> 01:06:39.880
Also kann ich Zahlen darstellen zwischen 2 hoch minus 128 mal Mantisse

01:06:39.880 --> 01:06:44.100
und 2 hoch plus 127 mal Mantisse.

01:06:45.140 --> 01:06:48.640
Und für die Mantisse sehe ich 23 Bit vor.

01:06:51.420 --> 01:06:57.480
Und wenn Sie also eine Zahl haben, die sich in den ersten 23 Bit nicht

01:06:57.480 --> 01:07:01.060
von einer anderen Zahl unterscheidet, dann tut es mir leid, ich kann

01:07:01.060 --> 01:07:04.360
mit dem Rechner in dieser Darstellung nicht sehen, dass diese Zahlen

01:07:04.360 --> 01:07:05.140
verschieden sind.

01:07:08.150 --> 01:07:09.110
Das ist die Konklusion.

01:07:10.870 --> 01:07:15.730
Ich habe eine zweite Darstellung, die arbeitet mit 64 Bit.

01:07:16.070 --> 01:07:17.810
Wieder 1 Bit für das Vorzeichen.

01:07:17.810 --> 01:07:20.010
Der Exponent hat jetzt 11 Bit.

01:07:21.470 --> 01:07:24.650
Und für die Mantisse habe ich 52 Bit zur Verfügung.

01:07:25.150 --> 01:07:30.350
Aber die Eigenschaft, dass Zahlen, die in den ersten so und so viel

01:07:30.350 --> 01:07:35.870
stellen, hier jetzt an 52 identisch sind, nicht unterscheidbar sind,

01:07:35.950 --> 01:07:36.710
die bleibt erhalten.

01:07:41.240 --> 01:07:46.460
Die Darstellung hat verschiedene positive wie negative Eigenschaften.

01:07:47.720 --> 01:07:51.960
Ich habe also wieder mein Problem, dass es zwei verschiedene Nullen

01:07:51.960 --> 01:07:52.340
gibt.

01:07:52.740 --> 01:07:54.100
Eine positive und eine negative.

01:07:57.390 --> 01:08:03.090
Aber ich habe noch andere Möglichkeiten, die ich jetzt nutzen kann.

01:08:04.810 --> 01:08:08.390
Denn außer der positiven und negativen Null, dargestellt durch

01:08:08.390 --> 01:08:14.690
Exponent gleich Null und Mantisse gleich Null, hätte ich natürlich

01:08:14.690 --> 01:08:15.590
noch weitere Nullen.

01:08:15.590 --> 01:08:20.950
Wenn immer die Mantisse Null ist, dann ist Null mal b hoch beliebiger

01:08:20.950 --> 01:08:22.730
Exponent natürlich Null.

01:08:24.290 --> 01:08:27.190
Das nutzt man, um noch ganz andere Sachen darzustellen.

01:08:27.630 --> 01:08:29.670
Zum Beispiel kann ich jetzt unendlich darstellen.

01:08:31.350 --> 01:08:36.390
Die Konvention dafür lautet, wenn der Exponent den Wert 255 annimmt

01:08:36.390 --> 01:08:39.590
und die Mantisse Null ist, dann ist das nicht eine Null, sondern das

01:08:39.590 --> 01:08:41.530
ist eine Darstellung von unendlich.

01:08:41.530 --> 01:08:44.770
Und je nach Vorzeichen ist das also Minus-unendlich oder Plus

01:08:44.770 --> 01:08:45.190
-unendlich.

01:08:47.890 --> 01:08:55.090
Ja, und wenn der Exponent einen anderen Wert hat als 255 und die

01:08:55.090 --> 01:09:00.050
Mantisse Null ist, was mache ich dann?

01:09:00.730 --> 01:09:03.370
Dann stelle ich fest, das ist keine gültige Zahl.

01:09:05.590 --> 01:09:06.590
Not a number.

01:09:08.150 --> 01:09:12.270
Und das ist ebenfalls sehr günstig, denn das bedeutet, wenn Sie an

01:09:12.270 --> 01:09:18.450
irgendeiner Stelle beispielsweise ausrechnen, dummerweise 1 dividiert

01:09:18.450 --> 01:09:22.610
durch Null, was kommt da raus?

01:09:23.890 --> 01:09:24.970
Na, das ist unzulässig.

01:09:26.470 --> 01:09:28.050
Jetzt könnten Sie die Rechnung abbrechen.

01:09:30.110 --> 01:09:31.610
Sagen, das darfst du nicht tun.

01:09:33.010 --> 01:09:34.910
Das ist eine der möglichen Reaktionen.

01:09:34.910 --> 01:09:38.730
Sie können aber auch sagen, ja, das Ergebnis kenne ich, das ist keine

01:09:38.730 --> 01:09:39.130
Zahl.

01:09:40.750 --> 01:09:46.750
Ich liefere also Not a number dargestellt durch irgendeinen Exponenten

01:09:46.750 --> 01:09:53.050
und Mantisse Null als Ergebnis ab und sorge dafür, und das tut die

01:09:53.050 --> 01:09:55.990
Hardware unserer Rechner heute auch, wenn immer Sie eine weitere

01:09:55.990 --> 01:09:59.730
Rechenoperation machen, bei der einer der Operanten Not a number ist,

01:09:59.730 --> 01:10:04.090
dann kommt wieder keine Zahl raus.

01:10:05.150 --> 01:10:07.050
Also die Eigenschaft Not a number bleibt erhalten.

01:10:08.690 --> 01:10:12.570
Und auf die Art und Weise können Sie Rechnungen durchführen, die sonst

01:10:12.570 --> 01:10:14.750
eigentlich vorzeitig abgebrochen werden müssen.

01:10:15.330 --> 01:10:20.030
Das ist häufig nützlich, deshalb, weil Sie in solchen Rechenvorgängen

01:10:20.030 --> 01:10:24.070
unter Umständen erst ganz spät entscheiden, brauche ich den Zahlwert

01:10:24.070 --> 01:10:26.350
überhaupt oder brauche ich ihn nicht?

01:10:28.730 --> 01:10:32.930
Und erst wenn Sie feststellen, dass Sie ihn wirklich brauchen, müssen

01:10:32.930 --> 01:10:34.170
Sie eine Fehlermeldung geben.

01:10:34.450 --> 01:10:36.610
Wenn Sie ihn gar nicht brauchen, schmeißen Sie ihn einfach weg, egal,

01:10:36.870 --> 01:10:38.210
worauf da gerechnet worden ist.

01:10:40.810 --> 01:10:43.190
Soviel zum Thema Gleitpunktzahlen.

01:10:43.590 --> 01:10:47.730
Die Freitagübungen werden Ihnen dann wieder vorführen, wie man das

01:10:47.730 --> 01:10:52.190
alles rechnet und wie man hier konvertiert.

01:10:53.130 --> 01:10:57.770
Und daher überspringe ich das jetzt.

01:11:00.490 --> 01:11:07.810
Das endet für den Moment meine Überlegungen zum Thema, auf welche Art

01:11:07.810 --> 01:11:09.890
und Weise stellen wir Zahlen dar.

01:11:10.990 --> 01:11:15.350
Und wir lernen also offensichtlich verschiedene Konzepte.

01:11:15.350 --> 01:11:20.570
Erstens BCD-Codierung, zweitens Dual-Codierung, drittens

01:11:20.570 --> 01:11:24.870
unterschiedliche Formen der Darstellung negativer Zahl, viertens das

01:11:24.870 --> 01:11:28.170
Konzept Gleitkommazahl.

01:11:32.290 --> 01:11:38.130
Kommen wir als nächstes zum Thema komprimierende

01:11:38.130 --> 01:11:41.850
Informationsverarbeitung.

01:11:42.310 --> 01:11:45.630
Das interessiert insbesondere alle Telekommunikationsleute sehr.

01:11:48.440 --> 01:11:53.040
Denn je weniger Bit ich übertragen muss, um eine gegebene Information

01:11:53.040 --> 01:11:58.220
wiederzugeben, desto schneller geht das natürlich.

01:11:59.800 --> 01:12:02.080
Und desto weniger Leitungskapazität brauche ich.

01:12:04.000 --> 01:12:08.980
Das hat man sehr früh genauer untersucht.

01:12:08.980 --> 01:12:14.260
Und der wesentliche Mann, der sich hier verdient gemacht hat, ist ein

01:12:14.260 --> 01:12:23.720
Herr namens Shannon, der um 1945 anfing nachzurechnen, was ist denn

01:12:23.720 --> 01:12:28.040
die kleinste Anzahl von Bits, mit der ich eine gegebene Information

01:12:28.040 --> 01:12:29.000
darstellen kann.

01:12:31.260 --> 01:12:35.720
Und zu diesem Zweck ging er aus von der Vorstellung, ich habe einen

01:12:35.720 --> 01:12:38.680
endlichen Zeichenvorrat, also zum Beispiel meine Binärzeichen.

01:12:41.660 --> 01:12:47.200
Und jetzt frage ich mich, wie ich eine gegebene Information darstellen

01:12:47.200 --> 01:12:47.480
kann.

01:12:48.160 --> 01:12:52.400
Nun, mit einem endlichen Zeichenvorrat kann ich immer nur endlich

01:12:52.400 --> 01:12:54.460
viele verschiedene Alternativen darstellen.

01:12:54.460 --> 01:13:00.280
Wenn ich n Bit zur Verfügung habe, dann heißt das, dass ich insgesamt

01:13:00.280 --> 01:13:05.500
2 hoch n minus 1 verschiedene Zeichen bilden kann, haben wir ja vorhin

01:13:05.500 --> 01:13:06.140
ausgerechnet.

01:13:10.660 --> 01:13:15.200
Und infolgedessen kann ich die Frage, welche Information wird

01:13:15.200 --> 01:13:18.280
dargestellt, in ein Entscheidungsproblem ummünzen.

01:13:19.100 --> 01:13:23.100
Welche von den 2 hoch n minus 1 Möglichkeiten liegt denn vor?

01:13:26.480 --> 01:13:31.300
Um zwischen 2 hoch n minus 1 Möglichkeiten zu unterscheiden, kann ich

01:13:31.300 --> 01:13:32.500
folgendes mir überlegen.

01:13:33.000 --> 01:13:37.420
Am Anfang sage ich, da liegt irgendein Wert vor, ich weiß aber gar

01:13:37.420 --> 01:13:37.840
nichts.

01:13:40.260 --> 01:13:43.980
Und jetzt treffen wir eine Entscheidung, beispielsweise ist das erste

01:13:43.980 --> 01:13:46.280
Bit 0 oder 1.

01:13:46.280 --> 01:13:48.920
Es gibt zwei Möglichkeiten.

01:13:50.940 --> 01:13:52.920
Dann treffen wir die nächste Entscheidung.

01:13:58.190 --> 01:13:59.870
Ist das zweite Bit 0 oder 1?

01:14:00.850 --> 01:14:02.130
Und so geht das weiter.

01:14:02.950 --> 01:14:07.530
Und wie viele Entscheidungen treffe ich, bis ich all meine 2 hoch n

01:14:07.530 --> 01:14:11.510
minus 1 Möglichkeiten untersucht habe?

01:14:14.110 --> 01:14:15.190
N Stück.

01:14:18.930 --> 01:14:26.430
N ist im Zweierlogarithmensystem der Logarithmus von 2 hoch n.

01:14:31.460 --> 01:14:34.400
Und wenn es jetzt noch dazukommen sollte, dass einige der 2 hoch n

01:14:34.400 --> 01:14:40.160
minus 1 Möglichkeiten unzulässig sein sollten, dann könne mich unter

01:14:40.160 --> 01:14:41.960
Umständen sogar noch mit etwas weniger auf.

01:14:43.000 --> 01:14:48.780
Und dementsprechend definiert der Shannon den Entscheidungsgehalt für

01:14:48.780 --> 01:14:54.000
die Information, die ich mit n Zeichen darstellen kann, als die

01:14:54.000 --> 01:14:58.820
kleinste Zahl von Entscheidungen, mit denen man feststellen kann, was

01:14:58.820 --> 01:14:59.960
denn hier eigentlich vorliegt.

01:15:01.020 --> 01:15:07.260
Und diese kleinste Zahl, h, ist also 1 für n gleich 2 im Binärcode.

01:15:07.260 --> 01:15:13.720
Und allgemein gilt h gleich Logarithmus Dualis von n, für den Fall,

01:15:14.040 --> 01:15:18.420
dass alle 2 hoch n minus 1 Möglichkeiten zulässig sind.

01:15:19.040 --> 01:15:21.680
Und wenn die nicht alle zulässig sind, dann habe ich hier sogar

01:15:21.680 --> 01:15:22.380
kleiner gleich.

01:15:24.520 --> 01:15:29.760
Und den Entscheidungsgehalt, den messe ich jetzt ebenfalls mit Bits,

01:15:29.880 --> 01:15:31.520
aber diesmal schreibe ich die Bits klein.

01:15:32.880 --> 01:15:41.920
Also wir merken uns, wenn eine Größe n Bits großgeschrieben hat, dann

01:15:41.920 --> 01:15:46.560
heißt das, wir haben sie codiert mit n Zeichen im Binärcode.

01:15:48.720 --> 01:15:55.120
Wenn eine Größe einen Entscheidungsgehalt von n Bits hat, dann heißt

01:15:55.120 --> 01:16:00.420
das, dass wir im Baum n Entscheidungen treffen müssen, um zu

01:16:00.420 --> 01:16:03.140
differenzieren, welche der verschiedenen Möglichkeiten tatsächlich

01:16:03.140 --> 01:16:03.620
vorliegen.

01:16:04.820 --> 01:16:07.020
Das ist der Unterschied zwischen den kleinen und den großen Bits.

01:16:07.140 --> 01:16:08.020
Gibt es Fragen dazu?

01:16:09.700 --> 01:16:11.140
Muss man einmal begriffen haben.

01:16:12.520 --> 01:16:14.400
Und anschließend muss man die Rechtschreibung beherrschen.

01:16:16.260 --> 01:16:18.120
Man darf Groß- und Kleinschreibung nicht verwechseln.

01:16:28.700 --> 01:16:29.460
Ja,

01:16:32.840 --> 01:16:37.580
ausgehend von diesem Begriff des Entscheidungsgehalts, hat Shannon

01:16:37.580 --> 01:16:42.440
dann etwas definiert, was Informationstheorie heißt.

01:16:43.120 --> 01:16:47.640
Und jetzt begegnet uns das Wort Information in einer ganz anderen

01:16:47.640 --> 01:16:51.280
Weise, als das, was ich bisher gesagt habe.

01:16:51.540 --> 01:16:55.120
Bisher habe ich gesagt, Information entsteht durch die Interpretation

01:16:55.120 --> 01:16:55.840
einer Nachricht.

01:16:55.840 --> 01:16:58.000
Das sage ich auch weiterhin.

01:16:58.360 --> 01:17:01.900
Die Informatik legt diesen Informationsbegriff zugrunde.

01:17:02.860 --> 01:17:09.440
Für technische Systeme, insbesondere der Datenübertragung, gibt es

01:17:09.440 --> 01:17:12.860
aber dann die sogenannte Informationstheorie, die sich ausschließlich

01:17:12.860 --> 01:17:18.600
mit der Frage befasst, was ist der Entscheidungsgehalt von

01:17:18.600 --> 01:17:19.680
irgendwelchen Codierungen?

01:17:20.800 --> 01:17:22.100
Und wie kann ich den manipulieren?

01:17:22.100 --> 01:17:27.660
Und der wichtigste Begriff, der dann eben Information oder Entropie

01:17:27.660 --> 01:17:32.900
genannt wurde, ist diese Größe h von p.

01:17:33.260 --> 01:17:48.960
Wenn ich irgendeinen Wert p habe, mit p verschiedenen Bits

01:17:48.960 --> 01:17:55.100
großgeschrieben, dann kann ich feststellen, wie häufig kommen denn die

01:17:55.100 --> 01:18:01.320
einzelnen Bit-Kombinationen vor und bildet diese Summe, die hat ein

01:18:01.320 --> 01:18:05.780
Minuszeichen davor, ist aber in Wahrheit positiv, weil die pis alle

01:18:05.780 --> 01:18:12.040
zwischen 0 und 1 liegen und daher Logarithmus dualis von pi negativ

01:18:12.040 --> 01:18:12.380
ist.

01:18:14.460 --> 01:18:19.920
Ich multipliziere also für die einzelnen Wahrscheinlichkeiten, die ich

01:18:19.920 --> 01:18:25.380
habe, den Logarithmus dualis mit der Wahrscheinlichkeit und summiere

01:18:25.380 --> 01:18:29.940
über die ganze Geschichte, das heißt, ich bilde den Erwartungswert in

01:18:29.940 --> 01:18:33.380
der Wahrscheinlichkeitsrechnung und das bezeichne ich als die

01:18:33.380 --> 01:18:44.320
Information oder Entropie, die ich irgendwelchen Codes der Länge m, in

01:18:44.320 --> 01:18:46.380
diesem Fall Bits, zuordne.

01:18:51.120 --> 01:18:54.700
Die Informationstheorie und der Begriff der Information ist sehr

01:18:54.700 --> 01:18:59.200
wichtig, wenn wir technische Codierungen wählen, z.B.

01:18:59.460 --> 01:19:06.540
für natürliche Sprache und dabei dann überlegen wollen, wie kann ich

01:19:06.540 --> 01:19:10.180
erreichen, dass der Code möglichst kurz ist.

01:19:10.920 --> 01:19:15.080
Einfachstes Beispiel, vielen Leuten bekannt, ist der uralte Morse

01:19:15.080 --> 01:19:15.480
-Code.

01:19:16.200 --> 01:19:20.960
Der ist nach amerikanischen Regeln und der amerikanischen

01:19:20.960 --> 01:19:26.140
Wortstatistik so festgelegt, dass sie Wörter und Sätze der englischen

01:19:26.140 --> 01:19:32.660
Sprache mit möglichst wenig Zeichen kurz oder lang übertragen können,

01:19:33.840 --> 01:19:38.320
weshalb also der Buchstabe E beispielsweise ein einzelnes kurzes

01:19:38.320 --> 01:19:44.100
Zeichen ist und die weniger häufig vorkommenden Zeichen haben

01:19:44.100 --> 01:19:46.000
dementsprechend wesentlich längere Codierungen.

01:19:46.860 --> 01:19:50.600
Wie solche Codierungen zustande kommen, ist ebenfalls Gegenstand der

01:19:50.600 --> 01:19:55.820
Übungen und wir werden also in den Übungsaufgaben eine ganze Reihe zu

01:19:55.820 --> 01:19:59.080
sogenannten Hofmann-Codes landen, die so etwas machen.

01:19:59.720 --> 01:20:05.860
Und das finden Sie dann auch als Rechenaufgaben.

01:20:08.650 --> 01:20:11.250
Ich habe bisher von Zeichenvorräten geredet.

01:20:15.460 --> 01:20:19.440
Wir würden natürlich also A bis Z eigentlich nicht als Zeichenvorrat

01:20:19.440 --> 01:20:21.560
bezeichnen, sondern als Alphabet.

01:20:22.740 --> 01:20:27.880
Und den Begriff Alphabet benutzen wir auch in der Informatik, aber der

01:20:27.880 --> 01:20:32.000
ganz wesentliche Punkt ist, wenn ich von einem Alphabet rede, dann

01:20:32.000 --> 01:20:36.220
meine ich grundsätzlich einen Zeichenvorrat, der die Eigenschaft hat,

01:20:36.300 --> 01:20:37.060
dass er geordnet ist.

01:20:37.160 --> 01:20:39.120
Ich kann also sagen, was vor wem kommt.

01:20:46.270 --> 01:20:48.610
Und ich habe hier ein Beispiel angegeben für einen solchen

01:20:48.610 --> 01:20:49.890
Zeichenvorrat.

01:20:49.890 --> 01:20:55.870
ISO steht für International Standard Organization, das heißt ein

01:20:55.870 --> 01:20:57.330
international normierter Code.

01:20:58.210 --> 01:21:04.910
Und da gibt es unter der Nummer 8859 eine ganze Reihe von solchen

01:21:04.910 --> 01:21:06.890
Alphabetdefinitionen.

01:21:10.050 --> 01:21:14.950
Mindestlich eins ist der eigentliche ursprüngliche Code, mit dem man

01:21:14.950 --> 01:21:20.530
Deutsch, alle westeuropäischen Sprachen, amerikanisch kodieren kann.

01:21:20.910 --> 01:21:23.970
Dann haben die Europäer den Euro eingeführt und den gab es natürlich

01:21:23.970 --> 01:21:24.730
in dem Code nicht.

01:21:26.370 --> 01:21:29.990
Und dann hat man eine neue Nummer erfunden, das ist 15, und die

01:21:29.990 --> 01:21:32.390
unterscheidet sich jetzt dadurch, dass an dieser Stelle das

01:21:32.390 --> 01:21:33.390
Eurozeichen vorkommt.

01:21:35.990 --> 01:21:37.990
Sonst ist das der Code 1.

01:21:40.090 --> 01:21:44.230
Es gibt aber genauso gut also arabische, griechische, hebräische,

01:21:44.430 --> 01:21:47.470
kyrillische Alphabete für diesen Zweck.

01:21:54.190 --> 01:22:05.490
An dieser Stelle, da war ein sogenanntes Currency Zeichen, was so

01:22:05.490 --> 01:22:06.810
ausgedruckt aussah.

01:22:07.650 --> 01:22:10.970
Und ich muss ehrlich gestehen, ich habe in 40 Jahren niemals gesehen,

01:22:11.430 --> 01:22:12.870
dass dieses Zeichen benutzt wurde.

01:22:13.090 --> 01:22:15.030
Also ich trauere dem nicht nach.

01:22:19.620 --> 01:22:19.960
Wie bitte?

01:22:30.720 --> 01:22:32.320
Vielleicht sollte ich noch mehr sagen.

01:22:32.420 --> 01:22:34.380
Diese Kodierung beginnt erst bei 2.0.

01:22:37.440 --> 01:22:39.900
Und das ist setezimal gezählt.

01:22:40.640 --> 01:22:42.580
Das heißt, die ersten 32 Zeichen fehlen.

01:22:43.360 --> 01:22:45.360
Und es fehlen noch eine Reihe weiterer Zeichen.

01:22:46.160 --> 01:22:52.360
Und das liegt nun daran, dass die ursprünglichen Konventionen, die man

01:22:52.360 --> 01:22:57.900
hier benutzte, sagte, wir lassen insgesamt 127 Zeichen zu.

01:22:59.360 --> 01:23:01.580
Das führt zum sogenannten ASCII-Code.

01:23:02.480 --> 01:23:08.300
Aber von diesen 127 Zeichen werden wir 32 Zeichen reservieren für

01:23:08.300 --> 01:23:11.300
Steuerungszwecke in der Datenübertragung und ähnliche Dinge.

01:23:12.170 --> 01:23:19.640
Also die Zeilenwechsel-Taste und ähnliche Dinge gehören dazu.

01:23:20.760 --> 01:23:23.060
Der Zwischenraum gehört nicht dazu.

01:23:23.160 --> 01:23:26.360
Das ist ein normales Zeichen und der liegt an dieser Position.

01:23:26.880 --> 01:23:29.620
Wenn wir ihn sichtbar machen wollen, dann schreiben wir ihn

01:23:29.620 --> 01:23:33.420
normalerweise mit einem solchen waagrechten Strich und zwei Häkchen

01:23:33.420 --> 01:23:33.700
dran.

01:23:34.440 --> 01:23:35.380
Das ist Zwischenraum.

01:23:42.620 --> 01:23:48.260
Und bei den 127 Zeichen, jetzt können Sie mit Ihren Kenntnissen

01:23:48.260 --> 01:23:50.320
überlegen, wie weit das geht.

01:23:56.180 --> 01:23:58.380
Das ist offensichtlich hier wesentlich mehr.

01:23:58.920 --> 01:23:59.680
Wie weit geht das?

01:24:17.000 --> 01:24:18.300
Hat irgendjemand eine Vorstellung?

01:24:31.660 --> 01:24:34.900
Bis zur Null.

01:24:38.830 --> 01:24:42.870
Das heißt, da habe ich noch einiges mehr drin.

01:24:43.410 --> 01:24:47.190
Und dann hat sich in der historischen Entwicklung als nächstes

01:24:47.190 --> 01:24:51.190
ergeben, dass man anschließend wieder 32 Zeichen ausgelassen hat.

01:24:52.350 --> 01:24:53.290
Die man nicht belegt hat.

01:24:57.110 --> 01:25:02.110
Und aus diesem Grunde ist zum Schluss eine Situation zustande

01:25:02.110 --> 01:25:04.190
gekommen, wie wir sie hier jetzt sehen.

01:25:04.190 --> 01:25:10.010
Dass also am Anfang alle möglichen Sonderzeichen kommen, dann die

01:25:10.010 --> 01:25:12.610
Ziffern, dann die großen und die kleinen Buchstaben.

01:25:15.250 --> 01:25:19.630
Und dann kommen hier wieder alle möglichen merkwürdigen Zeichen.

01:25:20.570 --> 01:25:23.450
Und dann kommen Buchstaben mit Akzenten.

01:25:24.470 --> 01:25:30.710
Und dieser Teil der ganzen Tabelle, insgesamt 32 Zeichen.

01:25:31.830 --> 01:25:34.950
An der Stelle toben sich auch heute noch die Hersteller aus.

01:25:36.050 --> 01:25:41.210
Also Apple hat in seinen internen Codes an der Stelle andere Zeichen

01:25:41.210 --> 01:25:42.430
stehen als Microsoft.

01:25:43.650 --> 01:25:46.290
Und die Linux-Systeme haben wieder andere Zeichen stehen.

01:25:46.890 --> 01:25:49.630
Also die Codierungen werden an dieser Stelle sehr undurchsichtig.

01:25:53.330 --> 01:25:55.550
Ich will aber im Augenblick nicht auf die Einzelheiten und die

01:25:55.550 --> 01:25:58.750
Struktur dieser Codierungen eingehen, sondern Ihnen nur an diesem

01:25:58.750 --> 01:26:01.730
Beispiel erläutern, was wir unter einem geordneten Zeichenvorrat

01:26:01.730 --> 01:26:02.090
verstehen.

01:26:04.970 --> 01:26:06.910
Damit komme ich heute zu meinem letzten Kapitel.

01:26:09.390 --> 01:26:15.210
Jetzt haben wir uns also mit Nachrichten und Informationen beschäftigt

01:26:15.210 --> 01:26:16.070
und mit Codierung.

01:26:17.130 --> 01:26:19.630
Wir leben angeblich in einer Wissensgesellschaft.

01:26:20.610 --> 01:26:28.190
Und angeblich verarbeitet die Informatik ja irgendwie Wissen oder

01:26:28.190 --> 01:26:29.390
arbeitet mit Wissen.

01:26:30.190 --> 01:26:32.910
Und daher möchten wir gar nicht wissen, was das eigentlich ist.

01:26:35.310 --> 01:26:42.670
Und die Informatik versteht unter Wissen Kenntnisse darüber, wie

01:26:42.670 --> 01:26:44.730
bestimmte Daten zu interpretieren sind.

01:26:45.890 --> 01:26:50.490
Also nicht das Datum selbst, nicht die Information, die rauskommt,

01:26:51.510 --> 01:26:55.230
sondern die Feststellung, wie sollst du denn das Datum interpretieren.

01:26:57.290 --> 01:27:00.190
Solches Wissen kommt in verschiedener Form vor.

01:27:01.890 --> 01:27:03.770
Die einfachste Form ist Faktenwissen.

01:27:04.630 --> 01:27:09.370
Sie haben einfach die Information, die durch ein bestimmtes Datum

01:27:09.370 --> 01:27:13.710
wiedergegeben wird, auswendig gelernt.

01:27:15.330 --> 01:27:20.850
Also Sie haben auswendig gelernt, um ein Beispiel fortzuführen, dass 1

01:27:20.850 --> 01:27:24.130
.001 die 9 ist.

01:27:25.570 --> 01:27:28.590
Mit dieser Kenntnis kommen Sie natürlich nicht sehr weit.

01:27:29.430 --> 01:27:34.030
Denn dann müssten Sie also jetzt die Codierung in sämtlicher Zahl

01:27:34.030 --> 01:27:34.910
auswendig lernen.

01:27:36.050 --> 01:27:38.590
Und das würde mit Faktenwissen prima funktionieren.

01:27:40.710 --> 01:27:44.430
Sinnvoller ist offensichtlich, dass wir stattdessen Prozedurales

01:27:44.430 --> 01:27:45.270
Wissen einsetzen.

01:27:45.730 --> 01:27:47.870
Wir kennen die Vorschrift, wie das gemacht wird.

01:27:49.170 --> 01:27:54.010
Und sind also in der Lage, jetzt vorwärts und rückwärts beliebige

01:27:54.010 --> 01:27:57.750
Zahlen im Zweiersystem zu codieren, weil wir wissen, mit welcher

01:27:57.750 --> 01:28:02.910
Vorschrift man die Codierung vornimmt, beziehungsweise wie man eine

01:28:02.910 --> 01:28:07.110
Codierung liest, um im Dezimalsystem das Ergebnis herauszufinden.

01:28:09.150 --> 01:28:14.030
An vielen Stellen spricht man beim Faktenwissen von sogenannten

01:28:14.030 --> 01:28:15.030
analytischen Wissen

01:28:20.490 --> 01:28:26.370
und nennt dann das Prozedurale Wissen stattdessen synthetisches

01:28:26.370 --> 01:28:26.710
Wissen.

01:28:26.710 --> 01:28:31.410
Es stellt sich heraus, dass interessanterweise der größte Teil der

01:28:31.410 --> 01:28:35.310
abendländischen Wissenschaft auf analytischem Wissen aufbaut.

01:28:35.970 --> 01:28:38.090
Seit Tausenden von Jahren.

01:28:38.930 --> 01:28:43.370
Es gibt sehr wenig Beispiele, wie zum Beispiel der Euclid'sche

01:28:43.370 --> 01:28:46.790
Algorithmus zur Berechnung des größten gemeinsamen Teilers oder

01:28:46.790 --> 01:28:53.550
ähnliche Dinge, die wirklich 2000 Jahre alt sind und Prozedurales

01:28:53.550 --> 01:28:54.430
Wissen darstellen.

01:28:55.470 --> 01:28:59.130
Das Kennzeichen der Informatiker ist aber gerade, dass sie das

01:28:59.130 --> 01:29:06.910
Prozedurale Wissen in den Vordergrund stellen und sich nicht mit der

01:29:06.910 --> 01:29:14.450
Frage aufhalten, auf welche Art und Weise lande ich auswendig, sondern

01:29:14.450 --> 01:29:17.830
stattdessen die Frage stellen, was ist eigentlich die Vorschrift, um

01:29:17.830 --> 01:29:20.830
ein bestimmtes Ergebnis zu erzielen und dieses Ergebnis dann

01:29:20.830 --> 01:29:21.550
weiterverarbeiten.

01:29:21.550 --> 01:29:25.930
Aber selbstverständlich müssen wir mit beiden Arten wiedergehen.

01:29:27.950 --> 01:29:32.950
Eine andere Dimension der Unterscheidung ist statisches Wissen und

01:29:32.950 --> 01:29:33.850
dynamisches Wissen.

01:29:34.890 --> 01:29:40.670
Statisches Wissen beschreibt zeitlich unveränderliche Gegenstände oder

01:29:40.670 --> 01:29:47.030
Sachverhalte und wenn ich das formalisiere, dann lande ich immer sehr

01:29:47.030 --> 01:29:48.110
schnell in der Mathematik.

01:29:51.030 --> 01:29:55.890
Kennzeichnend für die Mathematik ist, dass sie zwar also N

01:29:55.890 --> 01:30:00.210
-Dimensionale Räume und Vektorräume und ähnliche Dinge kennt, aber

01:30:00.210 --> 01:30:03.330
wenn sie fragen, und ist jetzt die erste oder zweite oder dritte

01:30:03.330 --> 01:30:08.110
Dimension die Zeit, kriegen sie keine Antwort.

01:30:08.290 --> 01:30:10.230
Zeit kommt in der Mathematik nicht vor.

01:30:11.210 --> 01:30:15.490
Die gibt es in der Physik und man kann sie natürlich

01:30:15.490 --> 01:30:18.930
reininterpretieren in die N-Dimensionalen Räume, aber in der

01:30:18.930 --> 01:30:20.350
Mathematik selbst kommt sie nicht vor.

01:30:21.470 --> 01:30:28.490
In der Informatik kommt sie vor und wir haben es also in den meisten

01:30:28.490 --> 01:30:35.930
Fällen zu tun mit zeitlich veränderlichen Gegenständen und das nennen

01:30:35.930 --> 01:30:38.370
wir dann dynamisches Wissen, wenn wir so etwas beschreiben.

01:30:39.810 --> 01:30:42.430
Das kann auch eine Folge von statischem Wissen sein.

01:30:43.910 --> 01:30:47.230
Und wenn wir die verschiedenen Modellbildungsverfahren unterscheiden,

01:30:47.690 --> 01:30:53.270
dann ist also Mathematik das geeignete Hilfsmittel, um statisches

01:30:53.270 --> 01:30:54.570
Wissen zu modellieren.

01:30:55.610 --> 01:31:00.090
Informatik ist für dynamisches Wissen meistens wesentlich besser

01:31:00.090 --> 01:31:04.130
geeignet, insbesondere weil dann die Mächtigkeit des prozeduralen

01:31:04.130 --> 01:31:05.210
Verfahrens zuschlägt.

01:31:06.170 --> 01:31:06.990
Letzter Punkt.

01:31:12.290 --> 01:31:14.870
Wie genau will ich eigentlich irgendetwas wissen?

01:31:17.530 --> 01:31:19.350
Also wir sind hier in einem Haus.

01:31:22.370 --> 01:31:24.730
Und jetzt erzählen Sie mir mal bitte, was ein Haus ist.

01:31:27.130 --> 01:31:30.710
Ist es also typisch für dieses Haus, dass es, ich weiß nicht wie

01:31:30.710 --> 01:31:33.450
viele, nehmen wir mal an, 847 Fenster hat?

01:31:33.450 --> 01:31:35.590
Ist das eine Eigenschaft von Haus?

01:31:37.090 --> 01:31:38.930
Oder kann man das Variabel wählen?

01:31:41.750 --> 01:31:43.290
Wie viele Türen muss es haben?

01:31:45.690 --> 01:31:49.670
Haben die Bürger von Schilder, als sie ein Haus ohne Türen baut, ein

01:31:49.670 --> 01:31:52.110
Haus gebaut oder bloß einen Kasten?

01:31:54.150 --> 01:31:56.650
Also die Frage, was sind eigentlich die Einzelheiten?

01:31:58.350 --> 01:32:01.610
Es stellt sich heraus, dass wir in der natürlichen Sprache sehr viele

01:32:01.610 --> 01:32:05.870
Kenntnisse haben, die wir nur ungenau wiedergeben können.

01:32:06.050 --> 01:32:11.070
Und das einfache Beispiel Haus ist schon ein Beispiel dafür, bei dem

01:32:11.070 --> 01:32:14.810
Sie sich sehr schwer tun, genau festzustellen, was da los ist.

01:32:15.450 --> 01:32:17.570
Und das kann man auf die Spitze treiben.

01:32:18.950 --> 01:32:21.070
Das wurde schon vor 2000 Jahren gemacht.

01:32:23.090 --> 01:32:29.830
Und da hat ein Herr in Millet, einer der Vorsokratiker unter den

01:32:29.830 --> 01:32:37.250
Philosophen, die Frage gestellt, wie viele Sandkörner brauchen wir

01:32:37.250 --> 01:32:39.150
eigentlich, damit wir einen Sandhaufen haben?

01:32:40.570 --> 01:32:45.130
Die nächste Frage lautet, wenn Sie mir eine Zahl nennst, also zum

01:32:45.130 --> 01:32:49.070
Beispiel 10.000, was hast du dann, wenn ich eins wegnehme?

01:32:49.070 --> 01:32:50.530
Hast du dann keinen Sandhaufen mehr?

01:32:55.700 --> 01:32:59.020
Und Sie sehen, die Frage kann man so gar nicht stellen und auch gar

01:32:59.020 --> 01:33:00.440
nicht so beantworten.

01:33:01.380 --> 01:33:06.360
Mit solchen unsicheren Dingen umzugehen, verlangt eine Logik, die was

01:33:06.360 --> 01:33:10.360
anderes liefert als die übliche zweibärtige Logik.

01:33:11.600 --> 01:33:15.980
Und wir sprechen dann von unscharfer Logik und unscharfem Wissen.

01:33:16.840 --> 01:33:22.520
Und unscharfe Logik und unscharfes Wissen sind heute Dinge, die wir

01:33:22.520 --> 01:33:25.160
technisch sehr intensiv einsetzen.

01:33:26.660 --> 01:33:31.580
Man kann mit unscharfer Logik rechnen und heutzutage tut das jede

01:33:31.580 --> 01:33:35.340
Waschmaschine in ihrer Steuerung.

01:33:36.080 --> 01:33:40.440
Aber auch die Einspritzpumpe in ihrem Auto, soweit sie elektronisch

01:33:40.440 --> 01:33:44.740
geregelt ist, verwendet unscharfe Steuerungsverfahren.

01:33:46.980 --> 01:33:47.860
Soviel?

01:33:51.670 --> 01:33:52.370
Beweide.

