Frage

Ich mache ein 16-Bit-Betriebssystem, und ich möchte Befehle übergeben, die die Anwendertypen in eingeben. Ich kann die Eingabe tun, aber ich bin mir nicht sicher, wie er die resultierende Zeichenfolge speichert, damit sie später analysiert werden kann.Gibt es einen besseren Weg als nur jedes Zeichen auf den Stapel und pop dann und umkehren sie, wenn sie verwendet werden möchten?

meine Hauptschleife:

generasacodicetagpre.

Das Betriebssystem heißt Moos übrigens.

danke an alle, die helfen können.

War es hilfreich?

Lösung

Ihr Stapel sieht so aus wie folgt, nachdem Sie Push:

generasacodicetagpre.

Sie speichern also einfach den aktuellen StackPointer irgendwo (hier ist es 0).Zählen Sie entweder die Länge, während Sie die Körbchen sind, oder subtrahieren Sie den aktuellen Stapel von Ihrem gespeicherten Wert, um die Länge zu erhalten, und kopieren Sie es irgendwo.Möglicherweise müssen Sie ein 0-Byte hinzufügen oder die Länge zusammen mit der Zeichenfolge speichern, je nachdem, wie Ihre Saiten organisiert sind.Natürlich können Sie den String auch direkt verwenden, ohne dass Sie es kopieren müssen.

Nachdem Sie damit fertig sind, setzen Sie den Stapelzeiger einfach auf den ursprünglichen Wert generationspflichtig und Sie sind fertig.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top