Re: Ausgabe auf das LCD in Assembler Kategorie: Progr. Assembler, TaskingTools, OS (von André H. - 26.07.2004 18:12) | ||
Als Antwort auf Ausgabe auf das LCD in Assembler von Thomas - 23.07.2004 14:36 | ||
| ||
Hallo Thomas, > Ich bekomme jedoch wieder den Fehler: > 22: mov R12,#mystring ;Adresse des Strings > E 356: expression result out of range for use in an instruction > > Im o.g. Beitrag hie� es jedoch, dass der String mit > mystring db "Hallo Welt" > direkt im Programmcode abgelegt wird. Somit denke ich, dass ein EXTS entfällt, da ich ja im gleichen > Segment bleibe, oder? > ... > Wie kann ich nun also die Adresse des Strings in R12 schreiben? So überhauptnicht. Dies versteht der Assembler leider nicht. Das mu�t Du in diesem Fall per Hand machen, was wiederum kein Problem sein sollte. Notfalls mu�t Du dann eben immer zweimal kompilieren. Der einzige Syntax in dem Du den Konstanten String angeben kannst ist folgender: MOV Rw,[Rw+#text] MOVB Rb,[Rw+#text] MOV [Rw+#text],Rw MOVB [Rw+#text],Rb Das Setzen von Strings und anderer konstanten Werte ist eben dazu gedacht, da� man auf dessen Inhalt in ASM direkt zugreift. Also bleibt Dir, wie gesagt, nichts anderes übrig, zuerst mit einem Dummywert zu kompilieren, dann in das Listing zu schauen, an welchem Offset der String liegt, diesen daraufhin per Hand einzutragen und anschlie�end alles nocheinmal zu kompilieren. MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: Re: Ausgabe auf das LCD in Assembler (von Cris - 27.07.2004 8:07) Re: Ausgabe auf das LCD in Assembler (von Cris - 27.07.2004 9:32) Re: Ausgabe auf das LCD in Assembler (von André H. - 28.07.2004 13:22) |