Grundlagen der Programmierung und Sprachen

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 6,24 KB

Programmierung

Computing: Automatische Datenverarbeitung und Kommunikation.

Ein Computer führt arithmetische und logische Operationen gemäß Anweisungen aus, die in einem Programm zusammengefasst sind.

Programmiersprache

Eine Programmiersprache ist ein Satz von Zeichen mit einer bestimmten Syntax, der dazu dient, Anweisungen zu formulieren, die ein Computer interpretieren kann.

Niedrige Programmiersprachen (Low-Level)

Diese Sprachen sind nah am Verständnis des Computers (Binärcode: 0 und 1).

Merkmale: Sie verwenden Zeichen, die der Computer direkt oder mit geringem Aufwand versteht (Bits).

  • Maschinensprache

    Die niedrigste Ebene, bestehend aus 0en und 1en. Jeder Prozessortyp hat seine eigene Maschinensprache.

  • Assemblersprache

    Verwendet abgekürzte Wörter (Mnemonics) anstelle von Binärcode, z. B. MOV AX, BX (Befehl und Operanden/Adressen). Benötigt einen Assembler zur Übersetzung.

    Datenfluss (vereinfacht): Speicher (Memory) -> Prozessor (CPU) -> Register (z.B. Akkumulator)

Hohe Programmiersprachen (High-Level)

Zeichen und Symbole sind näher am menschlichen Programmierer. Sie sind meist plattformunabhängig, benötigen aber einen Übersetzer (Compiler oder Interpreter), damit der Mikroprozessor sie versteht.

Beispiele: BASIC, COBOL, Fortran, Pascal, C, C++, Java, Python, Visual Basic etc.

Sprachübersetzer

Programme, die den von Menschen geschriebenen Quellcode in eine für den Computer verständliche Form umwandeln.

Assembler

Übersetzt Assembler-Quellcode (P.quelle) direkt in ausführbaren Maschinencode (P.ausführbar).

Fluss: P.quelle ----> Assembler ----> P.ausführbar

Interpreter

Übersetzt und führt den Quellcode (P.quelle) Anweisung für Anweisung aus.

Fluss: P.quelle ----> Interpreter ----> Ausführung jeder Anweisung

Compiler

Übersetzt den gesamten Quellcode auf einmal.

Fluss:

  1. Editor: Erstellung des Quellcodes (P.quelle).
  2. Compiler: Übersetzt Quellcode in Objektcode (P.objekt).
  3. Linker: Verbindet Objektcode mit Bibliotheken zum Erstellen der ausführbaren Datei (P.ausführbar).

P.quelle ----> Compiler ----> P.objekt ----> Linker ----> P.ausführbar


Phasen der Programmentwicklung

  1. Zieldefinition: Das Problem oder die Aufgabe in allgemeiner Form beschreiben (Idee).
  2. Entwurf (Design): Lösungswege überlegen, Algorithmen entwerfen (z.B. mit Flussdiagrammen), benötigte Hard- und Software-Ressourcen festlegen.
  3. Kodierung: Den entworfenen Algorithmus in einer gewählten Programmiersprache implementieren (Quellcode schreiben mit einem Editor).
  4. Übersetzung/Kompilierung: Den Quellcode mit dem passenden Sprachübersetzer (Compiler, Assembler) in Maschinencode umwandeln.
  5. Ausführung und Test: Das Programm starten und testen, ob es wie erwartet funktioniert.
  6. Debugging: Fehler suchen und beheben (Syntaxfehler, logische Fehler).
  7. Wartung und Optimierung: Anpassungen, Fehlerbehebungen nach der Auslieferung, eventuell Vereinfachung oder Verbesserung des Programms.

Daten

Alle Informationen, die von einem Programm verarbeitet werden.

Konstanten und Variablen

  • Konstanten: Daten, deren Wert sich während der Programmausführung nicht ändert.
  • Variablen: Daten, deren Wert sich während der Programmausführung ändern kann. Sie repräsentieren Speicherbereiche.

Algorithmen

Eine eindeutige, geordnete Abfolge von Aktionen oder Anweisungen zur Lösung eines Problems oder zur Verarbeitung von Daten durch einen Computer.

Teile eines Programms

  • Dateneingabe: Daten einlesen und im Speicher ablegen.
  • Algorithmus/Prozess: Verarbeitung der eingelesenen Daten gemäß den Anweisungen.
  • Datenausgabe: Ergebnisse der Verarbeitung anzeigen, speichern oder weitergeben.

Flussdiagramm-Symbole

Grafische Symbole, die in Flussdiagrammen verwendet werden, um den Ablauf und das Design von Programmen darzustellen.

Anweisungen (Instruktionen)

Die einzelnen Befehle in einem Programm, die dem Computer mitteilen, was er als Nächstes tun soll.

Typen von Anweisungen

  • Definitionsanweisungen: Deklaration von Datentypen, Variablen, Konstanten.
  • Zuweisungen: Einer Variablen einen bestimmten Wert zuweisen.
  • Eingabeanweisungen: Werte von externen Quellen (Tastatur, Datei) lesen.
  • Ausgabeanweisungen: Werte oder Ergebnisse auf einem Ausgabegerät (Bildschirm, Drucker, Datei) ausgeben.
  • Sprunganweisungen/Kontrollstrukturen: Den normalen sequenziellen Programmablauf ändern (z.B. bedingte Anweisungen, Schleifen).

Verwandte Einträge: