Post by Florian BurgerIch (kein Programmierer) möchte meinen Studierenden (der
Rechtswissenschaften, nicht der Informatik) zeigen, was man unter
"Programm" verstehen kann.
Da kann man viel darunter verstehen. Ein Kochrezept ist auch eine Art
Programm. Und auch unser Denken könnte man als Programm bezeichnen, es
enthält ähnliche Elemente, z.B. Entscheidungen: (gehe ich Einkaufen?),
Verzweigungen (wenn ja, dann gibt's was zum Essen), aber auch höhere
Konstrukte wie Objekte und Klassen.
Post by Florian BurgerDeshalb dachte ich an den Quellcode irgendeines Programms in einer
höheren Programmiersprache, das vom Menschen einigermaßen noch
verstanden werden kann, da ja mitunter verständliche Worte verwendet
werden ("if...then...else"; ich erinnere mich sogar an eine
VBA-Version, die ebenfalls regionalisiert, also eingedeutscht wurde
["wenn...dann...sonst"]). Dann dasselbe Programm eventuell als
Assembler, für Menschen schon schwieriger verständlich, umso
leichter aber für die Maschine.
Ein Assembler-Programm ist für den Rechner genauso unverständlich wie
ein Programm in einer Hochsprache. Es gibt aber auch Prozessoren, die
Hochsprachen verstehen können, IIRC für Java und Basic. Kürzlich lief
hier ein Thread zu Maschinen (Symbolics), die Lisp verstehen. Und ich
meine, dass es auch mal in Forth programmierbare Prozessoren gab.
Post by Florian BurgerUnd letztlich dasselbe Programm als reiner Binärcode, für Menschen
praktisch überhaupt nicht mehr verständlich, für die Maschine aber
genau das "Richtige". Alles aber ein und dasselbe Programm.
Wie Georg schon schrieb: das gilt bestenfalls in einer Richtung,
nämlich von der Hochsprache zur Maschinensprache. Aus Maschinencode
kann man das ursprüngliche Hochsprachenprogramm nicht mehr eindeutig
rekonstruieren.
Post by Florian BurgerKennt jemand im Internet einen solchen Vergleich?
Zumindest mir ist noch nicht klar, worauf es Dir ankommt. Vielleicht
solltest Du das noch etwas deutlicher herausstellen. Wenn Du damit
'beweisen' willst, dass zwischen dem Quelltext in der Hochsprache und
dem daraus erzeugten Maschinencode ein 1:1 Zusammenhang besteht, dann
ist die Annahme leider falsch, sorry.
Martin