Fehler beim assemblieren

Wenn ich versuche diesen Code zu compilieren und zu linken kommt immer die Meldung ".asm<9>error A2004: symbol type conflict". Ich benutze masm unter windows. Hier noch der Source:

DATEN SEGMENT
MELDUNG DB "Hallo Welt !", "$"
DATEN ENDS
STAPEL SEGMENT BYTE STACK
DW 128 DUP (?)
STAPEL ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATEN,ES:NOTHING,SS:STAPEL
START: MOV AX, DATEN
MOV DS, AX
MOV DX, OFFSET MELDUNG
MOV AH, 9H
INT 21H
MOV AH, 4CH
INT 21H
CODE ENDS
END START

mfg
BleedingSoul
 
Falls Du das ganze mit MASM32 assemblieren willst, wirst Du damit nicht weit kommen. MASM32 ist ein Win32-Assembler, und der hat einen grundlegend anderen Aufbau als Standard-x86-Assembler. Um dieses Beispiel zu assemblieren, brauchst du den MASM < 6.11. Oder Du schreibst Win32-Assembler. Der macht sowieso allemal mehr Laune. ^^

Code:
.386

.model flat, stdcall

option casemap:none

include \masm32\include\kernel32.inc
include \masm32\include\windows.inc
include \masm32\include\user32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib

.data
  Nachricht      db "Hallo Welt! :)",0
  Titel      db "Hallo Welt!",0


.code

start:
	invoke MessageBox, NULL,addr Nachricht, addr Titel, MB_OK
	invoke ExitProcess,NULL
end start
 
Ja, danke. Ich hab's jetzt auch gemerkt, das der nicht für Konsolenanwendungen ist. Hab mir jetzt zusätzlich den nasm für Dos-Programme geholt.

mfg
BleedingSoul
 
Zurück
Oben