Ist C auch bereits eine Hochsprache oder erst ab C++?

5 Antworten

Ja natuerlich:

Es ist eine Hochsprache, da sie nicht direkt mit der Maschine interagiert. Es besteht kein Zugriff auf CPU-Register, CPU-Caches, Stack-Frames, PCI, USB usw. und sie wird auch nicht nicht direkt in Maschinenanweisungen uebersetzt.

C ist kein "portable Assembly", es ist nur so, dass die Abstraktionen von C sehr sorgfaeltig entworfen wurden, um minimal zu sein und hocheffiziente und auch hoch portable Implementierungen fuer jede nur vorstellbare Hardware zu ermoeglichen.

Alles über Assembler - was somit nicht mehr direkt von der Architektur abhängt - ist eine Hochsprache. Auch frühe Programmiersprachen wie Fortran, Pascal, Basic, Algol60... Ich glaube, dass Plankalkül als die erste Hochsprache angesehen wurde.

So etwas wie Brainfuck nicht. Aber diese Sprache bietet auch keinerlei Abstraktion.

Ja, weil sie durch einen Compiler muss und dieser einiges an Logik hat.

Keine Hochsprache ist Assemblercode/-programmierung, wo jede Kleinigkeit bedacht werden muss.

Ja aber eine alte (ich meine so Ende 1960er Jahre) und damit nicht sehr "hoch".


iQdnic  02.11.2019, 09:56

Die Abstraktionsebene bestimmt, wie "hoch" eine Programmiersprache ist und wird nicht zwangsläufig durch deren Entstehungszeit "höher" oder "weniger hoch" klassifiziert. Vielmehr geht es darum, dass für komplexe Ausführungen möglichst wenig Code (Programmiertext) verwendet wird. Im Falle von C++ allerdings stimmt die Behauptung, nicht jedoch die Begründung.

0
iqKleinerDrache  02.11.2019, 09:58

In den 1960er Jahen war noch nicht Hinz und Kunz Programmierer sondern nur sehr wenige schon ziemlich abstrakt denkende Menschen. Die brauchten nicht so sehr in der Sprache abstrahieren. C ist also an Assembler näher als eine Hochsprache die mehr als 20 Jahre später eingeführt wurde.

0