![]() |
[ASM] STOSB
Hi Leute,
ich habe ein Problem mit STOS(B). Ich habe einen String definiert
Code:
und ändere ihn dann mit
willkommen DB "Herzlich willkommen!"
Code:
für jeden Buchstaben von Test. Als erstes weiß ich dass im Moment umständlich ist und ich mit STOSD besser beraten wäre, aber das hat ja ich Moment keine Auswirkungen.
PUSH DS
POP ES MOV AX , "t" MOV DI , OFFSET willkommen + 0 ; (bzw. 1, 2 oder 3) STOSB Auf jeden Fall, wenn ich willkommen danach ausgebe, bekomme ich ein "testlich willkommen!" Passt zwar auch, ist aber nicht das was ich will :) Könnt ihr mir helfen? Gruß Edit: Mir fällt eben auch auf dass, wenn der definiertes string kürzer ist als test, asl z.b. "on", komiche fehlerauftreten. Wie kann ich denn mehr SPeicherplatz dazutun oder muss ich von Anfang an genug reservieren? Wenn ja, kann ich den irgendwie mit ASCII-Nichts :) Zeichen füllen? (Andere problembeschreibung: :) Ich muss den "String" im Prinzip von 0-250 Zeichen voll benutzen können, jederzeit mehr zeichen (also bis zu 250) eintragen können und er sollte halt die restlichen nicht anzeigen. kann ich den speicher irgendwie freigeben? Einfach eine 0 in den Speicher schreiben?) |
Re: [ASM] STOSB
Moin!
Wenn du nicht zur Laufzeit dir Speicher holst, dann musst du im Code für genug Speicherplatz sorgen (db dup als Stichwort). Ansonsten ist die Frage mit dem Ende des Strings eher die Frage danach, mit welcher Funktion du diesen ausgibst. Die BIOS Routinen wollen immer ein \0 am Ende sehen (also ein Nullbyte) und die DOS String Ausgabe will ein $ am Ende sehen... Dann fällt mir noch auf, was du das Richtungsflag überhaupt nicht setzt.... MfG Muetze1 |
Re: [ASM] STOSB
Hallo,
ich arbeite in Dos. Aber ich hab das Problem eben gelöst: DUP 200 ("$) geht sehr schön :) Das Richtungsflag muss ich mit cld setzten, oder? Gruß, moritz |
Re: [ASM] STOSB
Moin!
cld = clear direction flag std = set direction flag Das wären die beiden Befehle dafür... MfG Muetze1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz