REFERAT-MenüDeutschGeographieGeschichteChemieBiographienElektronik
 EnglischEpochenFranzösischBiologieInformatikItalienisch
 KunstLateinLiteraturMathematikMusikPhilosophie
 PhysikPolitikPsychologieRechtSonstigeSpanisch
 SportTechnikWirtschaftWirtschaftskunde  



Die Entwicklung der Programmiersprachen

Die Entwicklung der Programmiersprachen

Allgemeines

  1. Vorgeschichte
  2. Definition

Einteilung nach dem Funktionsumfang

1.Generation
2. Gereration
3. Gereration
4. Gereration
5. Gereration

Übersicht über die Programmiersprachen

Vorgeschichte




Blaise Pascal konstruiert die erste Addiermaschine


Charles Babbage konstruiert die erste Rechenmaschine


Ada Lovelance schreibt die ersten Programme


Der erste Computer namens ENIAC wird gebaut


Erste Hochsprache: FORTRAN von IBM


PCs kommen auf den Markt. Programmiersprachen: Basic und Assembler

Was ist eine Programmiersprache

Eine Programmiersprache besteht aus:

Ein/Ausgabe Funktionen für den Datenaustausch mit der CPU und der Peripherie

Arithmetische Funktionen zur Zahlenbearbeitung

Logische Konstrollstrukturen zur Ablaufsteuerung wie z.B. Schleifen

Funktionen zum verschieben von Daten im Speicher

Befehle um Konstanten, Variablen und Strukturen zu verwenden.

1. Generation

Maschinensprache wurde ab ca. 1950 eingesetzt und ist jene Sprache die vom Computer direkt 'verstanden' wird. Es handelt sich dabei um numerisch verschlüsselte Befehle, die als binäre Information in den Computer eingegeben werden.

Vorteile

Nachteile

bei Erstellung zeitkritischer Anwendungen

nicht portable

pro Instruktion nur ein kleiner Verarbeitungsschritt

unübersichtlich

zeitaufwendig und daher teuer

2. Generation

Assembler sind nur eine Vereinfachung der Maschinensprache. Die binäre Befehle der Maschinensprache werden durch symbolische entprechende Operation ersetzt z.B. Add cd,dx ersetzt die Binärfolge, die die Operation und die beiden Register anspricht. Makroprozessoren sorgen dafür, dass eine Funktion, die aus mehreren Befehlen besteht, in diese zerlegt und für den Aufruf vorbereitet werden. Erstmal besteht die Möglichkeit Programme zu teilen, diese Teile getrennt zu übersetzen und später mittels Binder und Bindelader zusammen zufügen. Man kann hier die ersten Ansätze zur Modalisierung sehen.
Eine weitere Neuerung ist der Einsatz von symbolischen Adressen und Sprungmarken.

Vorteile

Nachteile

strukturierter als die Binärsprache

Ansätze zur Modularität

optimale Hardwareausnutzung

nach wie vor Hardware gebunden

landwierig; Programmierung daher teuer

unübersichtlich

3. Generation

Symbolische Zusammenfassung von Maschinensprachenbefehlen und von den Adressen der Datenfelder. Dadurch verkürzt sich der Sourcecode um bis zu 85%. Die Einführung von Wiederholungsanweisungen und Selektion sowie die Mehrfachauswahl usw. kennzeichnen diese Generation. Durch diese Einführung wurden die Programmiersprachen lesbar, struktriert und leicht erlernbar.

Vorteile

Nachteile

gut strukturierbar

leicht lesbar

leicht erlernbar

Algorithmen können leichter ausgedrückt werden

leicht zu warten

systemunabhängig

Sourcecodeverminderung um 85%

benötigt mehr Speicher

benötigt mehr Maschinenzeit

4. Generation

Werden auch als deklarative Spachen bezeichnet. Sie sind in der Syntax den natürlichen Sprachen näher als andere Programmiersprachen. Die Befehlsstruktur oder Syntax gibt nicht vor wie etwas gemacht werden soll sondern was geschehen soll. Einige dieser GL-Sprachen bauen auf dem Relationenmodell auf und wurden daher für die Verwendung in Datenbanken konzipiert.

Vorteile

Nachteile

Oberflächen für die Entwicklung von Datenstrukturen

Softwareunterstütze Dokumentation

Datenbankunabhängig

Sourcecodereduktion weitere 70-80%

teurere Hardware

langsam bei der Ausführung

Vertreter dieser Generation sind: Informix, Progress, Clipper, DBase

5. Generation

Logische Sprachen


Bei logischen Sprachen werden bei der Programmierung Audrücke aus der Prädiaktenlogik verwendet.
Vertreter: Prolog

Funktionale Sprachen


Listen bzw. Funktionen orientierte Sprachen


Name

Entwicklungs-jahr

Beschreibung




Ada


Vielseitige Sprache für Echtzeitanwendungen
Wurde vom amerikanischen Verteidigunsministerium entwickelt.

Algol


Algorithmic Language
Vorgängersprache von Pascal, BCPL und dadurch auch C. Algol ist problemorientiert und für technisch-wissenschaftliche Aufgaben geeignet.

Basic


Beginners-all-purpose-Symbolic-Instruction-Code
Wurde am Dartmore-College (USA) für den Informatiounterricht entwickelt. Wurde von FORTRAN abgeleitet. In den 80er Jahren entwickelte Microsoft für fast alle gängigen Mikrocomputer BASIC-Compiler.

C


Stammt von BCPL ab. Wurde zum schreiben des UNIX Betriebssystems entwickelt.
Problem: Hardwarenahe Programmteile mußten in Assembler geschrieben werden, da es in den meisten Hochsprachen keine maschinennahen Befehle gab. Außerdem waren die Assemblerteile maschinenabhängig.
BCPL war die erste Sprache, die dieses Problem löste und wurde an der Cambrige University entwickelt.
Viele Konzepte von BCPL wurden von Ken Thompson in seine Programmiersprache B übernommen, mit der er das Betriebssystem UNIX schreiben wollte. Kerningham und Ritchie entwickelten daraus C und veröffentlichten 1978 die Sprachdefinition in einem Buch namens 'The C Programming Language'

Cobol


Common Business Orientated Language.
Universalsprache für kaufmännische Anwendungen.
Die erste Programmiersprache, die nicht für mathematische/naturwissenschaftliche Zwecke entwickelt wurde. Cobol ist stark geregelt, damit er leicht protierbar ist. Wird vor allem auf Großrechnern eingesetzt.

Fortran


Formular Translator
Erste kommerzielle Hochsprache; von IBM entwickelt.
Möglichkeit von unabhängig compilierbaren Unterprogrammen. Zugriff von anderen Programmiersprachen möglich. Allerdings fehlen Fortran brauchbare Steuerstrukturen und eine ordentliche Zeichenbearbeitung.

Lisp


List Processing Language
Wurde am MIT entwickelt und wird vorallem im Bereich KI eingesetzt. Beruht auf der Verarbeitung von Listen.

Java


Ist wie Smalltalk völlig objektorientiert. Das neue an Java ist allerdings seine Maschinenunabhängigkeit, die kein erneutes Kompilieren erfordert, da es in einer sog. virtuellen Maschine abläuft.

Logo


In den 80er Jahren weit verbreitet um Kindern das Programmieren näherzubringen.

Modula-2


Wurde von Nikolaus Wirth entwickelt.
Modualer Aufbau; Verbesserung von Pascal

Pascal


Wurde von Nikolaus Wirth entwickelt.
Allgemein einsetzbar; gut strukturiert.

Prolog


Programming in Logic.
Prolog ist eine Erklärungssprache. Es wird nicht beschrieben wie das Problem zu lösen ist (Pascal, C) sondern dem Computer wird beschrieben woraus das Problem besteht.
Beispiel:
Programm:

Ein Objekt namens Baum wird definiert

Ein Nadelbau und ein Laubbaum ist von Typ Baum

Eine Fichte und eine Tanne sind von Typ Nadelbaum

Eine Eiche und eine Platane sind vom Typ Laubbaum

Fragen an den Computer?

Was ist eine Eiche?

Ist eine Eiche ein Nadelbaum?

Smalltalk


Eine völlig objektorientierte Sprache, wie z.B. auch Java.







Haupt | Fügen Sie Referat | Kontakt | Impressum | Nutzungsbedingungen