Grundtypen (2)


An Stelle der rationalen Zahlen Q mit den Operationen Addition (+), Subtraktion (-), Multiplikation (*) und Division (/) und der rellen Zahlen R mit den gleichen Operationen gibt es in Modula wie in anderen Programmiersprachen einen Typ REAL, der aus einer endlichen  Anzahl von rationalen  Zahlen besteht. Die Ergebnisse von Rechenoperationen mit Werten dieses Typs sind grundsätzlich ungenau , daher machen die (vorhandenen) Vergleichsoperationen = und <> hier wenig Sinn!

Der zweckmäßige Umgang mit Werten vom Typ REAL so, daß sich die Ungenauigkeiten bei einer längeren Rechnung nicht zu sehr aufschaukeln, ist Gegenstand eines eigenen Wissenschaftszweiges: numerische Mathematik.

Als Grundlage für die Bearbeitung von Texten haben wir in allen modernen Sprachen schließlich noch den Datentyp CHAR. Er umfaßt mindestens alle druckbaren und über eine Tastatur eingebbaren Zeichen einschließlich des Leerzeichens (" "); oft sind noch andere Spezialzeichen über Hilfskonstrukte erreichbar. Der zu Grunde liegende Zeichenvorrat ist in Modula (und in den meisten anderen Sprachen) heute der "American Standard Code for Information Interchange" ASCII, oft mit nationalen Erweiterungen (wie die deutschen Umlaute), die bei der Übertragung auf andere Systeme manchmal für Überraschungen sorgen. Abweichend davon verwenden Großrechnersysteme (historisch bedingt) oftmals noch den von IBM entwickelten Code EBCDIC. Seit einigen Jahren wird unter der Bezeichnung UNICODE versucht, einen für alle Sprachen der Welt ausreichenden Code zu definieren, doch hat sich diese Codierung (außer in der Sprache JAVA) bisher nicht breit durchgesetzt.

In Modula werden Werte vom Typ CHAR in Paaren von einfachen (') oder doppelten (") Anführungszeichen notiert. Auf dieselbe Weise können auch Zeichenketten ("Strings") angegeben werden; doch ist zwischen einem Einzelzeichen und einer Zeichenfolge der Länge 1 logisch ein Unterschied! Die Zeichenfolge der Länge Null ("") gibt es auch.

Zeichen treten nicht nur als Bestandteile von (alphanumerischen) Texten auf, sondern auch, vor allem in der Mathematik, als Namen von Objekten. Dabei zeigt sich oft, daß der verfügbare Zeichenvorrat nicht ausreicht; Abhilfe schafft der Gebrauch von längeren Zeichenketten, von Bezeichnern, als Namen.


zurück | Inhalt | Index | vor | Vorlesung

Klaus Lagally, 22. Februar 2000, 19:36