Ich weiß, dass dies eine sehr häufige Frage ist. Aber ich habe einen anderen Blickwinkel. Ich werde nur versuchen, es hier zu artikulieren.
Soweit ich weiß, ist jede Anweisung, die eine CPU ausführt, in Maschinensprache und jede CPU kann dank ALU und ihrer Transistoren einige Rechenoperationen ausführen (wenn wir auf Hardwareebene vorgehen).
Dies ist jedoch einfacher zu tippen als zu verstehen. Wenn die CPU also nur Addieren, Subtrahieren usw. ausführt, wie wird dann ein Programm, beispielsweise ein JAVA-Programm, das print Hello World sagt, mit diesen arithmetischen Operationen ausgeführt?
Ich meine, wie wird dieses Programm in etwas umgewandelt, das nur eine Ergänzung für die CPU ist?
PS Wenn diese Frage für diese Website nicht zutreffend ist, entschuldige ich mich.
-----Zweiter Teil-----
Okay. Vielen Dank an alle für die schnelle und enthusiastische Beantwortung. Ich dachte, es ist besser, meine Frage ein wenig zu ändern, als alle Antworten zu kommentieren und sie erneut zu stellen.
Hier ist es also.
Erstens haben alle ausdrücklich ein Beispiel für Hallo Welt beantwortet. Das ist meine Schuld. Ich hätte dieses Generikum behalten sollen. Hallo Welt Beispiel bringt in Frage Ausgabegeräte und wie seine Verarbeitung ist nicht nur auf die CPU beschränkt, die zu Recht in Ihren Antworten gebracht wird.
Auch viele von Ihnen haben mir mitgeteilt, dass CPU mehr als nur Addition leistet. Ich stimme dem zu. Ich habe das einfach nicht geschrieben und bin davon ausgegangen. Soweit ich weiß, ist dies der Prozess:
Lesen Sie den Befehl aus dem Speicher (mit Daten- und Adressbussen und Programmzählern)
- Speichern Sie die Daten in einem Register in der CPU
- Jetzt führt ALU arithmetische Operationen aus, natürlich nachdem der Befehl dekodiert wurde, oder macht einen Sprung, wenn es sich um einen If Like-Befehl handelt
- Und dann mit anderen Ressourcen kommunizieren, wenn nötig, wie zum Beispiel mit dem Ausgabegerät und so weiter. Darüber hinausgehende Prozesse sind vorerst trivial.
In Schritt 3, in dem die CPU einen Befehl dekodiert und eine arithmetische Operation ausführt (hier nehmen wir an, dass keine andere Operation ausgeführt werden kann, als die aktuelle Anweisung zu überspringen. Da arithmetische Operationen meistens ausgeführt werden. Wir werden uns also daran halten ) Hier endet meine Visualisierung. Wie eine Anweisung aus meinem Programm nur eine Rechenoperation für die CPU ist. Es führt diese arithmetische Operation aus und diese Anweisung erfüllt ihren Zweck.
Ich hoffe, ich habe mich diesmal klar ausgedrückt.
PS Ich gehe hier von der Annahme aus, dass ALU nicht auf die tatsächliche Rechenoperation beschränkt ist, die wir in unseren Programmen ausführen, sondern alle Befehle, die jetzt in binärer Form vorliegen, durch Addieren oder Subtrahieren usw. ausführt, um das gewünschte Ergebnis zu erzielen nachgeben. Wenn ich hier falsch liege, beantworte ich meine Frage richtig.