Hallo,
seit neuestem beschäftige ich mich mal mit Assembler. Ich benutze übrigens NASM.
Nun habe ich folgendes Programm:
Kompiliert mit dem Befehl:
---8<---
nasm test.asm -f bin -o Hello.exe
---8<---
Das sollte ein einfaches "Hello World!" - ohne "" - ausgeben. Der Output lautet jedoch wie folgt:
Was ist da falsch?
Gruß,
Grulf.
seit neuestem beschäftige ich mich mal mit Assembler. Ich benutze übrigens NASM.
Nun habe ich folgendes Programm:
Code:
mov dx,message ; message nach dx laden
mov ah,0x9 ; 09h (Funktion zur Stringausgabe) nach ah laden
int 0x21 ; Interrupt 021h
mov ah,0x4C ; 04Ch (Funktion zum erfolgreichen Beenden des Programmes) nach ah laden
int 0x21 ; Interrupt 021h
message db 'Hello world!',0x0D,0x0A,'$' ; Deklaration message (C-äquivalent: "Hello World!\n\f$")
Kompiliert mit dem Befehl:
---8<---
nasm test.asm -f bin -o Hello.exe
---8<---
Das sollte ein einfaches "Hello World!" - ohne "" - ausgeben. Der Output lautet jedoch wie folgt:
Code:
?(K?(V?((??? ? ??µ ??¶ ? ?? ? ?!?
?? ? ?!?L?!Hello world!
Was ist da falsch?
Gruß,
Grulf.
Zuletzt bearbeitet: