Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: nooooooooos am 23. April 2006, 12:53

Titel: Frage zu Strings
Beitrag von: nooooooooos am 23. April 2006, 12:53
Wenn ich jetztdd 'Hi'schreibe, werden dann zwei DWs mit je einem Buchstaben oder ein DW mit zwei Buchstaben reserviert??

Gruss
Nooooooooooooos
Titel: Frage zu Strings
Beitrag von: Coffee am 23. April 2006, 12:56
wie kommst du denn auf

dd

das ist meines achtens ein "Doubleword" ... müsste das  da nicht reinpassen??
Titel: Frage zu Strings
Beitrag von: nooooooooos am 23. April 2006, 12:59
Eben ich mein ein DW. Sind alle der Meinung dass den nur ein DW definiert wird????

Und wenn ichdd 'Hallo'schreibe, werden dann zwei DWs erstellt????

Und wenn ich schreibemov [String],'hallo'Werden dann auch zwei DWs angezerrt???


Gruss
Nooooooooooos
Titel: Frage zu Strings
Beitrag von: Jidder am 23. April 2006, 15:04
Zitat
Eben ich mein ein DW. Sind alle der Meinung dass den nur ein DW definiert wird????

ja

Zitat
Und wenn ich
dd 'Hallo'
schreibe, werden dann zwei DWs erstellt????

jupp

Zitat
Und wenn ich schreibe
mov [String],'hallo'
Werden dann auch zwei DWs angezerrt???

nein.
mov [foo], konstante
ist kein gültiger Befehl, weil du immer eine Operandengröße angeben musst. Wenn, dann muss es so aussehen:
mov byte [foo], konstante
mov word [foo], konstante
mov dword [foo], konstante

Du brauchst allerdings für 2 dwords ein qword. Der Befehl müsste so lauten:
mov qword [foo], 'hallo'
Dann brauchst du aber einen Assembler der 64 Bit unterstützt. YASM und soweit ich weiss FASM tun das.