Forum: Offtopic Die CPU mal nicht technisch


von Wat_den_nun? (Gast)


Lesenswert?

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?

: Verschoben durch Moderator
von (prx) A. K. (prx)


Lesenswert?

Weder noch. Wenn schon, dann
 ...zwischen der CPU und dem Quelltext...

von Horst (Gast)


Lesenswert?

'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.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

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".

: Bearbeitet durch Moderator
von Wat_den_nun? (Gast)


Lesenswert?

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

von (prx) A. K. (prx)


Lesenswert?

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. ;-)

von Dietrich L. (dietrichl)


Lesenswert?

Wat_den_nun? schrieb:
> zwischen die CPU und den Quelltext

Diplomatischer Lösungsvorschlag: "zwischen CPU und Quelltext" ;-)

von Vlad T. (vlad_tepesch)


Lesenswert?

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.

: Bearbeitet durch User
von A. S. (Gast)


Lesenswert?

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.

von Sven S. (schrecklicher_sven)


Lesenswert?

Wat_den_nun? schrieb:
> "Hochsprachen ziehen zwischen die CPU und den Quelltext noch weitere
> undurchschaubare Ebenen ein."

Ohne Kontext geht es nicht weiter.

von (prx) A. K. (prx)


Lesenswert?

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.

: Bearbeitet durch User
von Vlad T. (vlad_tepesch)


Lesenswert?

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?

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

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.

: Bearbeitet durch User
von Vlad T. (vlad_tepesch)


Lesenswert?

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.

von Percy N. (vox_bovi)


Lesenswert?

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.

von (prx) A. K. (prx)


Lesenswert?

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/

: Bearbeitet durch User
von Vlad T. (vlad_tepesch)


Lesenswert?

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.

: Bearbeitet durch User
von (prx) A. K. (prx)


Lesenswert?

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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.