Kodierung mit Unicode – UTF

Kodierung ist uraltes Instrument der Natur, dass bei Kommunikation eingesetzt wird.  Somit wird Kommunikation mit Kodierung universell eingesetzt, wie zum Beispiel in der Pflanzenwelt mit Auxinen und in der IT sind das Kodierungen wie UTF. Denn Kommunikation funktioniert immer auf der gleichen Basis und braucht Standards.

Basis von Kommunikation

  • Es gibt einen Sender, der kommunizieren will
  • Es gibt einen oder mehrere Empfänger
  • Es gibt Daten, die Sender und Empfänger in einen Kontext setzen und damit werden Informationen übermittelt
  • Es gibt Regeln zum Austausch, die auch als Protokolle bezeichnet werden
  • Es gibt einen Zweck, warum der Austausch mittels Kommunikation notwendig ist

In der IT hat sich die Kodierung im Laufe der Zeit weiter entwickelt. So wird heute sehr häufig Unicode eingesetzt, das auch Unicode Transformation Format genannt wird.

Mit Unicode ist es möglich, die gängigen Zeichen aller Schriften zu nutzen. So können damit 232 Zeichen kodiert werden, im Gegensatz zum erweiterten ASCII Code, der 128 Zeichen kodieren kann. UTF ist also ein wichtiges Mittel für den globalen Austausch von Daten und Informationen über alle Völker und Kulturen hinweg.

UTF kodiert ein Zeichen immer mit 32 Bit. Damit es mit einer weiteren, häufig genutzten Kodierung kompatibel ist, sind die ersten 128 Zeichen wie bei ASCII kodiert.

Ein Hemmnis von Unicode ist der hohe Verbrauch von 32 Bit pro Zeichen. So werden gleiche Texte gegenüber ASCII Code um das 4-fache umfangreicher. Um die Datenmenge zu reduzieren gibt es verschiedene Arten der UTF Kodierung.

Kodierung mit UTF-32

Hier jedes Zeichen mit 32 Bit kodiert. Es ist die einfachste und kompatibelste Kodierung mit Unicode. Wird zuerst das höchstwertige Byte übertragen, dann wird diese Kodierung Big Endian (UTF-32BE) genannt. Wenn das niedrigstwertige Byte zuerst übertragen wird, dann wird dies als Little Endian (UTF-32LE) bezeichnet.

Kodierung mit UTF-16

Hier werden zur Kodierung eines Zeichens entweder ein 16 Bit- oder zwei 16 Bit Blocks verwendet. Diese Kodierung wird gerne bei Sprachen mit nicht lateinischen Zeichen eingesetzt. Ähnlich wie bei UTF-32 gibt es hier auch UTF-16BE und UTF-16LE.

Kodierung mit UTF-8

Hier werden die Zeichen mit einer variablen Länge von 1 bis 4 Byte kodiert. Da in vielen Fällen die ersten 128 Zeichen des dazu kompatiblen Standard ASCII Codes (7 Bit) verwendet werden, ist dieser Kodierungstyp der Effizienteste. Das achte Bit wird zum Einleiten der Verlängerung des Zeichens auf bis zu 32 Bit genutzt.

Byte Order Mark oder BOM

Das ist eine Signatur, die zu Beginn der Nutzung übertragen wird. Sie dient der leichteren Identifizierung der Kodierung bei verschiedenen Systemen. Wenn aber vorher schon eindeutig geklärt ist, wie die Daten übermittelt werden, kann die BOM weg gelassen werden. Dies geschieht zum Beispiel bei HTML Seiten durch die Angabe des <meta charset=“utf-8″ />.

Es gibt noch weitere UTF Kodierungen, die aber in der Praxis nur wenig eingesetzt werden.

Siehe auch:

Codepage oder Zeichensatz Tabelle in der IT

Ist Kodierung gleich Codierung?

 

Web Entwicklungsumgebung XAMPP installieren

Web Entwickler brauchen für die Erstellung von Webseiten, CMS, Blogs und weiteren internet-affinen Systemen eine Entwicklungsumgebung. Hier bietet seit vielen Jahren die Open Source Entwicklungsumgebung XAMPP eine tragende Rolle.

XAMPP Installation

Im nachfolgenden Video wird die Installation von XAMPP gezeigt. Mit dabei sind Tipps und Tricks.

Web Entwicklungsumgebung XAMPP installieren from Karl Högerl on Vimeo.

Fazit

XAMPP ist eine häufig genutzte Entwicklungsumgebung mit viel Potential. Es gibt Unterstützung von HTML, CSS, PHP, MySQL DB, JSP und dem Tomcat Server.

Unternehmensprozesse im Zeitalter von Industrie 4.0

Unternehmen sind ein Teil der Privatwirtschaft und dem stetigen Wandel in der Natur unterworfen. Die Anpassung gelingt einigen Unternehmen sehr gut und anderen weniger gut. Im Zeitalter der elektronischen Datenverarbeitung haben sich Systeme entwickelt, die den Wandel zu Industrie 4.0 mit KI begünstigen. Die nachfolgende Auflistung zeigt im Überblick Einige von Unternehmen eingesetzte Datenverarbeitungssysteme.

Unternehmensweite Planung bei Industrie 4.0

Unternehmensweite Planung bei Industrie 4.0
Unternehmensweite Planung bei Industrie 4.0

Enterprise Ressource Planning (ERP) ist die unternehmensweite Planung von Ressourcen des gesamten Unternehmens. Dabei wird bei Industrie 4.0 immer mehr KI genutzt werden, um den Bearbeitern und Entscheidern zeitnah, umfassende Auswertungen und Lösungen anzubieten. Die Entscheidungen fällt jetzt noch der Mensch. Aber dies wird sich in der Zukunft ändern. Denn der Mensch wird die Koexistenz und Handlungsfähigkeit der KI als gleichberechtigter Partner akzeptieren müssen. Das verändert die Wirtschaftssysteme.

Je nach Branche sind die ERP Systeme unterschiedlich aufgebaut. einige Unternehmen leisten sich individuelle angepasste ERP Systeme. Andere nutzen Vanilla Lösungen. Eine Vanilla Lösung stellt die standardisierte, nicht angepasste Anwendung „out of the box“ dar. Diese hat den Vorteil, das Versions-Upgrades einfach und kostengünstig möglich sind. Dafür werden bei diesen Unternehmen in vielen Bereichen Standardprozesse genutzt.

Umfassende Kommunikation der IT-Systeme ist erforderlich

Über Schnittstellen erfolgt die Kommunikation der Subsysteme mit einer einheitlichen Sprache zum Datenaustausch. Meist wird dafür Extended Markup Language (XML) genutzt. Die in großen Mengen vorhandenen Daten werden in leistungsfähigen Datenbanken vorgehalten. Auch hier wird immer mehr KI eingesetzt und unterstützt die Prozesse. So werden sich in der multipolaren Welt diese Systeme unterscheiden und das entspricht der von der Natur gewünschten Vielfalt und ermöglicht die Zukunftsfähigkeit von Unternehmen, Mitarbeitern und der KI.

Was ist ein Algorithmus?

In unserem täglichen Leben benutzen wir immer wieder Algorithmen. Aber wenn wir erklären sollen, was ein Algorithmus ist, dann wird es schwierig.

Ein Algorithmus ist eine Anleitung, mit bestimmten Eingabedaten bestimmte Ausgabedaten zu produzieren und auszugeben. Mit anderen Worten:

Es ist eine Handlungsvorschrift, um ein Problem schrittweise zu lösen

Anforderung an Algorithmen in der Programmierung

  • Der Algorithmus muss vollständig beschreibbar sein
  • Das Rechenverfahren muss aus einzelnen Arbeitsschritten bestehen, die zur Lösung des Problems führen
  • Jeder Schritt davon muss zu einem eindeutigen Ergebnis führen
  • Bei gleichen Eingaben erhält man immer das gleiche Ergebnis
  • Das Verfahren muss zu einem Ergebnis führen
  • Der Algorithmus muss universell und auf alle Daten anwendbar sein

Wie wird ein Algorithmus notiert oder aufgeschrieben?

Insgesamt kann dieser in einer Sprache wie zum Beispiel in Deutsch aufgeschrieben werden. Allerdings kann ein Computer den Algorithmus im Regelfall nicht verstehen.

Wie kann ein Computer mit Algorithmen arbeiten?

Damit der Computer den Algorithmus versteht, werden Programmiersprachen eingesetzt. Dabei wird zwischen strukturierter und objektorientierter Programmierung unterschieden. Die meisten Programmiersprachen bieten ähnliche Möglichkeiten die Lösung einer Problemstellung zu beschreiben oder wie der Programmierer sagt, zu implementieren.

Wie kann ein Algorithmus dokumentiert werden?

Dazu kann die Unified Modeling Language UML eingesetzt werden. Hier können Algorithmen grafisch dargestellt werden. Dies stellt eine praktische Ergänzung zur textuellen Beschreibung dar.

 

NoSQL Datenbanken im Überblick

Erste NoSQL Datenbanken wurden Carlo Strozzi entwickelt. Dieser Datenbanktyp verfolgt einen nicht relationalen Ansatz. Es werden keine Tabellen genutzt, die in Beziehung zueinander stehen. NoSQL Datenbanken eignen sich für die Indexierung großer Datenmengen, haben aber eine eingeschränkte Konsistenz der Daten. Daher erfolgt die Nutzung von NoSQL hauptsächlich bei der Abfrage und Auswertung von Daten. Es können Daten redundant abgelegt werden. Daher können hier sehr viele fast gleichzeitig auftretende Schreib- und Lesevorgänge abgearbeitet werden. Das ist bei relationalen Datenbanksystemen nicht möglich. Es gibt verschiedene Datenbanksysteme (DBS), die NoSQL Funktionen anbieten.

Datenbanksysteme, die NoSQL unterstützen

Datenbanksysteme, die NoSQL unterstützen sind z.B. MongoDB, Neo4j, Berkeley DB, Apache Cassandra, Apache Kafka, IBM Notes.

Daten – Information – Wissen im Kontext der Informatik

Der Begriff Information ist in der römischen Antike zum Beispiel durch Cicero als Vorstellung der Götter “informatio dei” genutzt worden. Augustinus hat mit “informatio sensus” den Prozess der sinnlichen Wahrnehmung auch als Unterweisung und Belehrung abgeleitet. Im 15. und 16. Jahrhundert wurde “informare” für die Tätigkeit der Benachrichtigung genutzt.

Der Mathematiker Claude E. Shannon definierte 1948 in seinem Aufsatz ” A Mathematical Theory of Communication” den Begriff Information im Kontext der Nachrichtentechnik. Daraus entstanden Wissenschaftsbereiche wie Informationswissenschaft und Informatik. Aber auch die Disziplinen Soziologie, Medientheorie und Philosophie wurden dadurch beeinflusst.(1)

Betrachten wir, wie Daten zu Information und Wissen werden

Daten sind in der Informatik Zeichen, die meist maschinenbearbeitbar sind. Stehen diese Zeichen im Kontext einer Bedeutung, dann werden aus strukturierten Daten Informationen.

Aus Informationen wird Wissen, wenn Menschen durch Beobachtung oder Erfahrung auf Zusammenhänge schließen. Nach der Philosophie Kants wird dies mit durch den Verstand kontrollierte Vernunft erreicht.

Beispiel

Daten 08937432
Information (durch Kontext “Telefonnummer”) 08937432
Wissen (durch Erfahrung oder Beobachtung: München hat die Vorwahl “089”) 08937432

 

In diesem Zusammenhang gibt es eine asiatische Sichtweise, die ein berühmter asiatischer Philosoph schrieb(2)

Die Nichtwissenheit wissen
ist das Höchste.
Nicht wissen, was Wissen ist,
ist ein Leiden.
Nur wenn man unter diesem Leiden leidet,
wird man frei von Leiden.
Daß der Berufene nicht leidet,
kommt daher, daß er an diesem Leiden leidet;
darum leidet er nicht.

 

Quelle: (1) Alexander Roesler/Bernd Stiegler “Grundbegriffe der Medientheorie”; (2) Laotse