zur Formulierung von Programmen erforderlich, wobei man zwischen maschinen- und problem- bzw. benutzerorientierten Sprachen unterscheidet. Zu ersteren gehört die Maschinensprache und die symbolische Sprache Assembler. In Maschinensprache geschriebene Programme enthalten Befehle, die vom Steuerwerk strukturgleich verarbeitet werden. Symbolische Sprachen werden zunächst in Maschinensprache übersetzt. Benutzerorientierte Sprachen abstrahieren von der maschineninternen Realisierung. Sie unterstützen die Lösung bestimmter Aufgabenstellungen durch ihre Struktur und die verfügbaren Sprachelemente. Für betriebswirtschaftliche Anwendungen werden vorwiegend Sprachen wie COBOL und RPG eingesetzt, für technisch-wissenschaftliche Aufgabenstellungen eher FORTRAN, ALGOL und C.
Begriff der Elektronischen Datenverarbeitung (EDV). Datenverarbeitungsanlagen (DVA) bedürfen für ihre Zweckerfüllung des gezielten Einsatzes und der Anleitung durch den Menschen. Diese Anleitung erfolgt in Form von Programmen, die als Folge von Definitionen und Einzelanweisungen die Organisation der Verarbeitungsdaten (Dateiaufbau) und die Schritte des Aufgabenvollzuges (Programmablauf) detailliert festlegen.
Die für Digitalrechner typische Verwendung eines Binärcodes für die maschineninterne Darstellung gilt auch für die Darstellung von Anweisungen, d. h. auch die Programme sind in ihrer ablauffähigen Form nur eine Folge von binären Nullen und Einsen. Die Menge der in diesem Maschinencode für eine DVA zur Verfügung stehenden Anweisungen wird auch als Maschinensprache und eine in diesem Code geschriebene Anweisungsfolge als Maschinenprogramm bezeichnet. In der Anfangszeit des Einsatzes elektronischer DVA mußten die Anweisungen noch personell in der Maschinensprache vorgegeben werden. Bald wurden jedoch Übersetzungsprogramme entwickelt, die es ermöglichen, die Anweisungen in einer benutzerfre und licheren, mnemotechnischen Sprache zu formulieren. Mnemotechnische Programmiersprachen sind Sprachen, die in ihren Sprachelementen und in ihrem Aufbau besser auf das menschliche Erin-nerungs und Erkennungsvermögen ausgerichtet sind als die Maschinensprachen. Das Übersetzungsprogramm transformiert die zwischensprache der Programmvorgabe in die eigentliche Maschinensprache. Da dieses Verfahren für den Anwender leichter zu erlernen und zu handhaben sowie auch weniger fehleranfällig ist, erhöht es die Wirtschaftlichkeit der Programmentwicklung. Die fast unübersehbare Vielzahl der entwickelten Programmiersprachen kann nach verschiedenen Kriterien in Sprachtypen eingeteilt werden. Eine grobe Einteilung läßt sich zunächst nach maschinenorientierten und benutzerorientierten Sprachen vornehmen. Zu den maschinenorientierten Sprachen gehören neben den eigentlichen Maschinensprachen, die keiner Übersetzung mehr bedürfen, die symbolischen Sprachen, auch Assemblersprachen genannt. Die Assemblersprachen entsprechen im Befehlsaufbau den Maschinensprachen. Der wesentliche Unterschied der Assemblersprachen zu den Maschinensprachen liegt in der Verwendung mnemotechnischer Abkürzungen für den Operationsteil sowie in der Möglichkeit der vereinfachten (symbolischen) Adressierung der Befehle. Da ein Assemblerbefehl immer einem Maschinenbefehl entspricht, erfolgt bei der Übersetzung eine 1:1 Umsetzung. Benutzerorientierte Sprachen verwenden, ebenso wie die Assemblersprachen, eine symbolische oder mnemotechnische Form der Befehlscodierung. Befehlsspektrum und Befehlsaufbau sind jedoch losgelöst von der Struktur der Maschinensprache und orientieren sich stärker an den Benutzerbedürfnissen. Es entfällt daher die Bindung der Sprachen an spezielle Rechenanlagen, dagegen finden wir häufig eine Sprachstandardisierung nach den Anforderungen eines Benutzerkreises. Die Verbindung zu speziellen Rechenanlagen stellen die von den Herstellern gelieferten Übersetzungsprogramme her, die die Anweisungsfolge der benutzerorientierten Sprache in eine Befehlsfolge der jeweiligen Maschinensprache umwandeln. Durch die unterschiedlichen Sprach und Befehlsstrukturen ergeben sich dabei Umsetzungsverhältnisse von 1:n (n i? 1), d. h. je nach Art der Operation und dem Sprachumfang der Maschinensprache wird eine benutzerorientierte Anweisung in einen oder (in der Mehrzahl der Fälle) mehrere Maschinenbefehle umgesetzt. Die benutzerorientierten Sprachen lassen sich weiter unterteilen in Vielzwecksprachen und problemorientierte Sprachen. Vielzweck oder auch Universalsprachen sind die benutzerorientierten Sprachen, die nicht auf einen Anwendungsbereich oder eine Teilaufgabe der Datenverarbeitung ausgerichtet sind, sondern die Bewältigung möglichst vielfältiger Aufgabenstellungen erlauben. Ein Beispiel ist die Programmiersprache PL/1. Problemorientiert sind die benutzerorientierten Sprachen, die durch ihren Aufbau und ihre sprachlichen Mittel die Lösung spezieller Aufgabenstellungen unterstützen. Beispiele für Sprachen, die mehr für betriebswirtschaftliche Anwendungen konzipiert sind (auch kommerzielle Sprachen genannt) sind COBOL und RPG. Beispiele für Sprachen, die besser die Erfordernisse technischwissenschaftlicher Anwendungen berücksichtigen, sind FORTRAN und ALGOL. Sie wurden in erster Linie für die in Forschung und Technik typische rechenintensive Verarbeitung meist kleinerer Datenmengen konzipiert.
Vorhergehender Fachbegriff: Programmhilfe | Nächster Fachbegriff: Programmiersprachen
Diesen Artikel der Redaktion als fehlerhaft melden & zur Bearbeitung vormerken
|
|