Entwicklung der Programmiersprachen

Werbung
Entwicklung der Programmiersprachen
Entwicklung der Programmiersprachen
010010100
101001010
010010100
101001001
010010100
Entwicklung der Programmiersprachen
Was ist eine Programmiersprache?
Unter einer Programmiersprache versteht man nach
DIN 44300, Teil 4, eine zum Abfassen (Formulieren)
von Computerprogrammen geschaffene Sprache.
Ein Programm ist eine von einem Computer
interpretierbare vollständige Arbeitsanweisung zur
Lösung einer Aufgabe.
Entwicklung der Programmiersprachen
Maschinensprachen (Sprachen der 1. Generation)
Die Maschinensprachen (engl.: Machine Languiage;
Object language), bei denen jeder Befehl nur aus einer
Folge der Binarzeichen O und 1 besteht, entsprechen
in ihrer Struktur der jeweiligen Maschinenlogik
z. B. 00011010
0011 0100
Befehl „Addiere“, Operanden 3
4
Entwicklung der Programmiersprachen
Assemblersprachen (Sprachen der 2. Generation)
Eine Sprache, die den Aufbau der Befehle der
Maschinensprache beibehält,
die Instruktionsteile jedoch nicht binär (0-1)
verschlüsselt,
sondern durch eine Symbolik ausdrückt, wird
Assembler (engl.: assembler) genannt.
Entwicklung der Programmiersprachen
Assemblersprachen (Sprachen der 2. Generation)
Assemblersprachen sind abhängig vom jeweiligen
Prozessortyp, da jeder Prozessor seine eigene
Assemblerbefehlssatz besitzt.
Maschinensprachen und Assembler bilden zusammen
die maschinenorientierten Sprachen
z. B. ADD
3, 4
symbolische Abkürzung für Operation
„Addiere“ Operanden 3
4
Entwicklung der Programmiersprachen
Prozedurale Sprachen (Sprachen der 3. Generation)
Unter prozeduralen Programmiersprachen (engl.:
proceural programming language) versteht man
maschinenunabhängige Programmiersprachen,
bei denen sich die Programme an der traditionellen
von-Neumann-Rechnerarchitektur (EingabeVerarbeitung-Ausgabe) orientieren.
Zur Problemlösung werden Algorithmen formuliert, d.
h. es wird eine Abfolge von Operationen, die jeweils
Daten bearbeiten, definiert.
z. B. SUMME = 3 + 4
Entwicklung der Programmiersprachen
Sprachen der 4. Generation
Programmsysteme, die die Effizienz der
Anwendungsentwicklung durch das DV-Personal
erhöhen sollen, so genannte Programmiersprachen
der 4. Generation (engl.: 4th generation programming
language; Abkürzung 4GL)
Beispiel hierfür sind Makrosprachen: Es handelt sich
um fertige Anwendungsprogramme, die es dem
Benutzer ermöglichen spezielle Probleme zu lösen.
Entwicklung der Programmiersprachen
Sprachen der 4. Generation
Die meisten Programm-Pakete wie MS-Office verfügen
über eine eigene Makrosprache wie Visual Basic for
Application. Damit können Funktionen innerhalb eines
Programmes automatisiert werden.
Unser Beispiel (VBA-Excel):
bzw.:
bzw.:
[C5] = 3 + 4
Range(„C5“) = 3 + 4
Cells(5,3) = 3 + 4
Z. B. Datenbanksysteme lassen sich mit der
Datenbankabfragesprache SQL (Structured Query
Language) den Anwenderbedürfnissen anpassen.
Entwicklung der Programmiersprachen
Sprachen der 5. Generation
Sprachen zur Wissensverarbeitung. Mit neuartigen
Lösungsverfahren werden aufgrund von Tatsachen
und Regeln neue Schlüsse gezogen. Die geistigen
Fähigkeiten des Menschen werden simuliert.
Der Einsatz erfolgt im Bereich Künstliche Intelligenz
und Expertensysteme.
(Spracherkennung, Schrifterkennung, Qualitätskontrolle, Regelungstechnik, Diagnose, Robotik)
Entwicklung der Programmiersprachen
Übersetzungsprogramme
Wandeln die in der Sprachregel einer
Programmiersprache geschriebenen Anweisungen
(Quellenprogramm oder Source Code)
in die Maschinensprache (0/1 oder Objekt Code) um.
00011010
0011
0100
Ce Fünf ist drei
plus vier
Entwicklung der Programmiersprachen
Das Prinzip der Übersetzungsprogramme
Interpreter:
übersetzt den Code Zeile um Zeile.
Durch das Interpretieren wird ein formuliertes
Programm kontinuierlich während der gesamten
Ausführung in die Maschinensprache übersetzt.
Compiler:
übersetzt den Code als Ganzes.
Durch die Kompilierung entsteht ein so genannter
Objektcode, der nur noch mit den entsprechenden
Bibliotheken verbunden werden muss.
Entwicklung der Programmiersprachen
Das Prinzip der Übersetzungsprogramme
Da moderne Compiler, die Vorzüge beider Übersetzungsprogramme vereinen, werden Interpreter
heute nur noch selten eingesetzt.
VB/VBA ist eine Compilersprache, nach jedem
Programmschritt (Return) wird das gesamte Programm
kompiliert, so dass Fehler zunächst korrigiert werden
müssen.
Entwicklung der Programmiersprachen
Beispiel Übersetzung
Maschinensprache
Assembler
z. B. VBA
0000
0001
0000
0001
...
0010
0010
0010
0100
0011
0001
CON 5
STR R1
CON 8
STR R2
...
LD R2
LD R1
LD R1
MUL
ADD
STR R0
[C4]=5
[C5]=8
…
0101
0001
1000
0010
0010
0001
0001
0000
0000
0000
Assembler
[C6]=[C4]*[C4]+[C5]
Compiler / Interpreter
Entwicklung der Programmiersprachen
Entwicklung der Programmiersprachen
Danke für Ihre Aufmerksamkeit
Herunterladen