Asm programm Fehler
-
Hey Leute
bin Asm Anfänger und quäle mich amal durch die H-World Programme... nur ich werde zeitweise mit Fehlern überschüttet.Hier mein Problem:
segment code start: mov ax, data mov ds, ax mov dx, hello mov ah, 09h int 21h mov al, 0 mov ah, 4Ch int 21h segment data hello: db "Hello World!", 13, 10, "$"
Der Compiler:
C:\PROGRA~1\NASM>nasm hworld.asm -fbin -o hworld.exe
hworld.asm:3: error: symbol `data' undefinedHab scon mehrere Male verusucht zu kompileren ist aber immer die gleiche Fehlermeldung gekommen.
ICh bedank mich scho mal für eure Hilfe und freu mich auf eure Antworten
greetz
-
Da stimmen mehrere Dinge nicht.
Vielleicht solltest du dich erstmal entscheiden, was du ueberhaupt programmieren willst. Soll das eine .com-Datei werden (kannst du direkt mit NASM ohne Linker erstellen) oder eine .exe-Datei (dazu musst du mit NASM zunaechst eine .obj-Datei erstellen und daraus dann mit einem Linker eine .exe-Datei)?
-
Hey Nobuo T
thx für deine Antwort. Zu meinem Problem:
hab diesen source aus dem wikipedia tuthttp://de.wikibooks.org/wiki/Assembler_(80x86_Prozessor)-Programmierung:_Das_erste_Assemblerprogramm
nur irgendwie funzt das bei mir nicht
Im Endeffekt will ich eine exe datei draus machen...
-
Ah, I see.
Dazu bleibt eigentlich nur zu sagen:
Ist zwar vielleicht nicht ganz sauber (gibt Warnungen beim Linken), aber wenn du dich genau an das haeltst, was in dem Artikel steht, sollte alles funktionieren.
-
Hallo,
Ich hatte mein erstes Hallo Welt Programm mit Nasm nach dem Text von den
Internetseiten von Erhard Henkes ausgerichtet - Wie übrigens auch ein kleines
Experiment mit Bochs...hat alles gut funktioniert. Die Seiten enthalten nicht viel, aber dennoch sehr merkwürdigen Asmcode und sind allgemein gut verständlich.
Das einzige was bei mir nicht lief, war das erste Betriebssystemimage für Bochs, aber das lag an den Grml-Images, bei denen läuft wohl öfter so einiges nicht.Man kann kleine Assemblercodes relativ problemlos und schnell mit der vielseitigen Windowsentwicklungsumgebung Debug ausprobieren-sofern man an einem Windowsrechner sitzt. Mit etwas mehr Erfahrung mit den Grundlagen merkst du schnell, das viele Probleme aus einem Wirrwar von Assemblersyntaxunterschieden
kommen.
-
piscosterr schrieb:
Hey Nobuo T
thx für deine Antwort. Zu meinem Problem:
hab diesen source aus dem wikipedia tuthttp://de.wikibooks.org/wiki/Assembler_(80x86_Prozessor)-Programmierung:_Das_erste_Assemblerprogramm
nur irgendwie funzt das bei mir nicht
Im Endeffekt will ich eine exe datei draus machen...
Du musst
segment .data schreiben // beachte den .
nicht
segment data // ohne punkt
Gruß freeG