Gut, so, nachdem ich mich hier so ein bisschen mit dem Beamer gekämpft habe,
dass sie zwar irgendwie immer noch nicht vom Seitenverhältnis richtig aus, aber soll sein.
Ja, nur nochmal ganz kurz eine Ergänzung zu vorgestern,
weil da ist ja nochmal im Prinzip diese Frage aufgekommen,
wo ich also ja erst gesagt hatte, okay,
also ich weiß es zugeben, du warst nicht,
was passiert bei den A-Triple, die 754 Fließkommazahn,
wenn ich unendlich mit null multipliziere,
wo ich also gemuten habe,
irgendwas mal null müsste null sein
Falsch geraten, Meter. Also ich habe im Prinzip dieses Code-Beispiel,
was ich also auch für sie dann zum Runterladen ist,
wenn man das selber nochmal ausprobieren will oder so,
nochmal entsprechend angepasst, wenn man das Ganze laufen lässt,
habe ich also eben genau hier nochmal diesen entsprechenden Fall dazugefügt.
Wie man sieht, ist es jetzt auch ein bisschen anders formatiert.
Und ja, Ergebnis ist in diesem Fall not enambar,
beziehungsweise nicht nur in diesem Fall, sondern generell,
ist also im Standard so vorgesehen.
Andererseits wird in der Prüfung nicht abgefragt. Nicht nur,
dass man eben weiß, was so passiert.
Und die Frage ist hergekommen. Gut, dann hatte ich
das Seitenverhältnis stimmt immer noch nicht, aber okay.
Hatte ich ja also im Prinzip zu den jeweiligen Programmierern angefangen,
so ein bisschen zu den Programmiersprachen, die arathmetischen Operationen,
zu erklären, was sich dort passiert. Und wie gesagt,
das war es eigentlich hier entscheidend ist und was,
sagen wir jetzt also hier von diesem Kapitel eben hängen bleiben soll,
ist, dass man eben diese Effekte hat, dass beim Unscience-Zahn-Darstellung.
Das heißt, wenn ich jetzt also nur positive Zahlen habe
und ich jetzt eben die Wortbreite nicht vergrößere,
ich dann eben entsprechend einen positiven Overflow haben kann.
In Java wird uns das nicht betreffen, weil da gibt es das Nächste,
da sind alle Zahlen nur im Zweierkompliment dargestellt.
Und wenn ich mit Zweierkompliment-Darstellung, Addition rechne,
habe ich eben den Effekt,
dass ich quasi inner mit einem gültigen Zahnbereich habe,
dann aber eben sowohl positive als auch negative Überläufe haben kann
Wenn ich eben arathmetisch quasi die Zahlen zu groß oder zu klein werden. Gut,
hier jetzt noch mal ein bisschen konkreter zu den jeweiligen Programmiersprachen,
also in Standard C, beziehungsweise C Plus Plus, sieht das eben so aus,
dass sich dort sowas wie Unsign-Zahlen habe. Wird ganz gerne mal genommen,
wenn man jetzt also im Prinzip so was wie ein bisschen Hardware-nähere Programmierung macht,
wo das teilweise manchmal ist, ein Nachteil ist, aber zum einen,
dass man die Zahlen dann eben entsprechend also auch passend deklarieren muss,
teilweise die von den Compile anderen eigentlich damals,
also auch nur bedingt effizient umgesetzt werden.
Und man also dort dann also auch relativ schnell,
also irgendwie Programmierfehler einbaut, weil eben nicht automatisch,
also ein C gibt es eben keine strikte Typbindung und es wird nicht automatisch geprüft,
wenn ich jetzt mit irgendwelchen narenometischen Operationen rechne,
ist das Signed, ist das Unsigned?
Kann dazu führen, dass Folgendes passiert,
wenn ich also hier quasi diesen Talkot nehme,
ich habe hier Unsigned Count und Integrer und Hier diese Laufvariable,
dieser Schleife wird quasi initialisiert mit Count minus zwei.
Dann wird quasi, wenn ich jetzt eben für Account vorher einen kleinen Wert habe,
also sprichst du was wie null oder eins,
was also erstmal ein gültiger Anzeit ist, nicht überprüft,
was auch mit dem Ergebnis passiert.
Es wird also stumpf minus zwei gerechnet. Das,
was rauskommt, Fonds der Arithmetischen Operation, wäre dann eben quasi,
wenn ich jetzt also nicht unscience, sondern signed hätte,
eine negative Zahl in der Unsigned oder im Anzahlen Zahlenbereich ist es dann,
dass er hat auf einmal eine sehr, sehr große positive Zahl.
Und dem zufolge kann es sein, dass dann eben dort an dieser Stelle die Programmierung schiefgeht.
Auch NC habe ich dann immer noch so Effekte,
dass man dann auch sagen kann,
wenn ich jetzt mit Signed oder Unsigned irgendwie so ein bisschen gemischt rechne,
dann kann ich natürlich dann über solche expliziten Casts,
das heißt, ich gebe den Objekten mit,
wie die zu interpretieren sind, Dafür sorgen,
dass sich eben auch vergleichbare Effekte habe.
Nicht, dass es also im Prinzip hier darstellt.
Wenn ich jetzt also im Prinzip einen kleinen Enteger-Wert habe,
der wird dann eben auf einen Unsigned zugewiesen. Funktioniert das alles,
wenn ich das mit einer negativen Zahl mache und den dann
quasi über so einen Cast dann also hier auf dieses Unsigned-Short-Enteger zuweise,
dann wird daraus quasi das Äquivalent einer positiven Zahl und es wird eben nicht festgestellt,
dass also diese Zuweisung von dem hier in diesen Zahlenbereich eigentlich gar nicht funktionieren kann per Definition.
Das heißt also, da kann man sich also einen C relativ schnell vertun,
deswegen also nur nochmal so ein bisschen im Hinterkopf behalten,
vor sich dazu.
Java folgt auch gleich noch, da haben wir
solche Effekte und glücklicherweise nicht
Ja. Um generell also erst mal zu sagen, Scient,
Ann-Signed, NC gibt es dann also bei Konstanten noch eben so eine Schreibweise,
wo ich dann ein U dahinter setze, was dann eben für Ann-Signed steht.
Wenn nichts dort ist, ist das also quasi ein normales Scient-Repräsentation. Hier sieht man also auch noch mal,
wie das Ganze dann letztendlich abgebildet wird,
also jetzt von den Wertebereichen, nicht also bei Ann-Signed habe ich,
also von 0 bis 2 hoch we-1 quasi als größte darstellbare Zahl und wenn ich jetzt also hier beim normalen Bei einer Signed-Darstellung bin,
die also typischerweise dann eben in den Rechnern immer im Zweier-Kompliment passiert,
habe ich dann eben von minus zwei auch www.minus eins bis zu plus.
Zwar auch wminus eins, minus eins,
als größte maximal darstellbare Zahl und also alles,
was hier gültig ist, wird soweit abgebildet,
aber die zu großen Zahlen werden ein Zweier-Kompliment dann quasi als negative Zahlen interpretiert,
nämlich die, wo das oberste Bit gesetzt wird.
Und umgekehrt, wenn ich jetzt eben eine negative Zahl habe,
dann wird das also quasi im Anzahl dann zu einer
entsprechend großen positiven Zahl
Wo man sich da dann also auch immer noch so ein bisschen vertun kann,
eben mit dieser Typanwandlung, ist dann also in arathmetischen Ausdrücken,
dass also was hier so ein bisschen angedeutet ist,
weil wenn ich jetzt mit gemischten Operatoren oder Operanten arbeite,
dann passiert in der Regel die Auswertung als Unsigned.
Das gilt eben dann, wie auch hier angedeutet, dann für diese ganzen Vergleichsoperationen.
Das heißt, wenn ich jetzt eben hier vergleiche,
null, ist gleich eine Unsigned Null, ist das Ergebnis
Oder er wird quasi das Ganze als Ansand ausgewertet.
Das Ergebnis ist eine Eins. Minus eins, kleiner Null. Dadurch,
dass die Cine-Science-Zahl ist, beziehungsweise beide Science-Zahlen wird,
dass er dann quasi als Science interpretiert, liefert auch eine Eins.
Gut, das entspricht also dem, was wir eigentlich erwarten würden.
Problemen kriegen wir also an dieser Stelle, wenn ich sage minus eins,
kleiner Null und dann eben dies explizit als Anzahlen-Kennzeichen,
dann wird das auch als Unsigned quasi diese Operation gemacht.
Das heißt, das,
was also dann technisch gesehen passiert, ist,
dass diese minus eins dann also auch auf einmal als Unsign-Zahl interpretiert wird,
ist dann also quasi auf einmal eine sehr große Zahl.
Und das Ergebnis von dem Ganzen liefert dann eben eine
Null bzw. logisch gesehen an False zurück.
Und so kann man sich da dann also relativ schnell,
gerade bei solchen,
diesen gemischten Kombinationen zwischen Unsigned und Signed-Darstellung,
irgendwelche Fehler in seinen Code reinprogrammieren
Also wie gesagt, deswegen nur die Warnung,
wenn man jetzt also im Prinzip mit Zahlen oder Zahlenbereichen in der Programmierung arbeitet in See,
sollte man also tunlichst jetzt sagen,
entweder ich rechne alles insigned, wenn ich jetzt keine negative,
wenn ich jetzt mit positiven und negativen Zahlen arbeite,
was man ja typischerweise macht, wenn ich jetzt also explizit weiß,
ich habe wirklich nur Werte von null bis irgendwas,
dann kann man also auch seinen Datentypen verwenden in der Regel Hätte ich jetzt aber auch pragmatisch gesagt,
also da dann einfach irgendwie so auf so was wie Scient,
Quatsch, also auf so was wie Unsigned,
verzichten.
Gut, ich habe es jetzt gerade falsch erklärt.
Also im Prinzip immer mit Zahlen rechnen und eben in der Regel dann also auf Unsigned verzichten,
wenn es jetzt nicht explizit für irgendwas gebraucht wird.
Gut, dann ein Thema, was wir dann also auch
immer noch brauchen, sogenannte Science Extension, also angenommen,
wir haben jetzt eben eine Injure-Zahl einer bestimmten Wortbreite weh.
Jetzt soll also im Prinzip mit irgendeiner anderen Zahl gerechnet werden mit größerer Wortbreite.
Was passiert jetzt? Wenn ich jetzt also quasi das Ganze
noch irgendwie um ein paar Carbit verlängern möchte,
um dann eben quasi jetzt mit daraus dann,
also quasi aus der Zahl X einen X-Strich zu machen.
Und das, was man dort dann eben macht,
bei einer Vorzeichen behafteten, also sprich bei einer Sight-Darstellung,
Zahlendarstellung ist eben, dass man das Vorzeichen mit ententsprechend oft kopiert.
Zahlenbeispiele, also wenn ich jetzt also hier quasi in 4-Bit-Signed eine plus 6 habe,
8 bezahlen, 16 bezahlen würde ich quasi immer das Vorzeichen,
also die Null nehmen und entsprechend oft wiederholen.
Und bei negativen Zahlen genau das Gleiche. Dadurch erhalte ich dann,
also unabhängig davon, in welchem oder mit welcher Wortbreite ich
dort rechne, dann eben genau immer den richtigen Wert.
Wo man sich mit solchen Zahlen Extensions dann nämlich also auch Gerne mal verprogrammieren kann.
Das ist also aus so einem Buch von Bloch und Gafter,
Java Pazlas, wo also im Prinzip also wirklich so minimal kleine Java-Code-Beispiele drin sind,
wo man sagt, das ist einfach trivial und das funktioniert so.
Und aufgrund irgendwie dieser Effekte durch Zahlendarstellung bzw. Umwandlung
passiert eben nicht das, was man sich vorgestellt hat.
Hier nur auch nur ein Beispiel. Ich habe also im Prinzip,
dass ich denen die Hexer dezimals Saal, CAF,
E-B-A-B-E, addieren möchte mit 1, lauter Nullen.
Und das ist dann eben explizit eine Longzahl. Wenn es nicht long wäre,
also hier dieses Ellen nicht steht, dann wäre quasi diese Zahl,
die hier genauso viele Stellen hat wie hier.
Ich würde mal sagen, okay, was muss passieren?
Ich muss also die oberste Stelle, also das,
was hier das C ist, plus 1 rechnen,
dann würde dann also quasi entsprechend dann dort ein D stehen,
wenn ich das also entsprechend Ausgebe und berechne.
Was hier aber passiert, dadurch, dass dieses Long ist,
wird diese Zahl dann also auch auf 64-Bit verlängert.
Und was dann gemacht wird, ist,
dass also hier das Sign-Bit genommen wird,
was bei dem 10er 1 ist, entsprechend werden dann laut,
also noch 32, 1 sind da vorgeschrieben,
beziehungsweise in Hexadezimal dann eben entsprechend viele Fs.
Und das, was die Rechnung dann eben ergibt,
ist dann quasi dieses Ergebnis und nicht das,
was man
sich eigentlich vorgestellt hatte
Auch ein allgemein beliebtes Beispiel zu der Problematik mit Zahlen oder
Zahlendarstellungen und begrenzten Wertebereichen. Hatte ich, glaube ich,
auch schon mal kurz erwähnt. Erst flugt Ariane 5,
Ende der 90er Jahre, also 1996,
was dort passiert ist, dass sich die Rakete,
also nach relativ kurzer Flugdauer quasi selbst gesprengt hat,
hat 605 Millionen Euro gekostet.
Was ist passiert? Man hat also im Prinzip
die Software aus dem Vorgängermodell für die Fluglageregelung übernommen.
Jetzt ist natürlich die Rakete also irgendwie deutlich größer und schneller gewesen.
Hatte also mehr Schub, hat schneller beschleunigt. Das,
was die Sensoren jetzt quasi aufgenommen haben oder eben an Werten erstmal irgendwie erzeugt haben,
war also im Prinzip ein 64-Bit-Gleitkomma-Wert, also quasi so ein Double.
Für die Horizontalgeschwindigkeiten. Für die internen Berechnungen, wo dann
aber nachher dann nicht mit Klarkomma-Zahlen gerechnet, sondern mit 16 Bit-Engiger-Zahlen.
Und bisher, also sprich bei der Ariane 4,
haben diese Zahlen dann immer also irgendwie entsprechend vielleicht noch mit Skalierung,
aber wie auch immer.
Also irgendwie immer in diesen 16 Bit-Wertebereich reingepasst.
Jetzt hier aber nicht mehr. Das heißt,
da wurde dann also quasi bei diesem 16-Bit-Endiger,
was also quasi dann eine Science-Zahl ist,
auf einmal das oberste Bit-Gesetz.
Dann hat der Rechner gesagt,
ich habe hier eine negative Beschleunigung
Das kann ich hinhauen, da geht irgendwas schief.
Ja, und daraufhin ist das System dann quasi in Fehlerzustand
gegangen und hat gesagt, okay, abbrechen. Gut,
ja, also das nur nochmal so zu den Sachen,
was also im Prinzip jetzt, also gerade mit diesen Wortlingen passieren kann,
wo man da also vielleicht jetzt also auch bei den in der Programmierung mal aufpassen muss,
dann, wie sieht das mit der Multiplikation aus?
Auch diese Folie lag ja also schon auf,
also im Prinzip Multiplikation im Dualsystem
Wie gesagt, also relativ einfach. Und wenn ich das also so rechne,
so wie wir das ja eigentlich auch irgendwie im Dezimalem gewöhnt sind,
eben entsprechend abschreiben, passend verschieben, alles zusammen addieren.
Und dann habe ich entsprechend mein Ergebnis, beziehungsweise ist jetzt,
glaube ich, oder war jetzt also gerade auch irgendwie Tal von Übungsaufgaben.
Gut, wie Sie das jetzt hinsichtlich begrenzter Wertebereiche aus,
wenn ich das jetzt also bei einer Anzahl-Multiplikation habe,
habe ich bei einer Wortbreite von Webit eben quasi die Operanten von null bis zwei Hochweh minus eins.
Und für das Ergebnis ergibt sich dann quasi als größte darstellbare Zahl von null bis,
ja, und dann nehme ich eben quasi die beiden größten Zahlen und multipliziere die,
also dann entsprechend hier zwar auch wie minus eins zum Quadrat,
kann man dann also entsprechend wie nomischer Formel dann also irgendwie ausrechnen,
dann kriege ich also diesen Ausdruck hier hinten und letztendlich die Wortbreite ist dann zwei weh,
die benötigt werden.
So, was passiert jetzt in den Programmiersprachen,
wenn ich also jetzt quasi zwei Integer-Zahlen miteinander multipliziere.
Jetzt in Bezug also auf eine Anzahlenmultiplikation,
wie gesagt, in Java gibt es keine Unside-Integer,
da sind also quasi Integer immer zweier Komplimentzahlen in C
erhält man dann also quasi nur die unteren, wie wird.
Das heißt, da muss man dann eben quasi wissen,
dass das Ergebnis jetzt nicht größer werden kann,
beziehungsweise sonst eben entsprechend andere Zahlendarstellungen benutzen
Was teilweise seitens der Rechnerhardware also noch vorhanden ist, ist,
dass eigentlich für eine Multiplikation, also das Ergebnis dann also auch wirklich korrekt,
dann quasi als doppelt so breites Wort generiert wird,
wo man dann also letztendlich getrennte Register hat für die Oberen und die unteren Witz des Ergebnisses.
Gut, bei einer Sign-Multiplikation, also sprich,
wenn die jetzt eine normale Zweier-Kompliments habe und die multipliziere,
also auch da kann man sich dann überlegen, was kann passieren,
die kleinste darstellbare Zahl und die größte darstellbare Zahl für die Operanten und hier habe ich dann also quasi größte negative Zahl,
mal größte positive Zahl,
wäre dann eben quasi die größte negative Zahl,
die ich als Ergebnis bekommen kann und als größte positive Zahl hätte ich dann eben quasi dieses hier zum Quadrat,
war es dann also entsprechend dieser Ausdruck ist.
Und auch hier gilt letztendlich, dass die Wortbrate sich verdoppelt.
Das ist eigentlich nur das, was dabei rauskommen kann.
So, was passiert in dem Programmiersprachen? Eigentlich analog zu dem anderen,
nur dass diesmal Java also jetzt auch mit dabei ist.
Das Ergebnis sind immer nur die unteren wird,
die also quasi jetzt noch in die Zahlen-Darstellung passen.
Überläufe werden ignoriert. Das führt eben dazu,
dieses Beispiel hatte ich, glaube ich, ganz am Anfang irgendwo
so bei der Motivationsfolie da irgendwie mal so mit drin.
Also wenn ich also sowas rechne wie hunderten, mal 200,
mal 300 mal 400, und das ist eben ein Entager,
dann erhalte ich dort eben letztendlich einen Überlauf und als Ergebnis
hat man dann irgendwie auf einmal eine negative Zahl.
Gut, auch da kann man schnell einiges falsch machen.
Auch hier nur als Motivation so ein Parzlar.
Also ich habe jetzt hier quasi Mikrosekunden pro Tag,
Millisekunden pro Tag, nicht entrechnen, also 24 Stunden,
mal 60 Minuten, mal 60 Sekunden, mal 1000,
dann habe ich Millie und das nochmal mal 1000, dann habe ich Mikro.
Und da ich jetzt ja weiß,
das werden alles lange zahlen, sage ich mir,
na gut, dann nehme ich jetzt also quasi keinen normalen Indiger,
sondern mache also hier einen Long draus,
also 64 Bit-Zahlen-Darstellung,
da passt das ja eigentlich rein
Trotzdem erhalte ich für diesen Ausdruck dann eben wieder was anderes und
das Ganze funktioniert eben nicht, weil da dort der Effekt ist,
für die arathmetischen Operationen in See,
sind dieses hier erstmal alles normale Enteger-Zahlen.
Und die Tatsache, dass das Ganze eigentlich,
also Und dann eine 64-Bitzahl wird, passiert erst wirklich bei dieser finalen Zuweisung,
aber nicht hier bei den Arithmetrischen Operationen.
Das heißt, hier wird immer mit 32-Bit gerechnet.
Dadurch habe ich dann eben auch wieder einen Überlauf.
Workaround für das Ganze ist jetzt eben eigentlich etwas,
was also quasi an dieser Stelle hier nämlich das Problem dann bereitet hatte,
dass ich also hier dann explizit,
also auf einem der Operanten
eine Longzahl mache
Und damit würde man jetzt hier nämlich erreichen,
dass wenn ich den Ausdruck,
also quasi jetzt für die Mikrosekunden pro Tag dann also so schreibe,
dass ich dann eben hier auch wirklich mit dem entsprechenden Long-Daten-Format,
also diese Operationen ausführe.
Und dann würde dann eben auch entsprechend das Richtige bei rauskommen. Gut,
also wie gesagt, auch das nur mal so als Hinweis,
wo man sagt, naja gut,
das ist doch eigentlich trivial und das habe ich doch irgendwie alles verstanden.
Auch da kann man also wirklich in der Programmierung
sich relativ schnell irgendwo mal einen Fehler einbauen
Gut, die Vision im Dualsystem hatten wir bisher noch gar nicht weiter behandelt.
Auch da kann man jetzt letztendlich sagen, das funktioniert genauso,
wie ich das also eigentlich auch aus dem Dezimalsystem gewohnt bin.
Also ich, das heißt,
wenn ich das da irgendwie jetzt an eine Tafel rechnen würde,
ich habe meine Zahl,
ziehe da jetzt also entsprechend immer irgendwie mein Vielfaches,
in diesem Fall jetzt null oder einfaches,
des Divisors ab und habe dann eben auch wieder
wie so ein entsprechendes Stellenversetzen
War es dann technisch immer so ein bisschen dahintersteht,
was man dann also vielleicht noch im Hinterkopf haben sollte,
wenn man jetzt also irgendwelche arathmetischen Ausdrücke in der Programmierung benutzt.
Das, was die Hardware bereitstellt, sind Rechenwerke für Addition und Subtraktion,
beziehungsweise gibt es in dem Sinne keinen Unterschied,
weil Subtraktion ist ja nichts anderes als die Addition des Zwei-Kompliments.
Und gegebenenfalls dann eben auch noch eine entsprechende Hardware,
mit der also dann eine Multiplikation gemacht werden kann,
aber eben in der Regel nichts oder relativ selten,
also nur irgendwelcher Hardware, wo ich dann also im Prinzip Division,
also über ein entsprechendes reichen Werken mache.
Das heißt, eine Division passiert dort dann häufig durch quasi Unterprogrammentechnik,
also sprich, so wie ich das jetzt hier gleich auf
den nächsten Folien von Hand machen würde.
Also sprich, schieben und subtrahieren würde dann eben auch
eine Division in Hardware passieren. Das heißt,
verglichen mit der Multiplikation bzw. mit Addition ja sowieso,
was dann eben deutlich langsamer
Gut, wie wird das Ganze gerechnet? Also angenommen,
ich hätte jetzt hier die Zahl 100 durch 3 zu rechnen,
in Dualkodarstellung wäre das also die 100,
das ist entsprechend die 3, welchersatz Ergebnis erwarte ich dann,
also im Prinzip sowas wie 33 und irgendwie dann noch einen als Rest,
wenn ich jetzt nicht in die Nachkommastellen gehe,
würde man also folgendermaßen rechnen,
ich nehme also quasi jetzt hier die Dualdarstellung von der 100,
durch B11 guckt dann eben, okay, erste Stelle,
kann ich die drei noch nicht von abziehen,
nehme dann also die nächste Stelle hinzu, habe dann genau 1-1,
da kann ich jetzt quasi einmal die drei von abziehen,
diese einzelne notiere ich dann quasi jetzt hier,
an dieser Stelle, dann habe ich hier als Rest null,
dann nehme ich jetzt wieder die nächste Stelle, das Ergebnis ist null,
nochmal die nächste Stelle, das Ergebnis ist null,
da wird dann also jedes Mal hier eine Null notiert,
dann hätte ich hier diese eins,
davon kann ich immer noch keine drei abziehen,
erhalte dem zufolge hier immer noch eine Null,
habe dann die eine null hier 1-0,
kann aber immer noch keine drei von abziehen.
Demzufolge gibt es sich hier wieder eine Null.
Anschließend habe ich dann eben 1-0-0,
kann davon dann also einmal die drei abziehen.
Das ist dann der Rest und an dem Falle wird dann eben
die einzige notiert und das Ergebnis ist dann eben 1-0,
0, 0, 0, 1 und als 1 als Rest.
Also im Prinzip jetzt ein bisschen länger erklärt oder so weiter.
Im Prinzip sage ich genau das Gleiche,
was war so im Dezimalsystem genauso machen,
nur dass ich eben hier an der Stelle dann eben immer nur sagen kann,
dass es entweder einmal oder null mal vorhanden,
da muss sie jetzt also nicht noch größer Kopf rechnen
Gut, hier nochmal etwas größeres Beispiel. Nicht,
also auch da sieht man jetzt also 91 durch 13.
In dem Fall kommt dann also hier sieben raus und da dann eben auch die Zahl,
nicht notiere ich, also jetzt erstmal hier die ersten vier Stellen,
die sind aber in diesem Fall kleiner als die Zahl.
Das heißt, ich kann die jetzt nicht davon abziehen,
also notiere ich die null, nehme jetzt also die nächste Stelle,
dann kann ich also hier quasi einmal das abziehen.
Das wird dann dementsprechend berechnet,
habe dann eben hier als Divisionsergebnis an der Stelle dann eben einmal
die Eins und hätte dann hier noch entsprechende atmetischen Operationen quasi als Ergebnis dieser Subtraktion 1001,
nicht anschließendem man jetzt wieder die nächste Stelle der Zahlen mit hinzu.
Auch da kann ich das dann eben wieder abziehen,
erhalte die 1, habe hier meinen Rest,
ergänze denen um die nächste Stelle, kann es abziehen,
habe alles Ergebnis,
die Null und das Ganze geht dann eben auf
und ich erhalte sieben als Ergebnis.
Eine Frage
Gut, also hier hatte ich das jetzt immer als ganz zahlige Division gemacht.
Also hier ist jetzt letztendlich der Rest Null. Das heißt also,
ich höre eigentlich immer auf, wenn ich hier die letzte Stelle meines, die Visus irgendwie bearbeitet habe. Und das,
was dann also hier noch als Rest ist,
wenn ich jetzt also letztendlich weiterrechne und in Gebrochen rationale Zahlen gehe,
würde ich sagen, okay, wie ich das da sage,
ich auch auf dem Papier mache, dann kommt dort ein Komma hin,
dann wird eben quasi eine Null,
die dann also hier quasi als 1,0 ist und die dann entsprechend der 0,5 entspricht,
dann wieder herangefügt und dann würde man dann quasi in den Nachkommabereich weiterrechnen.
Wie gesagt, hier ist es jetzt komplett aufgegangen. Bei diesem Beispiel hätte ich dann eben eins als Tylerrest und wenn ich jetzt also quasi in Nachkommastellen weitergehen würde,
würde ich dann eben quasi sagen, okay,
also Ergebnis ist diese eins, 4,0 und die A1,
dann kommt ein Komma, dann hätte ich hier 1,0,
passt nicht, also eine Null, wieder 1-0,
0, dann könnte ich wieder abziehen und dann hätte ich dem zuvor genommen,
also hier Komma 0-1 und würde das Ganze dann eben entsprechend weitermachen,
bis sie dann also vielleicht mal so schlau bin,
dass ich feststelle,
dass ich dann an der Stelle eine Periode bekomme.
Die Frage? Ja, genau,
also irgendwann sollte man dann also eben auch entsprechend sehen,
also es wird dann also periodisch, also das heißt,
das,
womit ich hier irgendwo rechne,
in diesem Fall also diese Folge hier wiederholt sich dann eben immer,
nicht in dem Zufolge hätte ich an der Stelle dann
eben eine Periode mit 0-1 dann dahinter
Gut, ja, ansonsten kann man aber immer sagen,
nicht, also Division im Dualsystem, hier jetzt eben auch nochmal komplett vorgestellt,
kann vielleicht nochmal an Übungsaufgaben kommen, beziehungsweise es ist da auch schon gekommen,
nicht ansonsten muss ich immer mal sagen, gut,
glücklicherweise, dient das ja so zum Verständnis der Zahlendarstellung.
In der Regel müssen wir natürlich mit sowas nicht rechnen, deswegen, ja.
Gut, wie sieht das jetzt mit anderen mathematischen Funktionen aus? Ich war,
sagen wir mal, so in Programmiersprachen, kann ich ja immer sagen,
ja gut, ich habe da noch irgendwie Sinus,
irgendwas und nicht im Zwarzwar muss sie da noch irgendwie ein paar Bibliotheken mit hinzufügen,
nicht, aber dann habe ich also auch die gesamten trigonometrischen Funktionen,
nicht, dann kann ich Lugorithmus, Exponentialfunktion, Wurzel,
irgendwie alles mit berechnen.
Wie wird das technisch gemacht? Und auch da muss man sagen,
na gut, da gibt es relativ viele unterschiedliche mathematische Verfahren,
die sich dann eigentlich letztendlich in irgendwelchen Unterprogrammen,
in den jeweiligen Bibliotheken dann verbergen.
Das heißt, wenn ich jetzt also zum Beispiel NC
dann eben irgendwie die matisch-matischen Funktionen mit hinzunehme,
um jetzt eben ich von diesen Funktionen hier benutzen zu können.
Nicht dann ist also quasi in der Bibliothek,
die eigentlich dem Ganzen dann hinterher dann entspricht,
eben irgendwie so ein mathematisches Verfahren letztendlich hinterlegt,
was diese Sachen dann eben entsprechend irgendwie ausrechnet.
Und gut, da gibt es eben, je nachdem,
was Mana an Funktionen hat, eben unterschiedliche Verfahren.
Also es sind teilweise oder häufig also irgendwie solche sukzessiven Approximationen,
also Verfahren, die sich also über mehrere Rechenschritte
dem entsprechenden Ergebnis annähern
Die dann aber letztendlich selber immer nur auf den Grundrechenarten basieren,
sodass das dann also quasi mit der bestehenden Hardware quasi dann eben über
entsprechend viele Schritte dann, aber eben ausgerechnet werden kann.
Als Beispiel für so ein Verfahren hätte ich ihn also nur
kurz so was wie Rezibrog-Berechnung bzw. Quadratwurzelberechnung, auch nur Interesse halber vorgestellt.
Ich weiß, ich verrate immer zu viel,
wird nicht in der Klausur abgefragt, also von daher keine Angst.
So, nicht als Kurzbeispiel, eins durch X gibt es eben irgendwie so ein klassisches,
iteratives Verfahren, dass man einfach nur mal sieht,
von der Idee her, wie sowas immer irgendwie so läuft.
Also in diesem Fall kann ich dann,
also wenn ich einen geeigneten Startwert habe,
dann also quasi so eine Folge von Y berechnen,
die sich dann eben dem 1 durch X annähern und eben für diesen Ausdruck geht das dann also beispielsweise,
indem ich dann Y e mal 2 minus X mal Exilon ihr rechne,
dann habe ich dann den Wert entsprechend nächsten Iterationen.
Und wenn ich dann eben irgendwie einen geeigneten Startwert habe,
das ist immer das etwas schwieriger bei solchen Verfahren,
dass man dann immer geeignete Startwerte braucht und so weiter,
funktioniert das ganz gut.
Also hier mal angedeutet, ich möchte dann ein Drittel berechnen,
benutze als Startwert 0,5,
dann würde sich eben quasi für Y1,0,2,5 ergeben in der,
also einfach stumpf in diese Formel eingesetzt für Y2 würde sich
nur kommen.
3,1,2,5 ergeben
Für Yps, die nontral dann eben 0,33320 und so weiter.
Und dann sieht man eben, dass das dann eben nach
entsprechend sechs Schritten dann also hier schon in so einer Folge von dreien irgendwie geht.
So, und je nachdem, wie genau ich die Zahl letztendlich brauche,
würden dann eben entsprechend viele von diesen Iterationen durchgeführt. So,
und je nachdem, welche mathematischen Funktionen man braucht,
das ist wie gesagt, das ist eins durch X,
hier ist dann so ein Verfahren für Wurzel X,
nicht geht man an,
also hier zu den Kollegen von der Mathematik,
da gibt es dann eben diese ganzen Standardverfahren oder proximativen Verfahren,
die dann also quasi diese Rechenvorschriften als Grundlage für solche mathematischen Bibliotheken von Programmiersprachen dann also irgendwie bilden.
Auf der vorherigen Vorjahr hat so gesagt, dass man
am Chefwerk baut, die wir dann nicht vorher hören.
Ja, genau, also das habe ich natürlich wieder nicht verraten,
beziehungsweise das steht dann also hier noch mit drauf.
Also die Frage war jetzt, also ich hatte ja gesagt,
also man braucht irgendwie so einen Schätzwert oder so einen Startwert.
Und das gilt also natürlich gerade bei diesem orpproximativen Verfahren immer
Gut, und das, was man also häufig macht,
ist, dass man einfach eine Look-Up-Tabelle hat.
Das heißt also einfach irgendwie tabellenmäßig hinterlegt,
wenn ich die Funktion mache und eine Zahl in dem und dem Wertebereich,
nämlich den Staat wert, wenn die Zahl in dem Wertebereich ist,
nehme ich den Staat wert,
sodass man dann also irgendwie so mit einer Vergleichsweise überschaubaren Anzahl von Staatwerten dann aber irgendwo dann zu sehen für Ergebnis kommt.
Das ist dann eigentlich aber letztendlich auch wieder davon abhängig,
um welche mathematische Funktion es sich handelt. Nicht,
weil es gibt eben Verfahren, also auch mit einem falschen Schätzwert
konvergieren die, brauchen dann aber einfach nur mehr Schritte.
Es gibt aber eben auch Verfahren, dass,
wenn ich da jetzt also quasi mit einem falschen Startwert loslege,
konvergiert das Ganze gar nicht richtig. Also wie gesagt,
das sind dann aber wirklich jetzt also die mathematischen Eigenheiten,
die sich also quasi aus diesen Verfahren heraus ergeben.
Nicht genauso auch immer frage, ja, wie ist das
jetzt zum Beispiel hier so mit den Winkelfunktionen nicht.
Also wenn ich jetzt also hier irgendwie Sinus,
Cosinus und so weiter habe, auch da kann man sagen,
gut, das kann ich teilweise durch mathematische Approximationen berechnen.
Das, was häufig gemacht wird und gerade von Hardware,
die jetzt also irgendwie ein bisschen weniger Rechenleistung hat,
also im Sinne von irgendwelchen kleineren Prozessoren, wie sie in allen gebetteten Systemen vorkommen,
kann man das also deutlich einfacher machen, indem ich einfach stumpf eine Look-up-Tabelle mache, also eine Wertetabelle.
Und wenn ich jetzt zum Beispiel Sinuswerte von meinetwegen Winkel 0 bis 360 Grad brauche und die jetzt also irgendwie mit einer gewissen Genauigkeit,
meinetwegen jetzt von 0,5 Grad, dann kann ich sagen,
okay, dann habe ich also eine Tabelle,
die hätte dann quasi 1024 Einträge beispielsweise,
dann habe ich da so hinreichend viele Werte dann also für die einzelnen Winkelbeträge mit drin und je nachdem,
was ich dann also quasi an Wert brauche oder wie genau ich dann eben den Sinus brauche,
für dort dann also einfach in so einem festen Speicher,
wo ich dann sage, also dort ist Dinos 0,5,
1, 1,52, wo das einfach stumpf ausgelesen,
beziehungsweise das, was ich erzählt habe,
ist dann eigentlich auch schon viel zu umständlich.
Also eigentlich bräuchte ich dann wieder jetzt nur eine Viertelperiode. Und dadurch,
dass ich dann also noch entsprechend passend mir dann nur überlege,
ziehe ich rauf oder zähle ich runter und wie ist das Vorzeichen,
kriegt man dann also quasi eine gesamten Sinus beziehungsweise Cosinus
dann entsprechend aus so einer Wertetabelle
direkt ausgelesen
Gut, ja, dann abschließend kommen wir jetzt nochmal wieder zu diesem Begriff Informationen,
Informationstreue, diese Folie lag ja auch schon mal auf.
Also da hatte ich ja ganz am Anfang mal gesagt nicht,
also welche mathematischen Eigenschaften gelten innerhalb der gewählten Repräsentation.
Und da war eben eins dieser Beispiele, wo man gesagt hat, gilt x quadratloser gleich null.
Für Fließkomma Zahlen, ja, für Scient Entager eben nicht. Und jetzt sollte zumindest klar sein,
warum das nicht gilt, weil ich eben genau diese Überlaufsituation habe,
wo ich dann eben sagen kann,
wenn ich zwei Zahlen miteinander multipliziere und die dann quasi zu groß werden,
dann wird das eben entsprechend also auf einmal zu einer,
oder als negative Zahl interpretiert.
Zweites Beispiel, was auch ganz am Anfang aufgelegen hat,
was, also jetzt hoffe ich, im Zuge der Erklärung dieses A-Triple,
die 754-Formats dann auch klar geworden sein sollte,
nicht was ist jetzt eben hier mit dem Assoziativgesetz,
nicht dass ich eben sage, bei Enteger gilt das Ganze entsprechend,
wenn ich hier Fließkomma-Zahlen habe, gilt es eben nicht.
Und das Beispiel ist, also je nachdem, wie ich die Klammerung hier setze,
erhalte ich da dann eben entweder 0 oder 3,14 als Ergebnis.
Gut, hier ist nur noch mal generell so ein bisschen zusammengefasst,
was jetzt hinsichtlich einer bestimmten Wortbreite für die entsprechenden Arithmetiken gilt.
Also jetzt ein bisschen mathematischer beschrieben für eine Unsiled-Arithmede,
kann ich eben sagen, wenn ich jetzt mit einer festen Wortbreite arbeite,
jetzt weh genannt, bildet das Ganze mathematisch gesehen eine kommutative Gruppe.
Das heißt also, ich bin abgeschlossen,
habe quasi als Werte für Unsigned immer von null bis,
es war auch weminus eins, unter dieser Additionsoperation,
was aber eben sein kann, was wir schon gesehen haben,
dass ich eben bei der Überlaufsituation dann irgendwas habe,
dass ich dann also auf einmal zwei große positive Zahlen miteinander addiere und dann also so rumgesehen einen Überlauf habe.
Und dann ist es bei einer kleineren Zahl lande.
Aber die Abgeschlossenheit ist in dem Sinne erfüllt. Kommutativgesetz gilt,
assoziativgesetz gilt, es gibt ein neutrales Element, die null.
Und es gibt eben als Inverses zwei Hochweh-A bzw. A-Strich,
das ist eigentlich das,
was wir mathematisch gesehen oder in dem,
was sie da so vorher erklärt haben,
dann eigentlich als Zweierkompliment
Kennengelernt haben, beziehungsweise das ist eigentlich die Art und Weise,
wie dann eben das Zwei-Kompliment gebildet wird.
So, für die Signed-Arrithenmetik kann man sagen, gilt genau das Gleiche an entsprechende Operationen.
Auch das ist eine kormotative Gruppe, ist eine sogenannte Isomor-Verallgebracht zu der Unsigned-Arrithenmetik. Das heißt,
also ich kann die quasi ineinander überführen,
habe dann aber hier dann entsprechend dann natürlich mal einen anderen
Wertebereiche und hinsichtigt das inversen Elements gibt es dann eben,
dass ich sagen kann,
weil dieser Wertebereich dann hier also nicht ganz symmetrisch ist.
Es gibt dann eben für jede positive Zahl quasi ein Nversus,
nämlich die entsprechende negative Zahlendarstellung und für den größten negativen Wert
gibt es in dem Sinne jetzt kein Inversus,
sondern das ist diese Zahl selber,
dass wenn ich die jetzt miteinander entsprechend zu sich
addieren würde,
würde ich dann eben als Ergebnis die Null erhalten
Gut, für die Multiplikation war begrenzter Wortbreite,
kann man sagen, das ist also dann eben letztendlich
nichts anderes als Multiplikation dann in so einem Modulo-Bereich.
Das heißt also die Abschränkung auf diese oder Einschränkungen
dann eben auf diese Wortbreite. Und zusammen bilden dann eben
Additions- und Multiplikationsoperate dann eben einen Kommutativen Ring.
Also das hatten wir jetzt hier eben schon gehabt,
dann gilt eben hinsichtlich dem Multiplikation dann
auch die Abgeschlossenheit
Kommutativgesetz dort, assoziativgesetz gilt. Es gibt ein neutrales Element
und mit Additionen, Multiplikationen zusammen haben wir dann eben ein Distributivgesetz.
Gut, für die Scient Arrent Medic kann man auch sagen,
Isomorpha Algebra dazu gilt genau das Gleiche.
Das heißt, da unterscheiden sich Scient und Unscient Operationen nicht.
Zusätzlich kann man jetzt eben noch sagen,
es gibt jetzt hier noch eine Ordnungsrelation. Das heißt,
wenn ich jetzt eben sage, Bei meiner Signed bzw. Unsigned-Arrithmetik,
wenn ich eine Zahl größer null habe,
irgendwie was dazu addiere, zu einer Zahl,
dann wird da das Ergebnis eben größer als die Zahl.
Wenn ich zwei Zahlen größer null multipliziere,
habe ich da dann eben auch entsprechend das Ergebnis.
Nicht das würde eigentlich, ist eigentlich das,
was wir jetzt also bei den ganzen Zahlen kennen.
In der Rechner-Arrithmetik kamen wir an dieser Stelle
dann aber eben immer die entsprechende Überlaufproblematik.
Das heißt, da gelten dann diese Ordnungsrelation nicht immer.
Gut, wie sieht das mit hinsichtlich der mathematischen Eigenschaften,
jetzt der Gleitkomma-Zahlen aus? Auch da kann man sagen,
Abgeschlossenheit ist erfüllt, Kommutativgesetz gilt, assoziiert tief
Gesetz gilt nicht, weil da habe ich ja eben diese Überlaufeffekte bzw. Rundungsfehler.
Es gibt neutrales Element, es gibt außer für Not and
Number und unendlich dann im
jeweils ein Inverses-Element
Und außer für Nordrhein-Annumber und in endlich gibt,
gilt dann eben quasi die Monotonie. Das heißt,
wenn eben eine Zahl A größer,
leichter Zahl B ist und ich da also irgendwo was hinzuaddiere,
das dann eben entsprechend diese Ordnungsrelation dann eben auch für das Additionsergebnis soweit gilt.
Hinsichtliche Multiplikation, abgeschlossenheit, ist erfüllt, wobei eben das Ergebnis dann quasi,
also auch einer von diesen Spezialfällen werden kann.
Kommutativgesetz gilt assoziiert tiefgesetz, gilt nicht, weil ich also
auch da dann eben Überlauf- und Rundungsfehler haben kann.
Wie gesagt, Beispiele dazu hatten wir ja schon.
Es gibt die eins als neutrales Element, das Distributivgesetz gilt auch wegen solcher Rundungseffekte nicht.
Und außer für diese Spezialfälle gilt dann eben auch entsprechend die Monotonieeigenschaft.
Gut, also da setzen wir nochmal für die entsprechenden Zahlendarstellung zusammengefasst,
welche mathematischen Eigenschaften die dann entsprechend haben.
Und damit möchte ich dann ansprechen, dieses Kapitel beenden und
jetzt zu den Codierungen von Zeichen und Text übergehen.
Nicht also so rumgesehen, jetzt haben wir quasi Kodierung von Zahlen gehabt,
die arathmetischen Operationen darauf, wie man damit arbeitet, wie man damit rechnet.
Jetzt hier also jetzt erstmal Zeichen und Text als Codierung,
dann kommt nochmal ein bisschen was zu logischen Operationen und danach wird das dann also nochmal speziell auf Eigenschaften von Codierungen gehen,
die dann also gerade jetzt in Bezug also auf die Datenübertragung interessant sind,
beziehungsweise teilweise auch noch so ein bisschen in diesem Bereich hiermit reinspielen.
Gut, nehmen wir jetzt erstmal ganz stinknormale Textdarstellung,
da kann man sagen, na gut,
also ähnlich wie jetzt bei Zahlen kann ich da also auch irgendwie so eine Historie gehen und mir da also irgendwie angucken,
nicht was gab es da mal so, wenn ich jetzt sage,
ich habe jetzt also jeweils in meiner Sprache jetzt also irgendwie entsprechend mein Alphabet und um das jetzt also noch irgendwie zu codieren oder anders darzustellen,
jetzt im Sinne so einer,
ich sag jetzt mal Datenübertragung, dann kann man sagen,
ja gut,
dann gab es also irgendwann nochmal sowas wie Flaggensignale oder irgendwelche Zeichensignale,
die dann also quasi jetzt dort mit benutzt werden konnten.
Also das werde ich dann also hier unter diesem Stichwort Ad-Hor-Kodierung
kurz beschreiben und dann aber eigentlich zu dem übergehen,
womit wir heutzutage, also jetzt in den Computern arbeiten,
die entsprechenden Textkodierungen, die dort typischerweise üblich sind.
Gut, hier auch noch mal ein paar Begriffe wiederholt,
also auch das gab es ganz am Anfang schon mal nicht,
also ein Zeichen ist eben,
ein Element aus einer zur Darstellung von Informationen vereinbarten,
endlichen Menge von Elementen, das ist dann eben das Zeichen Vorrat.
Binärzeichen, jeweils ein Zeichen aus einer Menge von genaue Zwei Elementen.
Dann gibt es eben numerische und alphanumerische Zeichensätze, geordnete Zeichensätze,
bezeichnen wir als Alphabet. Zeichenkette wäre dann eben eine Folge
von Zeichen und Wort wäre dann quasi eine Folge von Zeichen,
die man dann eben irgendwo als spezielle Einheit betrachtet.
Gut, das war am Anfang ja auch alles schon mal Lang und breit dargestellt.
Nicht, also hier nochmal, Historie, also Winkeralphabet,
wo man jetzt also mit Flaggen da irgendwie seine Zeichen kodiert,
wer also irgendwie jetzt sowas wie Seefahrt macht oder segelt oder so wird.
Also hiermit vielleicht noch ein bisschen was anfangen können,
Flaggenalphabet, das ist eigentlich die einzige Form,
wo sowas heutzutage noch irgendwo so ein bisschen vorkommt,
dass man darüber dann quasi Buchstaben bzw. darüber dann eigentlich bestimmte Eigenschaften mit solchen Flaggen mache.
Ja, dann jetzt mal eine Art von Kodierung,
die aber jetzt das wirklich eine größere praktische Verbreitung hat.
Brail-Darstellung, also sprich die Blindenstrift,
wo man jetzt im Prinzip ja über so eine Matrix aus
zweimal drei Punkten bzw. es gibt dann also auch welche,
die dann also quasi mit zweimal vier Punkten arbeiten.
Jetzt also im Prinzip die Zeichen darstellen kann. Und im Prinzip
hätte man jetzt also bei zweimal drei Punkten so angeordnet,
letztendlich 64 mögliche Symbole. Und da ist dann eben entsprechend
standardisiert wieder. Also jetzt irgendwie war es darzustellen ist.
Auch da gibt es dann immer noch so Unterschiede, wo man sagt,
also so wie jetzt hier angedeutet, also ein Symbol pro Buchstabe.
Aber es gibt dann eben auch so Art Kurzschreibweise,
wo man dann also quasi ganze Silben damit entsprechend darstellen kann. Gut,
etwas, was uns dann später auch noch weiter begegnen wird,
Also inzwischen eigentlich auch eher so ein bisschen historischer zu sehen ist,
Morsecode, sprich ich habe kurze und lange Töne, die entsprechend übertragen werden.
Habe dann also hier irgendwo so meine Co-Tabelle,
nicht wo ich dann eben sagen kann,
A ist ein kurzer und ein langer Ton, B,
ein langer und drei kurze Töne und so weiter und so fort.
Und das gibt es dann eben nicht nur für Buchstaben und Zahlen,
sondern im Prinzip dann eben auch für irgendwelche Satzzeichen dann eben auch in Erweiterung jetzt für irgendwelche Umlaute und eben noch so ein bisschen was,
was man hier dann also auch schon sieht,
irgendwie sowas wie Kontrollinformationen, die man teilweise,
wenn ich jetzt also über Morsecode irgendwie Informationen übertrage,
dann eben vielleicht auch mal brauche,
um dann eben zum Beispiel anzuzeigen, sorry,
ich bin nicht mitgekommen und ein Fehler liegt vor und schicke mir das bitte nochmal oder sowas.
Nicht ansonsten, gut, das war es,
wie also von Morsecode vielleicht noch gerade hinkriegen,
ist SOS, nicht dreimal kurz,
dreimal lang,
dreimal kurz
Was dann eben entsprechend dann hier diesen Buchstaben entspricht. So,
wenn man sich jetzt den Code so ansieht, sieht man natürlich schon,
also dass man insofern ein Problem bekommt, weil der Code,
wenn ich das jetzt also hier einfach nur so runter notiere,
nicht eindeutig ist.
Das heißt, wenn ich jetzt also diese Folge von
fünf kurzen einem langen und einem kurzen Ton habe,
dann kann das im Prinzip so was wie SIN sein.
Das kann aber eben auch irgendwie was ganz anderes sein.
Also was weiß ich,
Und um eben zu unterscheiden, was damit jetzt gemeint sein soll,
müsste man dann eben wirklich, also hier entsprechend,
also sowas wie Pausen einbauen.
Ich war das sonst letztendlich nicht eindeutig ist. Oder gut,
man könnte es natürlich versuchen, also aus dem Kontext noch zu raten.
Also bin ich jetzt im englischen Text und habe das Sinn
oder geht es darum zu sagen, also so und sophiaia. Gut,
Ja, das,
was bei Morsecode dann eigentlich interessant ist und was uns dann also später bei der Kodierungstheorie dann nämlich noch begegnen wird,
ist, dass dann eigentlich die Kodierung letztendlich dadurch aufbaut,
dass, wenn ich jetzt also normale Sprache nehme, beziehungsweise die Buchstaben, die ja so bestimmte Häufigkeiten haben.
Und je nach Sprache natürlich, aber es dann doch immer so ist,
dass bestimmte Buchstaben eben größere Wahrscheinlichkeiten haben,
beziehungsweise größere Häufigkeiten haben im Text als andere Buchstaben
Und demzufolge ist die Kodierung da dann eben so auch angelegt,
dass Buchstaben die relativ häufig vorkommen,
wie das E eben einen sehr kurzen Code bekommen.
Und andere Buchstaben, die jetzt also vergleichsweise unwahrscheinlicher sind,
nicht also hier Y und Z,
dann also jeweils dann schon vier Symbole haben.
Und wenn ich also irgendwie sowas wie ein SZ habe,
dann ist das also schon mal ein Spezialfall,
der also wirklich vergleichsweise selten sein sollte,
demzufolge wird er dann entsprechend lang kodiert.
So,
warum macht man das
Einfach aus effizienzgründen, weil wenn ich jetzt sage,
ich nehme jetzt also quasi alle Buchstaben und wenn ich jetzt eben sage,
ich habe eine bestimmte Anzahl von Buchstaben,
die kriegen dann alle irgendwie eine Kodierung,
die jeweils gleich lang ist,
erreiche ich jetzt mit so einer Kodierung,
wo ich den Elementen, die also häufiger vorkommen,
also kurzere Codeworte zuordne,
dass im Mittel dann eben bei der Übertragung von irgendwelchen Informationen eben weniger Bits zu übertragen sind und ich dadurch dann eben hinsichtliche Übertragung effizienter werde.
Und das, was man dann beim Morsecode eben hat,
sind da typischerweise ja solche Codebäume. Das ist also das,
wie man das dann auch immer irgendwie dann lesen würde. Nicht,
also das heißt, ich fange an,
wenn ich es also quasi ein kurzer Ton kommt und nur einer,
dann ist es ein E, nicht,
wenn anschließend ein langer Ton kommt,
hätte ich ein A und dann eben über solche Baumstrukturen,
kann ich dann eben entsprechend über die Folgen der Symbole
dann eben hier herauslesen,
was gesendet worden ist
Gut, das wird uns dann also später bei der Kodierungstheorie dann noch ein bisschen begegnen,
weil gerade da im Zuge einer effizienten Datenübertragung ist es natürlich interessant,
dass man sagt, okay,
wenn ich jetzt nur eine bestimmte Bandbreite zur Verfügung habe,
möchte ich natürlich möglichst wenig davon verschwenden, demzufolge,
also quasi, wenn ich jetzt also irgendeinen Text kodiere,
das möglichst kompakt machen, das erreicht man dann mit solchen Codes.
Das, was wir jetzt hier aber weiter betrachten werden,
sind quasi erstmal die in Anführungszeichen Standardcodes für Zeichendarstellung,
wo man dann eben nicht diese Eigenschaft tat,
sondern wo im Prinzip dann einfach nur so eine Tabellenartige Zuordnung gemacht wird,
wie werden bestimmte Elemente dargestellt.
So, das Älteste und Bekannteste ist also der sogenannte Asky-Code,
steht dann für American Standard-Code for Information in der Change,
wurde im Prinzip Mitte oder eine der 60er Jahre quasi standardisiert und eingeführt und war eigentlich für sehr,
sehr viele Jahre dann eigentlich der Standard-Code für irgendwelche Textdateien
und was man dort dann eben letztendlich hat oder beschreibt,
sind dann eben die typischen Zeichen,
die man Daher kam das dann auch noch eben damals auf
der Schreibmaschine, beziehungsweise auf solchen Fernschreibern zur Verfügung hatte.
Was man dort macht, ist, dass man
quasi insgesamt sieben Bit für die Kodierung eines Zeichens verwendet.
Und so, wenn man jetzt sagt, okay, sieben Bit,
2,728, Zeichen kann ich dem zufolge damit unterscheiden. Und da hat man eben,
sagen wir mal, so 95 druckbare Zeichen,
nehme man sich jetzt irgendwo aus, denkt, Buchstabenziffern,
Sonnatzzeichen und hat dann eben noch so einen ganzen Satz von irgendwelchen Steuerzeichen,
um jetzt zu sagen, es sollen da jetzt eben noch irgendwelche Meta-Informationen passieren.
Also beispielsweise, wenn ich einen Text nehme, typischerweise Zahlenende und die nächste Zeile soll beginnen. So,
Aski als Co-Tabelle sieht man dann also hier,
das ist also in diesem Fall jetzt hier, Frau Oster,
Wikipedia mal eben rausgeklaut, ließ sich dann eben so,
dass man sagt, hier SP ist Space,
dann habe ich hier quasi meine gültigen druckbaren Zeichen,
das heißt, Großbuchstaben, Kleinbuchstaben des Alphabets,
dann irgendwie noch so ein paar Sonderzeichen.
Und dann gerade hier in diesem Bereich dann eben noch irgendwie
diverse Steuerzeichen. Nicht mit denen ich dann also irgendwie escape,
die Lead, Bell und so weiter machen kann.
Charage Return Line Feed, das sind alles Sachen,
die sind eben, also bei den beiden wird es immer interessant,
weil die also heutzutage eben auch immer noch verwendet werden.
Da sieht man aber eigentlich,
dass das Ganze auch wirklich also auf diese Schreibmaschinenanwendung zurückgeht,
nämlich Charage Return ist nichts anderes als ich schreibe jetzt,
also quasi mit meiner Schreibmaschine und springt dann eben wieder an den Anfang zurück.
Line-Feed wäre dann nächste Zeile. Nicht demzufolge war also früher bei den Fernschreibern,
wenn ich eine Zeile zu Ende geschrieben habe und die nächste anfängt,
Carage, Return und Line-Feed, beides zusammen.
Wird uns dann auch noch begegnen, das ist nämlich das,
wie also früher quasi Dorst bzw. Windows-Rechner letztendlich,
dann Zahlenenden kodiert haben
Gut, was einem dort jetzt natürlich so ein bisschen fehlt,
dann kann man jetzt sagen,
es sind also schon mal irgendwie so Umlaute und so ein paar
andere und neuere Zeichen und irgendwie so mit sieben Bit,
das ist natürlich dann auch erstmal irgendwie so ein bisschen wenig.
Deswegen kommen wir jetzt also noch irgendwie entsprechende Kurdierungen, die man dann eben braucht,
um dann da jetzt noch ein bisschen mehr zu machen.
Ach so, by the way, das hatte ich jetzt vergessen,
wenn man so eine Tabelle hat, wie ist die zu lesen?
Also nehmen wir jetzt also,
ich bin jetzt also hier mit diesem Da,
wo jetzt also hier der Cursor ist, also das große E,
ist so kodiert, dass man sagt,
das ist eben entsprechend jetzt hier in dieser Zeile.
Das heißt, ich habe hier eine 4 und ich bin
hier in dieser Spalte. Das heißt, ich habe hier
eine 5 und dieses hier wäre jetzt quasi optal kodiert.
Dieses hier wäre Hexer-Dezimal kodiert und demzufolge sollte sich dann
eben für das große E in Aski-Co dann eben quasi ergeben
4 für die oberen Bits, also 1-0-0,
5 für die unteren Bits, also 0-1,
0-1 und das wäre dann eben jetzt hier der Asky-Code für das E.
Ach so, ja. Nicht, also es ist relativ einfach,
nur nicht nur, dass es eben nochmal letztendlich klar ist,
wie das dann also quasi zu interpretieren ist. Gut,
wie gesagt, was uns dort natürlich dann immer noch fehlt,
sind jetzt irgendwelche Sonderzeichen, wo man dann sagt,
okay, also irgendwie sowas wie Umlauter oder sowas,
SZ, fehlen uns da natürlich.
Dem zufolge wurde dann also irgendwann standardisiert von einer internationalen Standardisierungsorganisation,
ISO, dann im Prinzip die Zeichensätze als ISO 88, 59.
Da gab es dann einen ganzen Satz unterschiedlicher Codierung,
nämlich Lettin 1 für westeuropäische Sprachen, Lettin Zweifel mitteleuropäische Sprachen,
südeuropäisch, dann gibt es dann aber eben auch baltisch-kyrillisch,
arabisch, griechisch und so weiter und so fort.
Nicht, wo man dann also quasi mit einer 8-Bit-Codierung
maximal 256 Zeichen darstellen kann
Das genügt jetzt natürlich schon, um jetzt, sagen wir mal,
so in der deutschen Sprache wirklich so Großbuchstaben, Plan,
Buchstaben ziffern, dann sämtliche Sonderzeichen und eben noch so ein paar andere Sachen.
Also wenn ich jetzt,
also hier zum Beispiel jetzt hier über westeuropäisch bleibe,
also was man also zum Beispiel in den skandinavischen Ländern hat,
nicht, also diese OEs und die durchgestrichenen Ohrs oder so,
dann entsprechend mit hat, um das irgendwie unterzubringen.
Nichtsdestotrotz habe ich natürlich damit also auch nur maximal 256 Zeichen
und was damit nicht geht, sind mehrsprachige Dokumente.
Das heißt, wenn ich also Hier sage,
ich habe hier irgendwie einen Text und dann soll da aber
irgendwie ein arabischer Text dann irgendwo eingeschoben werden.
Das ist eben eine andere Zeichensatztabelle und das würde nicht funktionieren. Also auch da kann man sagen,
naja, historisch zu sehen,
nicht also bevor das jetzt also wirklich mit dem Internet,
mit der Verbreitung von Informationen also richtig groß losging und man gesagt hat,
okay, ich habe jetzt also hier lokal meine Daten oder bleibe in meinem Sprachraum,
funktioniert das natürlich ganz gut.
Nicht, wenn man sich ansieht,
wie also heutzutage eigentlich Informationen, weltweit global gehandhabt wird.
Sieht man also auch gleich, froh, dass er noch
nicht gehen würde. Gut, wie sehen diese Co-Tabellen aus?
Hier auch nur als Beispiel, also ISO 88, 59,1.
Also das für die westeururopäischen Sprachen. Die haben alle gemeinsam,
also hier so einen Bereich für Kontrolle und Steuerzeichen.
Und der ist auch bei allen von diesen ISO-Codes identisch.
Dann gibt es hier diesen Bereich,
Der ist im Prinzip mit dem Asky-Code identisch,
nämlich das sind also diese Großbuchstaben, Kleinbuchstaben und alles,
was ich im Asky-Code habe.
Das heißt, wenn ich so eine Isokot-Tabelle habe und davon jetzt
eben nur die unteren sieben Bit nehme, habe ich stinknormalen Asky-Code.
So, und dann hier in diesem oberen Teil habe ich dann
eben hier nochmal irgendwelche speziellen Sonderkontrollzeichen und dann eben jetzt hier meine ganzen Sonderzeichen,
die dann in diesem Fall jetzt hier für die typischen
westeuropäischen Sprachen angelegt sind
Ich bei slavischen Sprachen hier unten und das ist alles identisch,
habe ich dann aber hier entsprechend andere Zeichen draufgelegt.
Nicht, was dann im Prinzip jetzt so um die,
ja tausend Wende beziehungsweise entsprechend kurz davor dann kam, war dann ISO 88, 59, 15 nicht.
Dann fing man also auf einmal an, so eine neue Währung irgendwie zu machen. Da gab es also erst den ÖQ,
European Carency Unit aus dem, wo dann irgendwann der Euro,
den möchte man dann also vielleicht nicht,
also gerade wenn man jetzt irgendwie so an Bank- und Geldtransfer denkt,
also auch noch irgendwo kodiert haben, Aal,
so gab es dann also nochmal so einen modifizierten Zeichensatz,
wo dann ein paar Zeichen,
die man also vielleicht als doch nicht so wichtig erachtet hat,
also rausgekickt wurden und dafür gab es dann eben entsprechend hier sowas wie so ein Eurosymbol.
Wenn ich jetzt von dem Standards,
die jetzt durch die Standardisierungsgremien gegangen sind, zurückgehe auf die Quasi-Standards,
die jetzt von vielleicht irgendwie größeren bekannten Softwareherstellern geprägt worden sind,
übergehe, landet man dann also relativ schnell dann bei diesen Microsoft-Code-Pages.
Auch da muss man sagen, gibt es inzwischen alles nicht mehr, glücklicherweise.
Und zwar, da geht es also darum, dass man sagt,
okay, IBM-PC, also Anfang der 80er Jahre, rausgekommen.
Da gibt es dann also auch einen speziellen Erweiterung von Asky,
dann auf so einen 8-Bit-Code,
wo man dann einige Umlaute untergebracht hatte und dann eben auch gerade so ein bisschen Grafiksymbole,
um dann quasi, ja, damals gab es also noch keine richtigen grafischen Desktop-Umgebungen und Fenstersysteme nicht.
Aber wenn man jetzt also irgendwie so ein bisschen auf dem Bildschirm einfach mit Asky-Darstellung oder mit Textdarstellung,
also irgendwelche Felder und irgendwelche Elemente voneinander eingrenzen wollte,
gab es dort dann im Prinzip das, was man hier unten sieht dann,
also diese komischen doppelten Rahmen, beziehungsweise hier ist das Ganze,
also in Form dieser einfachen Rahmen mit irgendwelchen Abzweigungen.
Darüber konnte man also im Prinzip sowas darstellen,
wie das sich also hier auf meinem Bildschirm,
hier jetzt also irgendwelche Zahlen oder Textbereiche habe und dann eben hier irgendwie so Rahmen drum zeichnen kann,
was dann im Prinzip eigentlich auch nur Textzeilen waren,
die dann aber eben aus diesen Symbolen beispielsweise dann mit diesen doppelten Rahmen heraus generiert wurden.
Gut, auch dort kann man sagen,
hat sich inzwischen alles glücklicherweise wiederholt, war also wie gesagt,
also auch bei diesen Cold Pages,
weil da gab es dann also auch für viele verschiedene unterschiedliche,
nicht bei den einen fehlten die Zeichen,
bei den anderen fehlten die Zeichen, konnte sich dann also auch immer nicht so richtig durchsetzen.
Auch so ein bisschen historisch zu sehen, beziehungsweise gut,
dass wir gehen und uns heutzutage dann auch immer noch.
Ist also die Frage, wie sieht das jetzt aus,
wenn ich Texte oder Textinformationen zwischen verschiedenen Rechnern oder Rechnersystemen austausche?
Nicht, also auch etwas, was für uns heutzutage ja nun
völlig selbstverständlich ist. Wo man dann aber eben schon sieht,
dass Rechner X und Rechner Y, also teilweise vielleicht unterschiedliche Zeichendarstellungen haben.
Ich weiß nicht, inwieweit ihnen da das jetzt also vielleicht auch schon mal irgendwie so gegangen ist oder so. Also typischerweise,
ich kenne das immer,
wenn die Leute das also irgendwie Mail-Programm ein bisschen falsch konfiguriert haben und ich dann also irgendwie die Mails von irgendwelchen Mac-Benutzern bekomme,
dass dann teilweise die Omlaute nicht richtig dargestellt sind,
weil die dann eben nicht in die Darstellung jetzt meinetwegen von Windows oder von Linux,
also irgendwie dann umgesetzt werden und dass dort dann noch solche Effekte sind.
Nicht bei den Standard-Zeichen, also das,
was quasi dem Aski-Zeichensatz entspricht, hat man immer kein Problem,
aber bei dem Omlauten begegnet einem das heute teilweise auch
immer noch
Also wie gesagt, sowas gibt es immer noch.
Und gut, Sonderzeichen davon mal ganz abgesehen. Da wird
das dann also wirklich immer noch so ein bisschen schwierig.
Was es heutzutage dann also auch immer noch gibt,
sind also die Sachen wie die Zeilenden kodiert sind.
Also auch da muss man sagen, okay,
also hier mal aufgezählt, unterschiedliche Zeichensätze.
Also dieses hier ist, lassen wir mal außen vor,
ich stelle das mal irgendwie so gerade Ende der 60er Jahre.
Da waren in den Computern noch irgendwie so ganz andere Zeichensätze,
EBC, D, IC, benutzt worden.
Später haben dann eigentlich alle Rechner oder Rechner Generationen dann also angefangen,
Aski-Zeichen zu implementieren. Wo aber dann schon die Unterschiede waren,
war dann eben wirklich Zahlenende. Das heißt,
dass ich habe einen Text zeile und jetzt heißt,
jetzt sagt Brumm, nächste Zeile fängt an.
Bei der Windows-Welt hat sich eigentlich das eingebürgert, das,
was, beziehungsweise damals dann noch Dors, das,
was eigentlich,
also irgendwie aus dieser Fernschreiber-Idee kommt
Carrage Return wagen Rücklauf, Line-Feed, nächste Zeile.
Und dann wird weitergeschrieben. Bei den unix-artigen Betriebssystemen gab es dann
nur ein Line-Feed. Was dann eigentlich genügt und was dann
implizit dann eben auch gleich mitsagt, nächste Zeile beginnt.
Früher hatte Apple dann quasi bei den alten Betriebssystemen nur ein Carrage Return.
Inzwischen stimmt das nicht mehr. Inzwischen ist Apple also überwiegend
eigentlich ein BSD-Unix. Wird dann also quasi auch über
ein Line-Feed kodiert
Nicht, aber das sind Sachen, wo einem sowas dann auch begegnet.
Also wenn sie jetzt also eine Textdatei nehmen vom Windows-Rechner
ordentlich oder so unter Linux angucken und dann eben feststellen,
wie sind die Zahlenenden kodiert, dann sieht man also immer noch entsprechend,
da sind Carrish Return Line Feed, beziehungsweise wenn das umgekehrt ist,
sieht das dann teilweise dann auch immer entsprechend aus.
Gut, glücklicherweise gibt es dann für all sowas irgendwie mehr oder minder findige Programme,
mit denen man das dann also noch entsprechend umsetzen kann.
Nicht, also da ist aber hier nur nochmal so als Hinweis,
wie sich da jetzt im Prinzip Betriebssystem
Eigenschaften auch noch
mit rein
And mit Auswirkungen. Gut, ja, inzwischen muss man sagen,
ist man jetzt natürlich nicht mehr irgendwie Anfang oder Mitte
der 80er Jahre, sondern glücklicherweise ein bisschen weiter.
Wir haben schnelle Internetverbindungen, wir tauschen Daten weltweit aus,
Informationen, wir möchten also auch irgendwie Texte, HTML-Seiten,
was auch immer, irgendwie international austauschen.
So, und das heißt, das,
was wir dort dann eigentlich brauchen, sind welche Sprachstandards oder Sprachkodierungen,
die A, möglichst viele Sprachen überhaupt erst mal unterstützen.
Hinsichtlichte Zeichensätze, das dann eben auch wirklich in Form von mehrsprachigen Dokumenten. Das heißt,
ich kann eben wirklich in einem Text, in einem Dokument,
in einer HTML-Seite jetzt wirklich sowohl indisch als auch Deutsch,
als auch jetzt irgendwelche anderen exotischen Schriften oder irgendwelche,
ja,
was gibt es denn noch als ganz sexotisch,
also irgendwelche indianischen Symbole.
Irgendwie sowas mit rein kodieren
Gut, orientalisch, asiatische Sprachen. Also auch da hat man
entsprechend viel. Gut, da reichen also weder Asky sowieso nicht,
aber eben auch diese ganze ISO-Zeichensätze eigentlich nicht aus.
Zwischenzeitlich gab es dann mal so Ideen,
dass man also sagt, okay,
ich habe also irgendwie ähnlich wie bei dem ISO dann,
also irgendwie so unterschiedliche Zeichensatztabellen und schalte dann immer noch irgendwie um,
da soll die benutzt werden, da soll die benutzt werden.
Ist aber natürlich also auch nicht so ganz praktikabel.
So das, was man heutzutage eigentlich macht, ist,
sind die sogenannten Unicode-Kodierungen. Das ist eben ein international standardisiertes System,
wo eben im Prinzip alle Zeichen von Sprachen beziehungsweise Schriftsystemen dargestellt werden können,
hat ursprünglich also mal irgendwie mit den Standardsprachen angefangen,
ging dann also inzwischen über teilweise auch irgendwelche Totensprachen bis zu inzwischen,
also auch sämtliche Emojis und Icons sind eben in diesem Unicode-Standard eben auch entsprechend standardisiert.
Unicode auch abgekürzt als UCS, Universal Character Set ist eigentlich das,
was also heutzutage von allen Betriebssystemen mehr oder minder
unterstützt wird
Man hat die passenden Schriftarten installiert, weil das ist natürlich die nächste Sache.
Wenn ich also auf meinem Rechner jetzt also quasi für Schriftart,
Areal keine arabischen Zeichen habe und mir da jetzt irgendwie was Anzeichen anzeigen lasse,
wo soll der Rechner das bitte schön näher nehmen?
Also es ist zwar standardisiert und es gibt es auch,
die entsprechend, sagen wir mal, installierte Schriftarten,
muss das aber natürlich dann auch irgendwo hergeben.
Das sind dann Probleme, die uns teilweise heutzutage dann
immer noch irgendwie begegnen können.
Aber wie gesagt, von der Idee her ist das alles
entsprechend festgelegt
Hier ist noch mal so ein bisschen was zur Historie. Also wie gesagt,
1991 ging das los mit europäischen nah röstlichen und eben indischen Sprachen,
nicht als nächstes kam dann also im Prinzip die ganzen Hangul-Sprachen,
also dann eben chinesisch und japanisch und der ganze Sprachraum mit hinzu.
Inzwischen 2017, also jetzt, ich glaube,
irgendwann im Sommer ist Unicode Standard 10 fertig geworden,
sind inzwischen also 1036.6090 Zeichen,
nicht von Sprachzeichen bis zu irgendwelchen Jurglyphen dann eben diverse Symbole,
Satzzeichen, Pfeile, mathematische, technische Bezeichnungen,
Noten sind standardisiert, Währungen sind standardisiert.
Als Beispiel so ein Bitcoin-Symbol, wobei das ist jetzt hier noch selber zusammengebaut,
gibt es seit 2017, also auch im Unicode-Standard,
Emojis sind standardisiert inzwischen, also auch über 2.500 und entsprechend viele Kombinationen.
Wie gesagt, wenn man sich sowas mal ansehen will,
hier sind dann also irgendwie so ein paar in der Links,
also man kann einmal hier also direkt jetzt auf diese Charts gehen.
Ah gut, bin ich nicht rausgeschmissen worden. Nicht und würde dann also hier entsprechend jetzt sehen,
kann man sich jetzt also irgendwie irgendeine Art von Sprache raussetzen,
also das, womit wir arbeiten, nicht Asky,
Let and Supplement, das sind also quasi die ganz normalen Standard-Codierungen,
wie wir sie jetzt also hier für unsere Zeichensätze haben,
beziehungsweise das Supplement entspricht dann eben quasi dem,
was dann jetzt für die oberen Witze hinzugekommen ist.
CHK, das wäre dann eben zum Beispiel dann wirklich jetzt
hier die chinesischen Zeichensätze.
Mal sehen, ob er hier irgendwann nochmal anfängt,
da ein bisschen was darzustellen
Ah, das war der Vorfüreffekt. Doch, hurra,
genau. So, nicht? Und ja, wie gesagt,
also damit ist dann eigentlich letztendlich alles an Zeichen oder Zeichenkodierung,
was nun hat so typischerweise darstellbar, wie gesagt,
also von allen möglichen Sprachen, die es gibt,
dann also bis zu Chirokee und Chirokee Supplement,
nicht dann eben Symbole,
Notensätze, alles, was man dort eben letztendlich,
also hier irgendwie Symbole für Schach und so weiter,
also letztendlich alles Mögliche ist dann dort also entsprechend passend standardisiert,
auch ganz nett dargestellt, auch die normale Seite,
diese Unicoach Table, also hier sieht man dann nämlich ganz gut,
wie man dann also quasi jetzt hier, also seine unterschiedlichen Zeichenbereiche hat,
nicht also hier mit den Standard-Asky-Zeichen geht es los,
dann hat man hier also die Basissprachen, kommt dann,
also wenn man hier weiter unten geht,
dann eben um die erweiterten Sprachen aus dem slavischen Raum,
dann eben bis jetzt zu kyrillischen Zeichen, armenisch,
arabisch und so weiter und so fort,
kriegt man immer hier noch so ein bisschen angezeigt,
wo sie das Ganze letztendlich stattfindet.
Gut, wie werden diese Unico-Zeichen geschrieben, beziehungsweise wie werden die entsprechenden dargestellt? Ursprünglich war es also auch mal so,
dass man gesagt hat, okay,
also ich mache jetzt also aus den 8-Bit großzügigerweise 16-Bit,
Das ist dann quasi das,
was dann so als sogenannte Basic Multilingural Plane bezeichnet wird,
wo ich dann im Prinzip über so eine Schreibweise U plus und dann eben so einen vierstelligen Hacks wert,
mal direkt, also das Unicorn-Zeichen auswählen kann.
Das kann man dann eben auch beispielsweise in Arning Programmiersprachen,
unter anderem im Java benutzen,
wo ich dann also quasi über so ein Backslash U,
was dann also quasi ein Unicorn-String angibt und dann baue ich
dann eben noch vier Hackswerte,
um dann eben zum Beispiel sowas wie so ein Omega oder
so ein Euro-Symbol entsprechend aus diesem Unicorn-Standard in meinem Java-Code hereinzubringen
Gut, inzwischen muss man sagen, ja okay,
2016 ist dann das, was ja mit 16 Bett irgendwie machen kann.
Das funktioniert dann natürlich irgendwann auch nicht mehr. Nicht und
dazu gibt es dann jetzt eben noch wieder entsprechende Erweiterungen,
die dann eben noch mehr Stellen haben,
wo man dann eben noch sogenannte Erweiterungsplains hat,
ist letztendlich das, was also in dem Unicode-Standard mit drin ist.
Das, was in den Rechnern meistens noch verwendet wird,
ist dann sogenannte UTF-Kodierung, kommt gleich zu,
weil die sie dann noch ein bisschen anders aus
Auch nun mal, um das mal zu zeigen, wie das also letztendlich aussieht,
in Webseiten hat man das zum Beispiel dann immer typischerweise,
wo ich dann eben zum Beispiel sage, innerhalb des HTML-Headers, welchen Zeichensatz verwende ich.
Und typischerweise habe ich da dann also irgendwie sowas,
wo ich also eben her da stehen habe, Text,
HTML und dann eben als Zeichensatz OTF 8,
das wäre dann eben eine von den Codierungen, die dann gleich auch nochmal so ein bisschen vorgestellt werden.
Und wenn ich dann also mal hier Wie gesagt,
was kann jeder also auch gerne mal selber bei seinem eigenen Rechner machen,
weil da sieht man nämlich ganz gut bei diesem UTF 18 Blabbers,
also auf dem Rechner ans Zeichen setzen installiert ist,
wo dann also im Prinzip jetzt von irgendwelchen Runenschriften,
nicht so über die Standardschriften,
die wir dann also hier immer haben, dann bis zu Griechisch,
dann hier entsprechend kyrillische Schriftsätze und so weiter und runtergehe und irgendwo hier kommen dann eben diese Phrasen,
wo dann also hier die Zeichensätze,
hier sieht man zum Beispiel noch Bray-Schliff,
also das zumindest auf dem Rechner ist das also irgendwie auch installiert.
Ja, und das sind dann immer so die typischen Beispiele in unterschiedlichen Schriften und Zeichensätzen,
also hier dann sowas wie Handy,
Jamil und so weiter und irgendwann wird dann also,
glaube ich, also auch hier bei mir irgendwie,
meinte ich zumindest,
dass da noch
irgendwie sowas kommt
Nee, gut, doch nicht. Ja, sehr gut. Also kein,
in dem Sinne jetzt, also Vorführeffekt im negativen Sinne,
also hier auf dem Rechner scheint relativ viel installiert zu sein,
als ich mir das vorhin, also auf meinem heimischen Desktop angesehen hatte,
war dann also hier an einigen Stellen, nämlich also einfach nur so Boxen mit entsprechend irgendwie so einem kleinen Quadrat drumherum gezeichnet,
was dann eigentlich immer ein Zeichen dafür ist,
dass Platzfahrte und entsprechende Zeichensatz fehlt, um das dann eben entsprechend darzustellen.
Gut, also wie gesagt, das zum Beispiel, was dann also mit Unicode letztendlich machbar beziehungsweise darstellbar ist. Und wie gesagt, also gerade in Webseiten hatten wir das typisch. Gut,
hier also auch nochmal Screenshot von dem Ganzen, irgendwas,
was man dort dann eben typischerweise hat,
sind dann eben Diese Zeichen, also hier nochmal als direkte Links,
jetzt im Sinne von den Standardzeichen setzen, also europäische Umlaute,
nicht und dann eben hier, also auch noch die Links,
also auf die entsprechenden Teile dann eben wirklich bis zu irgendwelchen speziellen Schriften,
wie er sie also beispielsweise in diesem Fall von Microsoft dann also auch irgendwann mal entsprechend propagiert,
beziehungsweise dann auch als Unicoach-Standard mit reingebracht, also das,
was an Zeichen, in dem Ding-Buds-Typensatz mit drin ist, nicht,
wo ich dann eben jetzt alle möglichen und sonstigen Symbole dort mit drin habe und so weiter, chinesische Zeichensätze und so weiter und so fort.
Ansehen kann man sich das sonst auch immer noch,
auch das ist auf der Webseite verlinkt,
mit diesem 2D oder Java 2D Fond Viewer,
das ist im Prinzip bei den Beispielprogrammen von den ganzen Java Entwicklungsprogrammen immer mit dabei,
der entsprechende Code, wie gesagt,
also dann auch auf der Webseite mit verlinkt und Das,
was man dort dann eben machen kann, ist dann eben auch entsprechend dieses Programm.
Also dieses Programm entsprechen dann also auf seinem Rechner mal ausführen.
Und da kann man dann eben auch entsprechend die Zeichensätze sich dann für die entsprechenden Fonds ansehen,
die theoretisch installiert sind und dann eben sagen, okay,
wenn ich jetzt das hier irgendwie arabisch haben möchte,
also wie sieht das aus,
was ist davon installiert und so weiter und so fort
Gut, wie Unicode kodiert wird auf dem Rechner,
wird nächste Woche folgen.
Für heute ist die Zeit um. Ich wünsche allen ein
schönes Wochenende,
dann bis Mittwoch