Programmiersprachen

Aus ProgrammingWiki
Archivierte Version vom 2013-09-01T16:12:04+00:00. Aktuelle Version

Inhaltsverzeichnis

Programmiersprachen

Zuerst war es die Maschinensprache, die dann durch die maschinennahe Sprache Assembler unterstützt wurde. Durch eine Übersetzung konnte man das Assemblerprogramm in die Maschinensprache überführen.

Es wird also eine Sprache aus kurzen einprägsamen Befehlen kreiert, die man durch einen Übersetzer (Übersetzungsprogramm) in die Maschinensprache überführen kann. Die Übersetzungsprogramme heißen Interpreter oder Compiler. Wieso gibt es hier zwei verschiedene Übersetzungsprogramme? Da diese Programme verschieden vorgehen. Der Interpreter übersetzt Zeile füe Zeile. Der Compiler übersetzt alles in einem Rutsch.

Jede Sprache hat eine Syntax (Grammatik/Satzbau) und eine Semantik(inhaltliche Bedeutung einer Sprache).

Wikipedia Assembler

Die fünf Generationen der Programmiersprache


1. Generation: Maschinensprache

Auf der untersten Ebene der Programmiersprachen arbeitet man nur mit Zahlen.
Dementsprechend sind die Programme völlig unleserlich und schwer zu erstellen.
Die Programme sind sehr schnell.

2. Generation: Assembler Sprachen

Die Assemblersprachen orientieren sich an den Maschinenbefehlen des jeweiligen 
Prozessors.
Diese Befehle kann man sich besser merken als den Zahlencode der Maschinensprache.
Komfortable Compiler beherrschen zudem Schleifen und Unterprogramme.
Damit wurde die Lesbarkeit des Quellcodes erhöht.

3. Generation: Höhere Programmiersprachen

problemorientierte imperative Sprachen

   Beschreibung der Problemlösung erfolgt algorithmisch
   erste Vertreter: FORTRAN (formular translator) und ALGOL (algorithmic language)
   typische (heutige) Vertreter: Java, C++, Object Pascal (Delphi), ...

4. Generation: Nichtprozedurale Programmiersprachen

Mit dieser Technik wird nicht mehr beschrieben, 
wie ein Problem gelöst werden soll,
sondern nur noch WELCHES PROBLEM zu lösen ist.
Diese Programmiersprachen sind natürlich nur 
für ganz spezielle Probleme konzipiert worden.
Hierzu zählt beispielsweise SQL.

5. Generation: Programmiersprachen der Künstlichen Intelligenz

Mit diesen Programmiersprachen werden Lösungen mit Hilfe 
von bestimmten Regeln erarbeitet.
Hierzu sind ausgefeilte Mechanismen zu implementieren,
die bei Problemen zur selbständigen Lösung an Hand der Regeln führt.
Diagnosesysteme können so zur Lösung gelangen. 
Ein Vertreter ist PROLOG.

Programmierparadigmen


Imperative/prozedurale SprachenDeklarative/prädikative Sprachen
Merkmal|Benutzer legt durch die Sprache fest, wie das Problem gelöst werden soll. Der Lösungsweg wird als eine Folge von Einzelschritten aufgeschrieben. Die Schritte bestehen aus Anweisungen, die aus den algorithmischen Grundstrukturen Sequenz, Bedingungen und Schleifen zu komplexen Verbundanweisungen verknüpft werden.Der Benutzer beschreibt, was das Problem ist, indem er bekanntes Wissen angibt. An das System werden Anfragen gestellt, die entsprechend mit den Lösungsmechanismen Unifikation, Resolution und Backtracking abgearbeitet werden. Es findet ein auf logische Schlüsse basierendes Beweisen in einem System von Tatsachen und Schlussfolgerungen statt.
Beispiel:Beschreibung eines Kreises Leg den Mittelpunkt fest Rotiere mit dem Zirkel um 360° um den MittelpunktMenge aller Punkte, die zu einem vorgebenden Punkt den gleichen Abstand haben
typische VertreterC++, Java, ALGOL, FORTRAN, PASCAL, BASIC, Delphi (Object PASCAL)LISP, PROLOG, HASKELL

zurück weiter