PlusPedia wird derzeit technisch modernisiert. Aktuell laufen Wartungsarbeiten. Für etwaige Unannehmlichkeiten bitten wir um Entschuldigung; es sind aber alle Artikel zugänglich und Sie können PlusPedia genauso nutzen wie immer.

Neue User bitte dringend diese Hinweise lesen:

Anmeldung - E-Mail-Adresse Neue Benutzer benötigen ab sofort eine gültige Email-Adresse. Wenn keine Email ankommt, meldet Euch bitte unter NewU25@PlusPedia.de.

Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)

Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.

PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen

Programmiersprache: Unterschied zwischen den Versionen

Aus PlusPedia
Zur Navigation springen Zur Suche springen
typos ...
Zeile 62: Zeile 62:
* "The deifference between theory and practice is that in theory, there is no difference between tehory and practice, but in practice there is"
* "The deifference between theory and practice is that in theory, there is no difference between tehory and practice, but in practice there is"


Maximae Geschwindigkeit durch Optimierung des Codes aber das übersetzte Programm läuft nur auf einer Maschine
Maximale Geschwindigkeit durch Optimierung des Codes aber das übersetzte Programm läuft nur auf einer Maschine


Compiler übersetzt das Quellprogramm "als Ganzes"
Compiler übersetzt das Quellprogramm "als Ganzes"
Zeile 73: Zeile 73:
# Lexikalische Analyse nur einer Anweisung im Programm
# Lexikalische Analyse nur einer Anweisung im Programm
# Syntaktische Analyse
# Syntaktische Analyse
# Übersetzung er Hochsprache in Befehlsfolge der Maschinensrpache oder einer Zwischensprache; dnamisch binden
# Übersetzung der Hochsprache in Befehlsfolgen der Maschinensrpache oder einer Zwischensprache; dynamisch binden
# Ausführen
# Ausführen


* Geänderte Programme sind sofort ausführbar
* Geänderte Programme sind sofort ausführbar
* seehr hilfreich beim Testen
* Sehr hilfreich beim Testen
* Schnelles Ändern  
* Schnelles Ändern  
* Sehr gut für Prototypen
* Sehr gut für Prototypen

Version vom 21. Oktober 2011, 17:48 Uhr

Eine Programmiersprache ist ein Werkzeug, um Computerprogramme zu schreiben.

Unterscheidung nach Generationen

Erste Generation

  • Maschinensprache
    • Programmierung der Hardware durch Folge elementarer Befehle der Maschine
    • Sehr anstrengend zu programmieren
    • sehr fehleranfällig
    • schlecht wartbar
    • Höhere Performance als Hochsprachen

Zweite Generation

  • Assemblersprache
    • Ein Assemblerbefehl entspricht einem Maschinenbefehl
    • Ebenfalls sehr fehleranfällig und schwer wartbar.
    • Höhere Performance als Hochsprachen

Höhere Programmiersprachen

  • Hardware (Maschinen)-Unabhängigkeit
  • Für den Menschen verständlich
  • Codierarbeit soll die Maschine selbst machen
  • Niedrigere Performance als Maschinensprache und Assembler

Dafür sind

notwendig.

Die ersten höheren Programmiersprachen entstanden Ende der 1950er.

4. Generation

Marketingaussagen

5. Generation

Unterscheidung nach Programmierparadigmen

Charakteristika von Programmiersprachen

  • Eindeutige Lexikalität
    • Festlegung von gültigen Zeichen
  • Eindeutige Syntax
  • Eindeutige Semantik
    • Der Computer macht genau das was man ihm sagt
  • Pragmatik

Vorgehensweise beim Übersetzen von Programmen

  • Lexikalische Analyse
  • Syntaktsiche Analyse
  • Semantische Analyse
  • Code Generierung

Bugs

Grace Muray Hopper erfand die Sprache COBOL. Ihr wird der Begriff Bug zugeschrieben.

Vor- und Nachteile von Compilern und Interpretern

  • "The deifference between theory and practice is that in theory, there is no difference between tehory and practice, but in practice there is"

Maximale Geschwindigkeit durch Optimierung des Codes aber das übersetzte Programm läuft nur auf einer Maschine

Compiler übersetzt das Quellprogramm "als Ganzes"

  • Kann dann optimieren (Befehlsfolgen vertauschen, Paralletitäten nutzen, Vorausberechnung)
  • Binden
    • Vorübersetzte Servicefunktionen werden hinzugefügt. Symbolische Namen ersetzt (statische / dynamische DLLs)
  • Laufen lassen

Interpreter

  1. Lexikalische Analyse nur einer Anweisung im Programm
  2. Syntaktische Analyse
  3. Übersetzung der Hochsprache in Befehlsfolgen der Maschinensrpache oder einer Zwischensprache; dynamisch binden
  4. Ausführen
  • Geänderte Programme sind sofort ausführbar
  • Sehr hilfreich beim Testen
  • Schnelles Ändern
  • Sehr gut für Prototypen
  • Aber langsam

Virtuelle Maschine

Eine virtuelle Maschine dient dazu Programmen aus Hochsprachen in einen einheitlichen Code einer virtuellen Maschine zu übersetzen. Dieser Code läuft dann mithilfe der virtuellen Maschine auf Prozessoren, für die es entsprechende Umsetzungen gibt.


Links und Quellen

Siehe auch

Weblinks

Quellen

Literatur

Einzelnachweise


Andere Lexika