Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: joachim_neu am 20. March 2004, 15:16

Titel: string erstellen und füllen...
Beitrag von: joachim_neu am 20. March 2004, 15:16
Hallo,

wie mache ich einen String, alla

string db "LALALALA",13,10,0

der sich dann auch verändern lässt, so dass man eine Kommandozeile machen kann? Bei mir geht das nicht, auch wenn ich

mov string,al

mache....

PLEASE HELP

JOACHIM NEU
Titel: string erstellen und füllen...
Beitrag von: TeeJay am 20. March 2004, 19:30
Bei NASM muss es heissen
mov [string], al

mit
mov [string+1], al
veränderst du dann das zweite Zeichen usw.
Titel: string erstellen und füllen...
Beitrag von: joachim_neu am 21. March 2004, 09:36
aha, thx
Titel: string erstellen und füllen...
Beitrag von: svler am 21. March 2004, 16:19
Ich glaube aber, dass das noch nicht reicht.
Man muss die Größe noch angeben. Also...:

mov byte [string], al
oder
mov word [string], ax

Gruß svler
Titel: string erstellen und füllen...
Beitrag von: TeeJay am 21. March 2004, 23:17
naja ansich wird die Größe ja schon vom Register "al" angegeben.

Aber es ist kein Fehler die Größe trotzdem anzugeben.

Und erhöht dazu auch die leserichkeit des Codes.
Titel: string erstellen und füllen...
Beitrag von: joachim_neu am 22. March 2004, 08:06
achso, und variablen, die mit XYZ db "XYZ" vereinbart werden sind bytes, oder? (da komme ich immer durcheinander)
Titel: string erstellen und füllen...
Beitrag von: TeeJay am 22. March 2004, 14:12
Ja das sind Arrays von Bytes.

Das was svler meinte ist das du wenn du Speicher zu speicher kopierst, das du dann angeben musst ob du ein Byte, Word oder Dword kopieren willst, weil es aus dem Befehl alleine nicht ablesbar bist.

Beispiel:

mov  eax, 0xB8000
mov  byte [eax], 0