Hallo
ja gehört in das Offtopic, aber... ihr wisst ja :-(
Die Frage ist ernst gemeint, es handelt sich nicht um trollen und ich
würde mich über freundlich(!) und erklärende Antworten freuen -
beleidigende Kommentare und hetzerische Vermutungen über meinen (und
auch von anderen) Bildungsweg haben bitte zu unterbleiben.
Danke
Also ist dieser Satz richtig so:
"Hochsprachen ziehen zwischen die CPU und den Quelltext noch weitere
undurchschaubare Ebenen ein."
Rein vom Sprachgefühl her und wie ich es gewohnt bin müsste es aber
heißen:
"...zwischen der CPU und den..."
was nun also?
Und bitte nochmal: Meine Eingangsworte beachten, und bitte nicht
löschen.
Danke
Wat_den_nun?
'zwischen die CPU und den Quelltext' ist korrekt, es gibt die Richtung
an, 'zwischen der CPU und dem Quelltext' aber auch, es gibt den Ort an.
Ausdrücken tut in diesem Fall beides das gleiche.
Wat_den_nun? schrieb:> was nun also?
Grammatische Spitzfindigkeiten.
Aber "die CPU" in Verbindung mit "den Quelltext" ist ebenso korrekt wie
auch die Kombination "der CPU" mit "dem Quelltext".
Der vorgeschlagene Satz "zwischen der CPU und den Quelltext" ist
allerdings genauso holprig wie "zwischen die CPU und dem Quelltext".
Hallo
das ging ja schnell und freundlich.
Vielen Dank.
Arme Schüler egal ob Erwachsen oder Kinder und Schriftsteller die das
alles können können (ja ist wohl so auch nicht korrekt aber der versteht
es) müssen.
Wat_den_nun
Wat_den_nun? schrieb:> Arme Schüler egal ob Erwachsen oder Kinder und Schriftsteller die das> alles können können
Da könntest du noch ein paar Kommata drüber streuen. ;-)
unabhängig von der Grammatikalischen Korrektheit ist der Satz in
mehrerer Hinsicht Quatsch.
Die Hochsprache soll von konkreten CPUs abstrahieren, ja. Aber die
Hochsprache definiert den Quelltext (bzw dessen Syntax und Semantik),
aber der Satz hört sich so an, als wenn es irgend einen allgemein
gültigen (sprachunabhängigen) Quelltext gibt und wenn man dann eine
Hochsprache nimmt, die irgendwie alles dazwischen verändert.
Das klingt für mich, als hätte der Autor die Konzepte nicht verstanden.
Insbesondere die Beziehungen, zw
CPU, deren Befehlsatz, die Darstellung dieses in Form von
Assembler/Maschinencode auf der Hardwareseite
und Compiler, AST, Code, Sprache und Framework (sowohl im Sinne von HAL,
als auch Runtime/standard-Libs) auf der Sprachseite.
Das Attribut "undurschschaubar" ist natürlich ebenso Quatsch.
Dem liegen strenge, deterministische Regeln zugrunde, die sicher nicht
in jedem Fall einfach verständlich, aber sehr wohl durchschaubar sind.
Verzichtet man auf Code-Optimierung ist das meiste sogar sehr einfach zu
durchschauen und nachzuvollziehen.
Da der Inhalt des Satzes Quatsch ist, ist es kaum möglich, zu wissen,
was gemeint ist. In den meisten Fällen aber kommt nach weitere ein
Komma. Es sei denn, noch jemand anderes zieht dazwischen
undurchschaubare Ebenen ein.
Wat_den_nun? schrieb:> "Hochsprachen ziehen zwischen die CPU und den Quelltext noch weitere> undurchschaubare Ebenen ein."
Ohne Kontext geht es nicht weiter.
Wer den kompletten Text sucht:
"Hochsprachenkonzepte und Assembler"
http://www.avr-asm-tutorial.net/avr_de/beginner/asm_konzept.html> Es sei denn, noch jemand anderes zieht dazwischen> undurchschaubare Ebenen ein
Was der Fall ist, da man den konkreten Ablauf von Befehlen innerhalb
einer modernen OoO-CPU getrost als undurchschaubar betrachten kann. Die
dem Programmierer zugänglichen Maschinenbefehle mit ihren Registern
stellen bereits eine erhebliche Abstraktion dar.
A. K. schrieb:> Wer den kompletten Text sucht:> "Hochsprachenkonzepte und Assembler"> http://www.avr-asm-tutorial.net/avr_de/beginner/asm_konzept.html
Da steht noch ne Menge mehr Quatsch:
> Die Sache mit der Übertragbarkeit auf andere Prozessoren> funktioniert natürlich nur, solange der Controller> und seine CPU das mitmacht.> Letztlich bestimmt dann die Hochsprache, welcher Prozessor> geht und welcher nicht.> Ein ärmlicher Kompromiss, weil er unter Umständen> ganze Welten mit ihren vielfältigen Möglichkeiten als> ungeeignet ausschließt.
Klingt alles mehr nach Religion, als objektiver Betrachtung und Wissen.
So lange die CPU einen turing-completen Befehlssatz aufweist und die
Sprache turing-complete ist, kann das eine in das andere übersetzt
werden.
Das ist beweisbar.
Zum Frage des Autors ist nix mehr zu sagen. Der Grammatik wurde genüge
getan und Die zutage geförderte Seite sagt alles über die subjektive,
von Fanatismus geprägte Betrachtungsweise des Autors - viel Meinung -
wenig Objektives Wissen. Diskussion wahrscheinlich zwecklos. Kann man
nur hoffen, dass Konsumenten des Textes das genauso auffällt und sich
ihre eigene Meinung bilden.
A. K. schrieb:> Was der Fall ist, da man den konkreten Ablauf von Befehlen innerhalb> einer modernen OoO-CPU getrost als undurchschaubar betrachten kann.
^^ demnach ist nach obiger "Definition" Assembler bereits eine
Hochsprache.
Was soll der arme Junge jetzt machen?
Vlad T. schrieb:> Was soll der arme Junge jetzt machen?
Schreiben kann er sowieso nicht mehr, es sei denn er meldet sich an,
denn der Thread wurde gegen seinen Willen nach Offtopic verschoben.
A. K. schrieb:> Vlad T. schrieb:>> Was soll der arme Junge jetzt machen?>> Schreiben kann er sowieso nicht mehr, es sei denn er meldet sich an,> denn der Thread wurde gegen seinen Willen nach Offtopic verschoben.
Die Seite als ganzes ist an sich ganz nett. Der Autor verfügt über
einiges Wissen im Bereich der AVRs
Schade, dass diese Eine Seite so negativ daraus hervorsticht und sich
tatsächlich alle Anwendungen auf Assembler beschränken und damit sich
damit der einfachen Wiederverwendbarkeit in anderen/komplexeren
Projekten, oder auf anderen Controllern entziehen.
Vlad T. schrieb:>> ^^ demnach ist nach obiger "Definition" Assembler bereits eine> Hochsprache.> Was soll der arme Junge jetzt machen?
Ich kann mich dunkel erinnern, dass vor über 30 Jahren in der Literatur
zwischen Assembler und Maschinensprache unterschieden wurde.
Und dann gab es noch HLA.
Percy N. schrieb:> Ich kann mich dunkel erinnern, dass vor über 30 Jahren in der Literatur> zwischen Assembler und Maschinensprache unterschieden wurde.
Allerdings gab es schon ab spätestens den 60ern unterhalb der
sogenannten Maschinensprache die Mikro-Ops und in der 68000 darunter
auch noch Nano-Ops. Bei manchen Maschinen konnte der Kunde auch eigenen
Mikrocode beisteuern, da war das also keine rein interne Angelegenheit.
Der Motorola 68000-360 Prozessor führte dank anderem Mikrocode im ROM an
Stelle des 68000-Befehlssatzes einen IBM/360 Mainframe-Befehlssatz aus.
http://www.cpushack.com/2013/03/22/cpu-of-the-day-ibm-micro-370/
Percy N. schrieb:> Ich kann mich dunkel erinnern, dass vor über 30 Jahren in der Literatur> zwischen Assembler und Maschinensprache unterschieden wurde.
darum gehts ja nicht.
Assembler (der Text/Mnemonics) wird in Maschinensprache (Bytes)
übersetzt.
Hier gehts ja darum, dass
1. jeder Maschinenbefehl intern eventuell aus miniprogrammen besteht
(Microcode)
2. was A.K. meinte, die CPU intern die Befehle umsortiert und spekulativ
ausführt, sie also nicht mehr genau das macht, was im Programm steht.
(das beobachtbare Programm ist natürlich identisch) - Ob sie diese
umsortierung auf Micro-OP-Ebene oder Maschinencode-Ebene macht, weiß ich
allerdings auch nicht.
A. K. schrieb:> Der Motorola 68000-360 Prozessor führte dank anderem Mikrocode im ROM an> Stelle des 68000-Befehlssatzes einen IBM/360 Mainframe-Befehlssatz aus.> http://www.cpushack.com/2013/03/22/cpu-of-the-day-ibm-micro-370/
Interessant.
Da gabs beim letzten (edit: war vorletzter) CCC auch einen Talk, den ich
mir als Video angeschaut hatte. Da haben welche die
Microcode-Updatemechanismen und Befehle einer modernen CPU
Reverse-Engineered.
Vlad T. schrieb:> 2. was A.K. meinte, die CPU intern die Befehle umsortiert und spekulativ> ausführt, sie also nicht mehr genau das macht, was im Programm steht.> (das beobachtbare Programm ist natürlich identisch) - Ob sie diese> umsortierung auf Micro-OP-Ebene oder Maschinencode-Ebene macht, weiß ich> allerdings auch nicht.
Das geschieht auf Mikro-Op Ebene.