Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > Hallo Peter > > > > > Ah, stimmt das kannst Du ja nicht wissen. Wenn man nur 8bit hat, ist die Welt etwas einfacher. > > Du bist ganz schön arrogant. Ich habe in meinem Leben mehr gemacht als mich "nur" mit 8 Bit CPUs zu > Ich wollte Dich eigentlich nur aufziehen. :-) Wenn Du mir Ineffizienz vorwirfst, und mir dann einen Lösungs- > ansatz nennst, der für die CC-Pro ungeeignet ist, dann kommt das auch bei mir ziemlich arrogant an. > > > Für die Entwicklung der Open-M-Unit habe ich bereits über einen Rechenstack im 32-Bit-Format > > nachgedacht. Beim Longinteger-Format und bei Fest- oder Fließkommazahlen hätte das Vorteile. Die > > Nachteile des langsameren Stackhandlings bei 8 und 16 Bit sind gegenüber dem durch die Interpretation > > erzeugten Overhead minimal. Und da aus Kompatiblitätsgründen für Berechnungen und Übergaben je > > Thread ohnehin nur 7 Stackeinträge zur Verfügung gestellt werden müssen und die Kontroller bis zu 2 KB > > RAM haben, ist auch der Speicherplatz kein Hinderungsgrund. Lokale Variablen auf dem Stack und > > Rekursion sind bei diesem Stackmodell zwar nicht direkt vorgesehen, können aber durch Pointer realisiert > > werden. > Nur zur Information: Aufgrund der verschiedenen Prioritäten der Sprachoperatoren benötige ich bei C und > BASIC im "worst case" minimal 14 Stackeinträge auf dem Arithmetikstack pro Thread und Funktion. Wegen > der Rekursion gibt es auf dem Arithmetikstack keine Begrenzung außer dem Speicherplatz. > > > > Wenn man den Stack auch zur Übergabe verwendet, würde man bei 8Bit Parametern immer 24 Bit verschwenden > > Bei einer Parameterübergabe "by value" wird z.B. auf dem PC normalerweise nur soviel Stackspeicher > > benutzt, wie unbedingt notwendig ist. Bei "by reference" wird dagegen unabhängig vom Format die Adresse > > (ein Pointer) übergeben, die eine Größe von 32 Bit besitzt. > Eben, wenn ich den Arithmetik Stack zur Übergabe nutzen würde, bräuchte ich pro Parameter 32bit, das > wären dann 24bit "slack" bei jedem Übergabeparameter. Deshalb gibt es einen getrennten Übergabestack > für Aufraufe der nicht 32bit aligned ist, und nur soviel Platz braucht wie tatsächlich benötigt werden. > > Gruss Peter