Autor Thema: string erstellen und füllen...  (Gelesen 8090 mal)

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« 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
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #1 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.
----------------------
Redakteur bei LowLevel

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #2 am: 21. March 2004, 09:36 »
aha, thx
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

svler

  • Beiträge: 18
    • Profil anzeigen
Gespeichert
« Antwort #3 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

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #4 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.
----------------------
Redakteur bei LowLevel

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #5 am: 22. March 2004, 08:06 »
achso, und variablen, die mit XYZ db "XYZ" vereinbart werden sind bytes, oder? (da komme ich immer durcheinander)
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #6 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
----------------------
Redakteur bei LowLevel

 

Einloggen