Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet 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
-
Bei NASM muss es heissen
mov [string], al
mit
mov [string+1], al
veränderst du dann das zweite Zeichen usw.
-
aha, thx
-
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
-
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.
-
achso, und variablen, die mit XYZ db "XYZ" vereinbart werden sind bytes, oder? (da komme ich immer durcheinander)
-
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