Blatt 0 - Aufgabe 7a

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Blatt 0 - Aufgabe 7a
Frage 7a
Warum kann PC-Software vorkompliliert, also als Binärpaket ausgeliefert werden und
muss nicht für jede CPU, auf der sie eingesetzt wird, neu übersetzt werden?

Die Frage ist hier erstens offen und zweitens suggeriert die Frage, dass ein Binärpaket problemlos auf jeder CPU gleich läuft.

Hier meine Frage - ist das überhaupt so, denn binärcode kann ja trotzdem unterschiedliche Befehle bei unterschiedlichen CPU’s hervorrufen oder einigen sich AMD und INTEL wie ein Binärbefehl zu interpretieren ist?


Sollen wir dir jetzt deine Aufgabe machen oder was?

1 Like

@ arw: ich seh schon was du meinst…

Mein Ziel war aber nicht, dass mir jemand die Frage komplett beantwortet, aber ich sehe schon ein, dass die Aufgabe zu simpel ist um mir meine Frage zu beantworten ohne die Aufgabe zu beantworten.


Die Frage ist hier halt eher, ob die Frage impliziert, dass das für jede CPU gilt oder nur für gewisse Hersteller intern.
Das wird aus der Fragestellung nicht ganz klar. Daher bestimmt die Verwirrung.


Kannst du denn ein vorkompiliertes Programm auf jeder CPU einsetzen? Kannst du ein vorkompiliertes Programm bei allen CPUs eines Herstellers einsetzen?

Die Frage impliziert weder das eine noch das andere und möchte auf was anderes hinaus.


Ich hätte jetzt beides verneint.

Auch wenn ich jetzt doof wirken mag, aber ich kann in der Angabe schon mit dem Begriff „Binärpaket“ nichts anfangen… :smiley:


Bspw. ein *.exe File?


Das ist auch beides richtig. Du kannst es weder auf jeder CPU noch auf jeder CPU desselben Herstellers ausführen. Allerdings schon auf jeder CPU gleichen Typs. Ich kenn die Aufgabe allerdings nicht, weiß deshalb auch nicht, worauf die Fragestellung raus will.


https://en.wikipedia.org/wiki/Instruction_set_architecture


Ist doch eigentlich gar nicht so schwer, nicht zu kompliziert denken und zu viel in die Aufgabenstellung rein interpretieren…
Es wird nicht suggeriert, dass ein Programm problemlos auf jeder CPU laeuft; die Frage ist ja eher, ob man ein Programm fuer jede CPU, auf der es laufen soll, einzeln uebersetzen muss, oder ob ein Kompilat unter Umstaenden auf mehreren unterschiedlichen CPUs laufen kann.
Wenn du in der ersten Uebung warst: Die allererste Aufgabe ging um die verschiedenen Definitionen von Rechnerarchitektur. In dem Zusammenhang habt ihr in der Uebung mit Sicherheit festgestellt, dass unterschiedliche Personen zwar unterschiedliche Begrifflichkeiten verwenden, dass aber alle (zumindest die vorgestellten) Definitionen eine Unterscheidung treffen zwischen dem, was intern passiert, und dem, was der Nutzer fuer die Programmierung wissen muss. Ueberleg dir mal, warum diese Unterscheidung sinnvoll ist und wie dir das bei der Beantwortung der Frage helfen kann.