Hardwareferne Sprachen (Hochsprachen)

Zuletzt bearbeitet am 4. August 2023 Gepostet am 7. Juli 2023
Allgemein

Im Gegensatz zu Niedrig-Level-Sprachen, die näher an der Maschine und daher schwer zu lesen sind, sind Hochsprachen viel einfacher für Menschen zu verstehen. Sie verwenden Syntax und Konzepte, die näher an der menschlichen Sprache liegen, und ermöglichen es den Entwicklern, komplexe Konzepte und Algorithmen auf einer hohen Abstraktionsebene auszudrücken.

Um jedoch von der Hardware verstanden zu werden, muss Hochsprachencode in Maschinensprache übersetzt werden. Dieser Prozess wird als Kompilierung bezeichnet. Ein Kompilierer ist ein Programm, das Hochsprachencode nimmt und ihn in Maschinencode übersetzt, der dann vom Computer ausgeführt werden kann.

In der folgenden Grafik wird dir ein kleines Programm gezeigt. Das Programm macht folgendes:

  • public class Main {: Das ist wie das „Etikett“ für den Code, es heißt „Main“. Der gesamte Code, der zwischen den Klammern {} steht, gehört zur „Main“-Gruppe.
  • public static void main(String[] args) {: Hier beginnt der eigentliche Teil, den der Computer ausführt. Es ist wie der Startknopf für das Programm. Alles, was zwischen diesen Klammern {} steht, wird vom Computer ausgeführt, sobald der Startknopf gedrückt wird. ‚String[] args‘ ist ein Fachbegriff, den wir jetzt nicht weiter vertiefen müssen. Es dient dazu, zusätzliche Informationen an das Programm zu übergeben, wenn es gestartet wird, aber in diesem Fall verwenden wir es nicht.
  • System.out.println("Hello world!");: Das ist die Anweisung, die das Programm ausführt. Es sagt dem Computer, er soll „Hello world!“ auf den Bildschirm schreiben. Das Semikolon ; am Ende zeigt an, dass die Anweisung beendet ist.
  • Die letzten beiden }: Sie sagen dem Computer, dass hier das Ende von „Main“ und vom Programm ist. Jede geöffnete { muss ein entsprechendes } haben.

Beim Ausführen des Programms wird dieses zunächst in den von der Hardware verständlichen Maschinencode übersetzt. Bitte beachte, dass das Zielprogramm nur als Beispiel dienen soll. In der Realität ist der Binärcode, der aus der Kompilierung von Hochsprachen resultiert, viel komplexer und schwieriger zu lesen, da er niedriglevelige Maschineninstruktionen und -adressen enthält. Es ist auch spezifisch für die Architektur des Systems, auf dem der Code läuft.

Nachdem das Programm übersetzt wurde, wird der Code ausgeführt. Das Ergebnis ist in diesem Fall eine einfache Konsolenausgabe. Diese sieht in etwa so aus:

Die Hochsprachen können noch weiter unterteilt werden. Es gibt unter anderem:

  • Imperative Sprachen – durch die Verwendung von Befehlen wird dem Computer gesagt, was er zu tun hat. Beispiele sind: C, C++, Fortan und Pascal
  • Funktionale Sprachen – im Gegensatz zu Befehlen werden hier Funktionen verwendet. Beispiele sind: Lisp, Haskell und ML
  • Logiksprachen – diese werden oft in der künstlichen Intelligenz verwendet. Beispiele sind: Prolog und Mercury
  • Objektorientierte Sprachen – um die Softwareentwicklung zu organisieren und abstrahieren werden Klassen und Objekte verwendet. Beispiele sind: Java, Python, C# und Ruby
  • Skriptsprachen – interpretierte Sprachen, die für schnelle Skriptausführung verwendet werden. Beispiele sind: JavaScript, Perl und PHP

WordPress Cookie Plugin von Real Cookie Banner