Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Einführung Inhalte dieses Kurses Generationen der Programmiersprachen

Ähnliche Präsentationen


Präsentation zum Thema: "Einführung Inhalte dieses Kurses Generationen der Programmiersprachen"—  Präsentation transkript:

1 Einführung Inhalte dieses Kurses Generationen der Programmiersprachen
Datentypen, Variablen und Konstanten Operatoren Kontrollstrukturen Komplexe Datentypen Unterprogrammtechnik Neben allgemeinen Strategien der Programmtechnik orientiert sich dieser Kurs speziell an der Programmiersprache C. Die behandelnden Themen richten sich speziell an die Klassenstufe 10 der IT-Berufe. Ziel ist es dem Schüler ein Werkzeug für die Unterrichtsvor- bzw. Unterrichtsnachbereitung zur Hand zu geben.

2 Generation 1 und 2 1GL (1st Generation Language) - Sprache der 1. Generation (unterste Ebene) - reine Maschinensprache (nur 1 und 0 ) - prozessorabhängig - Beispiel eines Befehls: 2GL (2nd Generation Language) - Sprache der 2. Generation - Assemblersprachen (z.B. Assembler) - prozessorabhängig - Beispiel eines Befehls: MOVE.W D4,D1 - Übersetzer in Maschinensprache ist der so genannte Assembler Bevor es Programmiersprachen gab, musste für jede Steuerung eine eigene Hardware entwickelt werden. Nehmen wir beispielsweise eine Firma, die Automaten herstellt. Diese musste für einen Fahrkartenautomaten eine andere Hardware herstellen als für einen Getränkeautomaten. Obwohl viele Automaten große Ähnlichkeiten in der Steuerung aufweisen sind es jedoch die kleinen Unterschiede, die einer Massenproduktion der Hardwareteile entgegen sprechen und somit letztendlich den Stückpreis bestimmen. Ein Ausweg aus dieser Misere stellte die Entwicklung des Mikroprozessors dar. Man hatte eine einheitliche Hardware, die je nach Anwendung mit einem anderen Programm bespielt wurde. Somit stellt die Geburtsstunde des Mikroprozessors auch gleichzeitig die der Programmiersprachen dar. Die ersten Programme wurden in der Sprache des Mikroprozessors geschrieben. Diese “Maschinensprache“ repräsentiert somit die erste Generation der Programmiersprachen. Da diese Sprache jedoch nur aus Einsen und Nullen besteht, erwies sich die Programmierung, Fehlersuche bzw. Wartung von solchen Programmen als sehr schwierig. Als eine Folge hieraus entstand die 2. Generation. Hier weichen die Einsen und Nullen Befehlen wie z.B. MOVE, ADD oder JMP. Ein Assembler übersetzt diese Assemblersprache in die für den Mikro- Prozessor verständliche Maschinensprache.

3 Generation 3 und 4 3GL (3rd Generation Language) - Sprache der 3. Generation - Hochsprachen (in menschenlesbarer Form z.B. Pascal, Fortran, C, C++, Java, PHP) - prozessorunabhängig, prozedural - ab dieser Stufe ist die plattform- unabhängige Programmierung möglich - Beispiel eines Befehls: cout<<“Hallo“; - Übersetzer in Maschinensprache ist der so genannte Compiler oder Interpreter 4GL (4th Generation Language) - Sprache der 4. Generation - Nicht-prozedurale-Sprachen (z.B. SQL, ABAP , Labview) - prozessorunabhängig, nicht prozedural - Beispiel eines Befehls: create database Test; Mit der dritten Generation kommt schließlich die Prozessor-Unabhängigkeit der Programmiersprachen ins Spiel. Im Gegensatz zu den ersten beiden Generationen ist es für den Programmierer nicht von Bedeutung auf welchem Prozessor sein Programm ausgeführt werden soll. Der so genannte Compiler übersetzt die Sprachen der 3. Generation in die Maschinensprache des verwendeten Mikroprozessors. Mit Programmiersprachen der 4. Generation meint man alle, die mit Hilfe von Assistenten (z.B. Delphi, Visual Basic, LabView) Programme erstellen oder mit Hilfe einer nicht-prozeduralen Sprache Schnittstellen zu anderen Programmen bilden (z.B. SQL, ABAP usw.).

4 Die Generation 5 5GL (5th Generation Language) - Sprache der 5. Generation - wissensbasierte-Sprachen (z.B. Prolog) - eigenständige intelligente Systeme (KI) - Beispiel einer Regelfolge: just_eat(mosquito,blood(john)). just_eat(frog,mosquito). just_eat(stork,frog). Die letzte Generation der Programmiersprachen widmet sich der künstlichen Intelligenz. In diesen Sprachen suchen die Programme mit der Unterstützung von Regelsätzen die Lösung von bestimmten Problemen selbst. In obigem Beispiel ist ein Regelsatz in der Programmiersprache Prolog formuliert. Im Speziellen geht es um die Nahrungskette. Somit ernähren sich Moskitos von Blut und werden ihrerseits von Fröschen verzehrt. Diese müssen sich vor den Störchen fernhalten, da diese Frösche sozusagen zum Fressen lieb haben. Trifft im Programm also ein Frosch einen Storch so ist hiermit geregelt wer wen vernascht. Oder???

5 Vom Editor zum Programm
Quellcode im Editor RAM Modul 1 Quellcode mit ersetzten # Zeilen Modul 2 Modul 3 .exe Datei Präprozessor (#) Compiler Ersetzt #-Zeilen im Quellcode (fügt z.B. den kompletten Inhalt einer .h-Datei im Quellcode ein) Übersetzt Quellcode in Maschinensprache. Es existieren Verweise auf verschiedene Module (Adressen). Befehle der Standardbibliothek sind bereits in Maschinen-sprache in den .lib-Dateien vorhanden. .lib steht für Libraries Linker (Binder) Bindet alle Programm-Module zu einem zusammen-hängenden Modul (Maschinensprache). = >ausführbares Programm: die .exe Datei z.B. HelloWorld.exe Lader Die Folie verdeutlicht die Entstehung eines Programms. Auf der linken Seite befindet sich der Quellcode in einer für den Menschen gut lesbaren Programmiersprache im Editor des Entwicklungssystems (z.B. Borland C++, DevC++,Visual C++). Im Folgenden wird dieser Code in das für den Mikroprozessor ausführbare Programm übersetzt. Dieses Programm besteht letztendlich nur aus Einsen und Nullen (Maschinensprache). Läd das Programm von einem Speichermedium (z.B. Festplatte) in den Arbeitsspeicher (RAM) und startet das Programm.


Herunterladen ppt "Einführung Inhalte dieses Kurses Generationen der Programmiersprachen"

Ähnliche Präsentationen


Google-Anzeigen